Function Graph 0Basic Block 0Opcode: 55sub_8049fb0:Opcode: 55push    ebpOpcode: 89 e5mov     ebpespOpcode: 83 ec 28sub     esp0x28 {var_2c}Opcode: 8b 45 0cmov     eaxdword [ebp+0xc {arg_8}]Opcode: 8b 4d 08mov     ecxdword [ebp+0x8 {arg_4}]Opcode: 89 4d f8mov     dword [ebp-0x8 {var_c}]ecxOpcode: 89 45 f4mov     dword [ebp-0xc {var_10}]eaxOpcode: c7 45 ec 00 00 00 00mov     dword [ebp-0x14 {var_18}]0x0Opcode: 81 3d 78 56 06 08 00 00 00 00cmp     dword [data_8065678]0x0Opcode: 0f 85 1a 00 00 00jne     0x8049ff3Basic Block 1Opcode: 81 7d f8 00 00 00 00cmp     dword [ebp-0x8 {var_c}]0x0Opcode: 0f 84 0d 00 00 00je      0x804a00dBasic Block 2Opcode: 8d 05 50 00 05 08lea     eax[data_8050050]  {"Filesystem does not exist"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 99 f5 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 d3 04 00 00jmp     0x804a4c6Basic Block 3Opcode: 8d 05 0d 01 05 08lea     eax[data_805010d]  {"Invalid filename or mode"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 65 f5 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 9f 04 00 00jmp     0x804a4c6Basic Block 4Opcode: 81 7d f4 00 00 00 00cmp     dword [ebp-0xc {var_10}]0x0Opcode: 0f 85 1a 00 00 00jne     0x804a027Basic Block 5Opcode: 8b 45 fcmov     eaxdword [ebp-0x4 {var_8}]Opcode: 83 c4 28add     esp0x28 {var_4}Opcode: 5dpop     ebpOpcode: c3retn    Basic Block 6Opcode: 8b 45 f4mov     eaxdword [ebp-0xc {var_10}]Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 5e 56 00 00call    sub_804f690Opcode: 3d 01 00 00 00cmp     eax0x1Opcode: 0f 86 1a 00 00 00jbe     0x804a057Basic Block 7Opcode: 8b 45 f4mov     eaxdword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eaxbyte [eax]Opcode: 3d 72 00 00 00cmp     eax0x72Opcode: 0f 84 2b 00 00 00je      0x804a093Basic Block 8Opcode: 8d 05 dd 00 05 08lea     eax[data_80500dd]  {"Invalid mode"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 35 f5 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 6f 04 00 00jmp     0x804a4c6Basic Block 9Opcode: 81 3d 7c 56 06 08 00 00 00 00cmp     dword [data_806567c]0x0Opcode: 0f 85 1a 00 00 00jne     0x804a0bdBasic Block 10Opcode: 8b 45 f4mov     eaxdword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eaxbyte [eax]Opcode: 3d 77 00 00 00cmp     eax0x77Opcode: 0f 84 1a 00 00 00je      0x804a093Basic Block 11Opcode: 8b 45 f8mov     eaxdword [ebp-0x8 {var_c}]Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 c8 fa ff ffcall    sub_8049b90Opcode: 89 45 ecmov     dword [ebp-0x14 {var_18}]eaxOpcode: 81 7d ec 00 00 00 00cmp     dword [ebp-0x14 {var_18}]0x0Opcode: 0f 85 2b 00 00 00jne     0x804a103Basic Block 12Opcode: 8d 05 cc 00 05 08lea     eax[data_80500cc]  {"Must login first"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 cf f4 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 09 04 00 00jmp     0x804a4c6Basic Block 13Opcode: 8d 05 dd 00 05 08lea     eax[data_80500dd]  {"Invalid mode"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 f9 f4 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 33 04 00 00jmp     0x804a4c6Basic Block 14Opcode: 81 7d ec 00 00 00 00cmp     dword [ebp-0x14 {var_18}]0x0Opcode: 0f 84 76 00 00 00je      0x804a186Basic Block 15Opcode: 8b 45 f4mov     eaxdword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eaxbyte [eax]Opcode: 3d 72 00 00 00cmp     eax0x72Opcode: 0f 85 1a 00 00 00jne     0x804a103Basic Block 16Opcode: 81 7d ec 00 00 00 00cmp     dword [ebp-0x14 {var_18}]0x0Opcode: 0f 84 5d 01 00 00je      0x804a2f0Basic Block 17Opcode: c7 45 f0 00 00 00 00mov     dword [ebp-0x10 {var_14}]0x0Basic Block 18Opcode: 8d 05 26 01 05 08lea     eax[data_8050126]  {"Unable to locate file"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 89 f4 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 c3 03 00 00jmp     0x804a4c6Basic Block 19Opcode: b8 0c 00 00 00mov     eax0xcOpcode: c7 04 24 0c 00 00 00mov     dword [esp {var_2c}]0xcOpcode: 89 45 e4mov     dword [ebp-0x1c {var_20}]eaxOpcode: e8 1c 2c 00 00call    sub_804cf20Opcode: 89 45 e8mov     dword [ebp-0x18 {var_1c}]eaxOpcode: 3d 00 00 00 00cmp     eax0x0Opcode: 0f 85 1a 00 00 00jne     0x804a32cBasic Block 20Opcode: 8d 05 a7 02 05 08lea     eax[data_80502a7]  {"root"}Opcode: 8b 0d 7c 56 06 08mov     ecxdword [data_806567c]Opcode: 89 0c 24mov     dword [esp {var_2c}]ecxOpcode: 89 44 24 04mov     dword [esp+0x4 {var_28}]eaxOpcode: e8 e5 58 00 00call    sub_804fa90Opcode: 3d 00 00 00 00cmp     eax0x0Opcode: 0f 84 3a 01 00 00je      0x804a2f0Basic Block 21Opcode: e9 00 00 00 00jmp     0x804a186Basic Block 22Opcode: 8b 45 f0mov     eaxdword [ebp-0x10 {var_14}]Opcode: 81 3c 85 c4 58 06 08 00 00 00 00cmp     dword [eax*4+data_80658c4]0x0Opcode: 0f 84 34 00 00 00je      0x804a16cBasic Block 23Opcode: c7 45 f0 00 00 00 00mov     dword [ebp-0x10 {var_14}]0x0Basic Block 24Opcode: 8d 05 81 00 05 08lea     eax[data_8050081]  {"calloc failed"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 60 f2 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 9a 01 00 00jmp     0x804a4c6Basic Block 25Opcode: 8b 45 ecmov     eaxdword [ebp-0x14 {var_18}]Opcode: 8b 40 04mov     eaxdword [eax+0x4]Opcode: 8b 0d 7c 56 06 08mov     ecxdword [data_806567c]Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: 89 4c 24 04mov     dword [esp+0x4 {var_28}]ecxOpcode: e8 c2 58 00 00call    sub_804fa90Opcode: 3d 00 00 00 00cmp     eax0x0Opcode: 0f 85 89 00 00 00jne     0x804a262Basic Block 26Opcode: e9 00 00 00 00jmp     0x804a171Basic Block 27Opcode: 8b 45 f0mov     eaxdword [ebp-0x10 {var_14}]Opcode: 8b 04 85 c4 58 06 08mov     eaxdword [eax*4+data_80658c4]Opcode: 8b 00mov     eaxdword [eax]Opcode: 3b 45 eccmp     eaxdword [ebp-0x14 {var_18}]Opcode: 0f 85 1a 00 00 00jne     0x804a167Basic Block 28Opcode: 81 7d f0 08 00 00 00cmp     dword [ebp-0x10 {var_14}]0x8Opcode: 0f 85 25 00 00 00jne     0x804a3adBasic Block 29Opcode: 8b 45 f0mov     eaxdword [ebp-0x10 {var_14}]Opcode: 81 3c 85 c4 58 06 08 00 00 00 00cmp     dword [eax*4+data_80658c4]0x0Opcode: 0f 84 05 00 00 00je      0x804a359Basic Block 30Opcode: 8b 45 f4mov     eaxdword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eaxbyte [eax]Opcode: 3d 72 00 00 00cmp     eax0x72Opcode: 0f 85 31 00 00 00jne     0x804a2a4Basic Block 31Opcode: 8b 45 f4mov     eaxdword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eaxbyte [eax]Opcode: 3d 72 00 00 00cmp     eax0x72Opcode: 0f 85 31 00 00 00jne     0x804a21bBasic Block 32Opcode: 8b 45 f0mov     eaxdword [ebp-0x10 {var_14}]Opcode: 05 01 00 00 00add     eax0x1Opcode: 89 45 f0mov     dword [ebp-0x10 {var_14}]eaxOpcode: e9 96 ff ff ffjmp     0x804a117Basic Block 33Opcode: e9 00 00 00 00jmp     0x804a16cBasic Block 34Opcode: 8d 05 3c 01 05 08lea     eax[data_805013c]  {"File is already open"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 25 f4 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 5f 03 00 00jmp     0x804a4c6Basic Block 35Opcode: 8b 45 f4mov     eaxdword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eaxbyte [eax]Opcode: 3d 77 00 00 00cmp     eax0x77Opcode: 0f 85 e4 00 00 00jne     0x804a4a2Basic Block 36Opcode: 8d 05 63 01 05 08lea     eax[data_8050163]  {"No free file descriptors"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 ea f1 ff ffcall    sub_8049580Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 df 28 00 00call    sub_804cc80Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 19 01 00 00jmp     0x804a4c6Basic Block 37Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: 8b 4d f0mov     ecxdword [ebp-0x10 {var_14}]Opcode: 89 04 8d c4 58 06 08mov     dword [ecx*4+data_80658c4]eaxOpcode: e9 10 00 00 00jmp     0x804a37bBasic Block 38Opcode: e9 12 00 00 00jmp     0x804a36bBasic Block 39Opcode: 8b 45 f4mov     eaxdword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eaxbyte [eax]Opcode: 3d 77 00 00 00cmp     eax0x77Opcode: 0f 85 31 00 00 00jne     0x804a2e6Basic Block 40Opcode: 8b 45 ecmov     eaxdword [ebp-0x14 {var_18}]Opcode: 0f b6 40 08movzx   eaxbyte [eax+0x8]Opcode: 25 40 00 00 00and     eax0x40Opcode: 3d 00 00 00 00cmp     eax0x0Opcode: 0f 85 1a 00 00 00jne     0x804a2a4Basic Block 41Opcode: 8b 45 f4mov     eaxdword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eaxbyte [eax]Opcode: 3d 77 00 00 00cmp     eax0x77Opcode: 0f 85 31 00 00 00jne     0x804a25dBasic Block 42Opcode: 8b 45 ecmov     eaxdword [ebp-0x14 {var_18}]Opcode: 0f b6 40 08movzx   eaxbyte [eax+0x8]Opcode: 25 04 00 00 00and     eax0x4Opcode: 3d 00 00 00 00cmp     eax0x0Opcode: 0f 85 1a 00 00 00jne     0x804a21bBasic Block 43Opcode: 81 7d f0 08 00 00 00cmp     dword [ebp-0x10 {var_14}]0x8Opcode: 0f 83 5d 00 00 00jae     0x804a181Basic Block 44Opcode: 8b 45 ecmov     eaxdword [ebp-0x14 {var_18}]Opcode: 8b 4d e8mov     ecxdword [ebp-0x18 {var_1c}]Opcode: 89 01mov     dword [ecx]eaxOpcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: c6 40 04 04mov     byte [eax+0x4]0x4Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: c7 40 08 00 00 00 00mov     dword [eax+0x8]0x0Basic Block 45Opcode: 81 7d ec 00 00 00 00cmp     dword [ebp-0x14 {var_18}]0x0Opcode: 0f 85 7a 00 00 00jne     0x804a445Basic Block 46Opcode: 8b 45 f0mov     eaxdword [ebp-0x10 {var_14}]Opcode: 05 01 00 00 00add     eax0x1Opcode: 89 45 f0mov     dword [ebp-0x10 {var_14}]eaxOpcode: e9 b8 ff ff ffjmp     0x804a333Basic Block 47Opcode: e9 00 00 00 00jmp     0x804a2ebBasic Block 48Opcode: 8b 45 ecmov     eaxdword [ebp-0x14 {var_18}]Opcode: 0f b6 40 08movzx   eaxbyte [eax+0x8]Opcode: 25 60 00 00 00and     eax0x60Opcode: 3d 00 00 00 00cmp     eax0x0Opcode: 0f 85 1a 00 00 00jne     0x804a2e6Basic Block 49Opcode: 8d 05 51 01 05 08lea     eax[data_8050151]  {"Permission denied"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 e8 f2 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 22 02 00 00jmp     0x804a4c6Basic Block 50Opcode: e9 89 00 00 00jmp     0x804a2ebBasic Block 51Opcode: 8b 45 ecmov     eaxdword [ebp-0x14 {var_18}]Opcode: 0f b6 40 08movzx   eaxbyte [eax+0x8]Opcode: 25 06 00 00 00and     eax0x6Opcode: 3d 00 00 00 00cmp     eax0x0Opcode: 0f 85 1a 00 00 00jne     0x804a25dBasic Block 52Opcode: 8d 05 51 01 05 08lea     eax[data_8050151]  {"Permission denied"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 71 f3 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 ab 02 00 00jmp     0x804a4c6Basic Block 53Opcode: 8b 45 ecmov     eaxdword [ebp-0x14 {var_18}]Opcode: 8b 4d e8mov     ecxdword [ebp-0x18 {var_1c}]Opcode: 89 01mov     dword [ecx]eaxOpcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: c6 40 04 06mov     byte [eax+0x4]0x6Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: c7 40 08 00 00 00 00mov     dword [eax+0x8]0x0Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: 8b 00mov     eaxdword [eax]Opcode: c7 40 0c 00 00 00 00mov     dword [eax+0xc]0x0Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: 8b 00mov     eaxdword [eax]Opcode: 81 78 10 00 00 00 00cmp     dword [eax+0x10]0x0Opcode: 0f 84 1c 00 00 00je      0x804a498Basic Block 54Opcode: b8 06 00 00 00mov     eax0x6Opcode: 8b 4d f8mov     ecxdword [ebp-0x8 {var_c}]Opcode: 89 0c 24mov     dword [esp {var_2c}]ecxOpcode: c7 44 24 04 06 00 00 00mov     dword [esp+0x4 {var_28}]0x6Opcode: 89 45 e0mov     dword [ebp-0x20 {var_24}]eaxOpcode: e8 7a f8 ff ffcall    sub_8049c60Opcode: 89 45 ecmov     dword [ebp-0x14 {var_18}]eaxOpcode: 3d 00 00 00 00cmp     eax0x0Opcode: 0f 85 33 00 00 00jne     0x804a427Basic Block 55Opcode: 81 7d f0 08 00 00 00cmp     dword [ebp-0x10 {var_14}]0x8Opcode: 0f 83 3b 00 00 00jae     0x804a37bBasic Block 56Opcode: e9 00 00 00 00jmp     0x804a2f0Basic Block 57Opcode: 8d 05 51 01 05 08lea     eax[data_8050151]  {"Permission denied"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 a6 f2 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 e0 01 00 00jmp     0x804a4c6Basic Block 58Opcode: 8d 05 51 01 05 08lea     eax[data_8050151]  {"Permission denied"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 2f f3 ff ffcall    sub_8049580Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 69 02 00 00jmp     0x804a4c6Basic Block 59Opcode: e9 00 00 00 00jmp     0x804a49dBasic Block 60Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: 8b 00mov     eaxdword [eax]Opcode: 8b 40 10mov     eaxdword [eax+0x10]Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 f4 27 00 00call    sub_804cc80Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: 8b 00mov     eaxdword [eax]Opcode: c7 40 10 00 00 00 00mov     dword [eax+0x10]0x0Basic Block 61Opcode: 8b 45 ecmov     eaxdword [ebp-0x14 {var_18}]Opcode: 8b 4d e8mov     ecxdword [ebp-0x18 {var_1c}]Opcode: 89 01mov     dword [ecx]eaxOpcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: c6 40 04 06mov     byte [eax+0x4]0x6Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: c7 40 08 00 00 00 00mov     dword [eax+0x8]0x0Opcode: e9 58 00 00 00jmp     0x804a49dBasic Block 62Opcode: 8d 05 7c 01 05 08lea     eax[data_805017c]  {"Failed to create file"}Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 7e f1 ff ffcall    sub_8049580Opcode: 8b 45 f0mov     eaxdword [ebp-0x10 {var_14}]Opcode: c7 04 85 c4 58 06 08 00 00 00 00mov     dword [eax*4+data_80658c4]0x0Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: 89 04 24mov     dword [esp {var_2c}]eaxOpcode: e8 65 28 00 00call    sub_804cc80Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4 {var_8}]0x0Opcode: e9 9f 00 00 00jmp     0x804a4c6Basic Block 63Opcode: e9 19 00 00 00jmp     0x804a4bbBasic Block 64Opcode: e8 10 f1 ff ffcall    sub_80495d0Opcode: 8b 45 e8mov     eaxdword [ebp-0x18 {var_1c}]Opcode: 89 45 fcmov     dword [ebp-0x4 {var_8}]eax