Function Graph 0
Basic Block 0
Opcode: 55sub_8048700:
Opcode: 55push ebp
Opcode: 89 e5mov ebp, esp
Opcode: 56push esi
Opcode: 83 ec 64sub esp, 0x64 {var_6c}
Opcode: 8b 45 08mov eax, dword [ebp+0x8 {arg_4}]
Opcode: 89 45 f8mov dword [ebp-0x8 {var_c}], eax
Opcode: 8b 45 f8mov eax, dword [ebp-0x8 {var_c}]
Opcode: 89 04 24mov dword [esp {var_6c}], eax
Opcode: e8 78 2b 00 00call sub_804b290
Opcode: 3d 00 00 00 00cmp eax, 0x0
Opcode: 0f 84 05 00 00 00je 0x8048728
Basic Block 1
Opcode: b8 10 00 00 00mov eax, 0x10
Opcode: c7 04 24 10 00 00 00mov dword [esp {var_6c}], 0x10
Opcode: 89 45 ecmov dword [ebp-0x14 {var_18}], eax
Opcode: e8 24 91 00 00call sub_8051860
Opcode: 89 45 f4mov dword [ebp-0xc {var_10}], eax
Opcode: 8b 45 f8mov eax, dword [ebp-0x8 {var_c}]
Opcode: 8b 40 08mov eax, dword [eax+0x8]
Opcode: 0f b7 00movzx eax, word [eax]
Opcode: 05 02 00 00 00add eax, 0x2
Opcode: 8b 4d f4mov ecx, dword [ebp-0xc {var_10}]
Opcode: 89 41 04mov dword [ecx+0x4], eax
Opcode: 8b 45 f8mov eax, dword [ebp-0x8 {var_c}]
Opcode: 8b 40 04mov eax, dword [eax+0x4]
Opcode: 0f b7 00movzx eax, word [eax]
Opcode: 05 02 00 00 00add eax, 0x2
Opcode: 8b 4d f4mov ecx, dword [ebp-0xc {var_10}]
Opcode: 8b 51 04mov edx, dword [ecx+0x4]
Opcode: 01 c2add edx, eax
Opcode: 89 51 04mov dword [ecx+0x4], edx
Opcode: 8b 45 f4mov eax, dword [ebp-0xc {var_10}]
Opcode: 8b 48 04mov ecx, dword [eax+0x4]
Opcode: 81 c1 0f 00 00 00add ecx, 0xf
Opcode: 89 48 04mov dword [eax+0x4], ecx
Opcode: 8b 45 f4mov eax, dword [ebp-0xc {var_10}]
Opcode: 81 78 04 00 10 00 00cmp dword [eax+0x4], 0x1000
Opcode: 0f 86 24 00 00 00jbe 0x80487af
Basic Block 2
Opcode: e9 d5 02 00 00jmp 0x80489fd
Basic Block 3
Opcode: 8b 45 f4mov eax, dword [ebp-0xc {var_10}]
Opcode: 8b 40 04mov eax, dword [eax+0x4]
Opcode: 89 04 24mov dword [esp {var_6c}], eax
Opcode: e8 a3 90 00 00call sub_8051860
Opcode: b9 04 00 00 00mov ecx, 0x4
Opcode: 8b 55 f4mov edx, dword [ebp-0xc {var_10}]
Opcode: 89 42 08mov dword [edx+0x8], eax
Opcode: 8b 45 f4mov eax, dword [ebp-0xc {var_10}]
Opcode: 8b 40 08mov eax, dword [eax+0x8]
Opcode: 89 45 f0mov dword [ebp-0x10 {var_14}], eax
Opcode: 8b 45 f0mov eax, dword [ebp-0x10 {var_14}]
Opcode: 8b 55 f8mov edx, dword [ebp-0x8 {var_c}]
Opcode: 8b 12mov edx, dword [edx]
Opcode: 89 04 24mov dword [esp {var_6c}], eax
Opcode: 89 54 24 04mov dword [esp+0x4 {var_68}], edx
Opcode: c7 44 24 08 04 00 00 00mov dword [esp+0x8 {var_64}], 0x4
Opcode: 89 4d e4mov dword [ebp-0x1c {var_20}], ecx
Opcode: e8 80 b3 00 00call sub_8053b70
Opcode: b9 01 00 00 00mov ecx, 0x1
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 81 c2 04 00 00 00add edx, 0x4
Opcode: 89 55 f0mov dword [ebp-0x10 {var_14}], edx
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 8b 75 f8mov esi, dword [ebp-0x8 {var_c}]
Opcode: 8b 36mov esi, dword [esi]
Opcode: 81 c6 04 00 00 00add esi, 0x4
Opcode: 89 14 24mov dword [esp {var_6c}], edx
Opcode: 89 74 24 04mov dword [esp+0x4 {var_68}], esi
Opcode: c7 44 24 08 01 00 00 00mov dword [esp+0x8 {var_64}], 0x1
Opcode: 89 45 e0mov dword [ebp-0x20 {var_24}], eax
Opcode: 89 4d dcmov dword [ebp-0x24 {var_28}], ecx
Opcode: e8 47 b3 00 00call sub_8053b70
Opcode: b9 01 00 00 00mov ecx, 0x1
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 81 c2 01 00 00 00add edx, 0x1
Opcode: 89 55 f0mov dword [ebp-0x10 {var_14}], edx
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 8b 75 f8mov esi, dword [ebp-0x8 {var_c}]
Opcode: 8b 36mov esi, dword [esi]
Opcode: 81 c6 05 00 00 00add esi, 0x5
Opcode: 89 14 24mov dword [esp {var_6c}], edx
Opcode: 89 74 24 04mov dword [esp+0x4 {var_68}], esi
Opcode: c7 44 24 08 01 00 00 00mov dword [esp+0x8 {var_64}], 0x1
Opcode: 89 45 d8mov dword [ebp-0x28 {var_2c}], eax
Opcode: 89 4d d4mov dword [ebp-0x2c {var_30}], ecx
Opcode: e8 0e b3 00 00call sub_8053b70
Opcode: b9 01 00 00 00mov ecx, 0x1
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 81 c2 01 00 00 00add edx, 0x1
Opcode: 89 55 f0mov dword [ebp-0x10 {var_14}], edx
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 8b 75 f8mov esi, dword [ebp-0x8 {var_c}]
Opcode: 8b 36mov esi, dword [esi]
Opcode: 81 c6 06 00 00 00add esi, 0x6
Opcode: 89 14 24mov dword [esp {var_6c}], edx
Opcode: 89 74 24 04mov dword [esp+0x4 {var_68}], esi
Opcode: c7 44 24 08 01 00 00 00mov dword [esp+0x8 {var_64}], 0x1
Opcode: 89 45 d0mov dword [ebp-0x30 {var_34}], eax
Opcode: 89 4d ccmov dword [ebp-0x34 {var_38}], ecx
Opcode: e8 d5 b2 00 00call sub_8053b70
Opcode: b9 08 00 00 00mov ecx, 0x8
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 81 c2 01 00 00 00add edx, 0x1
Opcode: 89 55 f0mov dword [ebp-0x10 {var_14}], edx
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 8b 75 f8mov esi, dword [ebp-0x8 {var_c}]
Opcode: 8b 36mov esi, dword [esi]
Opcode: 81 c6 07 00 00 00add esi, 0x7
Opcode: 89 14 24mov dword [esp {var_6c}], edx
Opcode: 89 74 24 04mov dword [esp+0x4 {var_68}], esi
Opcode: c7 44 24 08 08 00 00 00mov dword [esp+0x8 {var_64}], 0x8
Opcode: 89 45 c8mov dword [ebp-0x38 {var_3c}], eax
Opcode: 89 4d c4mov dword [ebp-0x3c {var_40}], ecx
Opcode: e8 9c b2 00 00call sub_8053b70
Opcode: b9 02 00 00 00mov ecx, 0x2
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 81 c2 08 00 00 00add edx, 0x8
Opcode: 89 55 f0mov dword [ebp-0x10 {var_14}], edx
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 8b 75 f8mov esi, dword [ebp-0x8 {var_c}]
Opcode: 8b 76 04mov esi, dword [esi+0x4]
Opcode: 89 14 24mov dword [esp {var_6c}], edx
Opcode: 89 74 24 04mov dword [esp+0x4 {var_68}], esi
Opcode: c7 44 24 08 02 00 00 00mov dword [esp+0x8 {var_64}], 0x2
Opcode: 89 45 c0mov dword [ebp-0x40 {var_44}], eax
Opcode: 89 4d bcmov dword [ebp-0x44 {var_48}], ecx
Opcode: e8 68 b2 00 00call sub_8053b70
Opcode: 8b 4d f0mov ecx, dword [ebp-0x10 {var_14}]
Opcode: 81 c1 02 00 00 00add ecx, 0x2
Opcode: 89 4d f0mov dword [ebp-0x10 {var_14}], ecx
Opcode: 8b 4d f8mov ecx, dword [ebp-0x8 {var_c}]
Opcode: 8b 49 04mov ecx, dword [ecx+0x4]
Opcode: 0f b7 09movzx ecx, word [ecx]
Opcode: 81 f9 00 00 00 00cmp ecx, 0x0
Opcode: 89 45 b8mov dword [ebp-0x48 {var_4c}], eax
Opcode: 0f 8e 39 00 00 00jle 0x8048965
Basic Block 4
Opcode: b8 e2 00 00 00mov eax, 0xe2
Opcode: c7 04 24 e2 00 00 00mov dword [esp {var_6c}], 0xe2
Opcode: 89 45 e8mov dword [ebp-0x18 {var_1c}], eax
Opcode: e8 01 ff ff ffcall sub_80486a0
Opcode: 8d 45 f4lea eax, [ebp-0xc] {var_10}
Opcode: 89 04 24mov dword [esp {var_6c}], eax
Opcode: e8 36 52 00 00call sub_804d9e0
Opcode: e9 4e 02 00 00jmp 0x80489fd
Basic Block 5
Opcode: 83 c4 64add esp, 0x64 {var_8}
Opcode: 5epop esi
Opcode: 5dpop ebp
Opcode: c3retn
Basic Block 6
Opcode: b8 02 00 00 00mov eax, 0x2
Opcode: 8b 4d f0mov ecx, dword [ebp-0x10 {var_14}]
Opcode: 8b 55 f8mov edx, dword [ebp-0x8 {var_c}]
Opcode: 8b 52 08mov edx, dword [edx+0x8]
Opcode: 89 0c 24mov dword [esp {var_6c}], ecx
Opcode: 89 54 24 04mov dword [esp+0x4 {var_68}], edx
Opcode: c7 44 24 08 02 00 00 00mov dword [esp+0x8 {var_64}], 0x2
Opcode: 89 45 b0mov dword [ebp-0x50 {var_54}], eax
Opcode: e8 e6 b1 00 00call sub_8053b70
Opcode: 8b 4d f0mov ecx, dword [ebp-0x10 {var_14}]
Opcode: 81 c1 02 00 00 00add ecx, 0x2
Opcode: 89 4d f0mov dword [ebp-0x10 {var_14}], ecx
Opcode: 8b 4d f8mov ecx, dword [ebp-0x8 {var_c}]
Opcode: 8b 49 08mov ecx, dword [ecx+0x8]
Opcode: 0f b7 09movzx ecx, word [ecx]
Opcode: 81 f9 00 00 00 00cmp ecx, 0x0
Opcode: 89 45 acmov dword [ebp-0x54 {var_58}], eax
Opcode: 0f 8e 39 00 00 00jle 0x80489e7
Basic Block 7
Opcode: 8b 45 f0mov eax, dword [ebp-0x10 {var_14}]
Opcode: 8b 4d f8mov ecx, dword [ebp-0x8 {var_c}]
Opcode: 8b 49 04mov ecx, dword [ecx+0x4]
Opcode: 8b 49 04mov ecx, dword [ecx+0x4]
Opcode: 8b 55 f8mov edx, dword [ebp-0x8 {var_c}]
Opcode: 8b 52 04mov edx, dword [edx+0x4]
Opcode: 0f b7 12movzx edx, word [edx]
Opcode: 89 04 24mov dword [esp {var_6c}], eax
Opcode: 89 4c 24 04mov dword [esp+0x4 {var_68}], ecx
Opcode: 89 54 24 08mov dword [esp+0x8 {var_64}], edx
Opcode: e8 1f b2 00 00call sub_8053b70
Opcode: 8b 4d f8mov ecx, dword [ebp-0x8 {var_c}]
Opcode: 8b 49 04mov ecx, dword [ecx+0x4]
Opcode: 0f b7 09movzx ecx, word [ecx]
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 01 caadd edx, ecx
Opcode: 89 55 f0mov dword [ebp-0x10 {var_14}], edx
Opcode: 89 45 b4mov dword [ebp-0x4c {var_50}], eax
Basic Block 8
Opcode: 8b 45 f4mov eax, dword [ebp-0xc {var_10}]
Opcode: 89 04 24mov dword [esp {var_6c}], eax
Opcode: e8 7e 50 00 00call sub_804da70
Opcode: 8d 45 f4lea eax, [ebp-0xc] {var_10}
Opcode: 89 04 24mov dword [esp {var_6c}], eax
Opcode: e8 e3 4f 00 00call sub_804d9e0
Basic Block 9
Opcode: 8b 45 f0mov eax, dword [ebp-0x10 {var_14}]
Opcode: 8b 4d f8mov ecx, dword [ebp-0x8 {var_c}]
Opcode: 8b 49 08mov ecx, dword [ecx+0x8]
Opcode: 8b 49 04mov ecx, dword [ecx+0x4]
Opcode: 8b 55 f8mov edx, dword [ebp-0x8 {var_c}]
Opcode: 8b 52 08mov edx, dword [edx+0x8]
Opcode: 0f b7 12movzx edx, word [edx]
Opcode: 89 04 24mov dword [esp {var_6c}], eax
Opcode: 89 4c 24 04mov dword [esp+0x4 {var_68}], ecx
Opcode: 89 54 24 08mov dword [esp+0x8 {var_64}], edx
Opcode: e8 9d b1 00 00call sub_8053b70
Opcode: 8b 4d f8mov ecx, dword [ebp-0x8 {var_c}]
Opcode: 8b 49 08mov ecx, dword [ecx+0x8]
Opcode: 0f b7 09movzx ecx, word [ecx]
Opcode: 8b 55 f0mov edx, dword [ebp-0x10 {var_14}]
Opcode: 01 caadd edx, ecx
Opcode: 89 55 f0mov dword [ebp-0x10 {var_14}], edx
Opcode: 89 45 a8mov dword [ebp-0x58 {var_5c}], eax