; memset(addr,char,len) ; ; r0 ; r1 ; r2 ; ; if r2<=32 and r2==0 do nothing ; f_0xd28: d28: e92d00f0 stmdb sp!, {r4, r5, r6, r7} d2c: e1a03000 mov r3, r0 d30: e20150ff and r5, r1, #255 ; 0xff d34: e3520020 cmp r2, #32 ; 0x20 d38: 9a000014 bls d90 d3c: e1854405 orr r4, r5, r5, lsl #8 d40: e1844804 orr r4, r4, r4, lsl #16 d44: e203100f and r1, r3, #15 ; 0xf d48: e271c010 rsbs ip, r1, #16 ; 0x10 d4c: 1042200c subne r2, r2, ip d50: 13a06001 movne r6, #1 ; 0x1 d54: 0a000002 beq d64 00000d58 : d58: e6c35006 strb r5, [r3], r6 d5c: e05cc006 subs ip, ip, r6 d60: 1afffffc bne d58 00000d64 : d64: e1a0c222 mov ip, r2, lsr #4 d68: e202200f and r2, r2, #15 ; 0xf d6c: e3a06001 mov r6, #1 ; 0x1 d70: e3a07010 mov r7, #16 ; 0x10 00000d74 : d74: e5834000 str r4, [r3] d78: e5834004 str r4, [r3, #4] d7c: e5834008 str r4, [r3, #8] d80: e583400c str r4, [r3, #12] d84: e0833007 add r3, r3, r7 d88: e05cc006 subs ip, ip, r6 d8c: 1afffff8 bne d74 00000d90 : d90: e3520000 cmp r2, #0 ; 0x0 d94: 13a0c001 movne ip, #1 ; 0x1 d98: 0a000002 beq da8 00000d9c : d9c: e6c3500c strb r5, [r3], ip da0: e2522001 subs r2, r2, #1 ; 0x1 da4: 1afffffc bne d9c 00000da8 : da8: e8bd00f0 ldmia sp!, {r4, r5, r6, r7} dac: e12fff1e bx lr