Function at 0x401ef0
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffdd0
push ebx
push esi
push edi
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0x114], edx
mov esi, eax
lea ebx, [ebp - 0x110]
mov eax, 0x49b198
call fcn.0047b534
mov word [ebx + 0x10], 8
xor edx, edx
xor ecx, ecx
mov dword [ebp - 4], edx
xor eax, eax
inc dword [ebx + 0x1c]
xor edx, edx
mov word [ebx + 0x10], 0x14
mov word [ebx + 0x10], 0x20
mov dword [ebp - 8], ecx
lea ecx, [ebp - 0x230]
inc dword [ebx + 0x1c]
mov word [ebx + 0x10], 0x14
mov word [ebx + 0x10], 0x2c
mov dword [ebp - 0xc], eax
inc dword [ebx + 0x1c]
mov word [ebx + 0x10], 0x14
mov word [ebx + 0x10], 0x38
mov dword [ebp - 0x10], edx
inc dword [ebx + 0x1c]
mov word [ebx + 0x10], 0x14
mov byte [ebp - 0x115], 0
mov dword [ebp - 0x11c], esi
push ecx
mov eax, dword [ebp - 0x11c]
mov edx, dword [eax]
push edx
call sub.SHELL32.DLL_SHGetPathFromIDListA
mov word [ebx + 0x10], 0x44
lea edx, [ebp - 0x230]
lea eax, [ebp - 0x14]
call fcn.00485610
mov edx, eax
inc dword [ebx + 0x1c]
lea eax, [ebp - 8]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.004857e4
mov word [ebx + 0x10], 0x14
xor esi, esi
jmp 0x40201b
mov word [ebx + 0x10], 0x50
xor eax, eax
lea edx, [ebp - 0x18]
mov dword [ebp - 0x18], eax
push edx
inc dword [ebx + 0x1c]
xor edx, edx
lea eax, [ebp - 8]
mov ecx, 3
call fcn.00485ab8
lea eax, [ebp - 0x18]
mov edi, esi
mov edx, edi
shl edx, 2
add edx, dword [0x4a47b0]
call fcn.004858c8
push eax
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.004857e4
pop ecx
test cl, cl
je 0x40201a
mov byte [ebp - 0x115], 1
inc esi
mov eax, dword [0x4a47b4]
sub eax, dword [0x4a47b0]
test eax, eax
jns 0x40202d
add eax, 3
sar eax, 2
cmp esi, eax
jb 0x401fc7
cmp byte [ebp - 0x115], 0
jne 0x402097
mov word [ebx + 0x10], 0x5c
xor edx, edx
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], edx
push ecx
inc dword [ebx + 0x1c]
xor edx, edx
mov ecx, 3
lea eax, [ebp - 8]
call fcn.00485ab8
cmp dword [ebp - 0x1c], 0
je 0x402069
mov eax, dword [ebp - 0x1c]
jmp 0x40206e
mov eax, 0x49a4f0
push eax
call sub.KERNEL32.DLL_GetDriveTypeA
cmp eax, 2
lea eax, [ebp - 0x1c]
sete dl
and edx, 1
push edx
mov edx, 2
dec dword [ebx + 0x1c]
call fcn.004857e4
pop ecx
test ecx, ecx
je 0x402a67
lea eax, [ebp - 0x230]
push eax
mov edx, dword [ebp - 0x11c]
mov ecx, dword [edx + 4]
push ecx
call sub.SHELL32.DLL_SHGetPathFromIDListA
mov word [ebx + 0x10], 0x68
lea edx, [ebp - 0x230]
lea eax, [ebp - 0x20]
call fcn.00485610
mov edx, eax
inc dword [ebx + 0x1c]
lea eax, [ebp - 0xc]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x20]
mov edx, 2
call fcn.004857e4
mov ecx, dword [ebp - 0x114]
cmp ecx, 0x200
jg 0x40214e
je 0x4024b8
cmp ecx, 0x10
jg 0x402122
je 0x402346
dec ecx
je 0x4021ba
dec ecx
je 0x402266
sub ecx, 2
je 0x4022ca
sub ecx, 4
je 0x402308
jmp 0x4029b4
sub ecx, 0x20
je 0x402384
sub ecx, 0x20
je 0x4023e0
sub ecx, 0x40
je 0x40243c
sub ecx, 0x80
je 0x40247a
jmp 0x4029b4
cmp ecx, 0x10000
jg 0x402191
je 0x40273f
sub ecx, 0x1000
je 0x40253e
sub ecx, 0x1000
je 0x40257c
sub ecx, 0x2000
je 0x4025ba
sub ecx, 0x4000
je 0x402666
jmp 0x4029b4
sub ecx, 0x20000
je 0x402789
sub ecx, 0x20000
je 0x402862
sub ecx, 0x7fc0000
je 0x4028de
jmp 0x4029b4
mov word [ebx + 0x10], 0x74
xor eax, eax
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0x24]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a4f1
call fcn.00485bec
lea edx, [ebp - 0x24]
push edx
mov edx, 0x49a4fe
lea eax, [ebp - 0x28]
call fcn.00485610
inc dword [ebx + 0x1c]
xor eax, eax
mov dword [ebp - 0x2c], eax
lea edx, [ebp - 0x28]
inc dword [ebx + 0x1c]
lea ecx, [ebp - 0x2c]
pop eax
call fcn.0048583c
lea eax, [ebp - 0x2c]
xor edx, edx
mov dword [ebp - 0x30], edx
lea ecx, [ebp - 0x30]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xc]
call fcn.0048583c
lea edx, [ebp - 0x30]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x30]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x2c]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x28]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x24]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0x80
xor ecx, ecx
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x34]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a503
call fcn.00485bec
lea eax, [ebp - 0x34]
xor edx, edx
mov dword [ebp - 0x38], edx
lea ecx, [ebp - 0x38]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xc]
call fcn.0048583c
lea edx, [ebp - 0x38]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x38]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x34]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0x8c
xor ecx, ecx
mov dword [ebp - 0x3c], ecx
lea ecx, [ebp - 0x3c]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a516
call fcn.00485bec
lea edx, [ebp - 0x3c]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x3c]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0x98
xor ecx, ecx
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x40]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a529
call fcn.00485bec
lea edx, [ebp - 0x40]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x40]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0xa4
xor ecx, ecx
mov dword [ebp - 0x44], ecx
lea ecx, [ebp - 0x44]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a53c
call fcn.00485bec
lea edx, [ebp - 0x44]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x44]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0xb0
mov edx, 0x49a54e
lea eax, [ebp - 0x48]
call fcn.00485610
inc dword [ebx + 0x1c]
xor eax, eax
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 8]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0x48]
lea ecx, [ebp - 0x4c]
call fcn.0048583c
lea edx, [ebp - 0x4c]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x4c]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x48]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0xbc
mov edx, 0x49a564
lea eax, [ebp - 0x50]
call fcn.00485610
inc dword [ebx + 0x1c]
xor eax, eax
mov dword [ebp - 0x54], eax
lea eax, [ebp - 8]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0x50]
lea ecx, [ebp - 0x54]
call fcn.0048583c
lea edx, [ebp - 0x54]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x54]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x50]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0xc8
xor ecx, ecx
mov dword [ebp - 0x58], ecx
lea ecx, [ebp - 0x58]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a57a
call fcn.00485bec
lea edx, [ebp - 0x58]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x58]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0xd4
xor ecx, ecx
mov dword [ebp - 0x5c], ecx
lea ecx, [ebp - 0x5c]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a589
call fcn.00485bec
lea edx, [ebp - 0x5c]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x5c]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0xe0
xor ecx, ecx
mov dword [ebp - 0x60], ecx
lea ecx, [ebp - 0x60]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a598
call fcn.00485bec
lea eax, [ebp - 0x60]
push eax
mov edx, 0x49a5a2
lea eax, [ebp - 0x64]
call fcn.00485610
inc dword [ebx + 0x1c]
xor ecx, ecx
mov dword [ebp - 0x68], ecx
lea ecx, [ebp - 0x68]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0x64]
pop eax
call fcn.0048583c
lea edx, [ebp - 0x68]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x68]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x64]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x60]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0xec
xor ecx, ecx
mov dword [ebp - 0x6c], ecx
lea ecx, [ebp - 0x6c]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a5ae
call fcn.00485bec
lea edx, [ebp - 0x6c]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x6c]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0xf8
xor ecx, ecx
mov dword [ebp - 0x70], ecx
lea ecx, [ebp - 0x70]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a5b9
call fcn.00485bec
lea edx, [ebp - 0x70]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x70]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0x104
xor ecx, ecx
mov dword [ebp - 0x74], ecx
lea ecx, [ebp - 0x74]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a5cc
call fcn.00485bec
lea eax, [ebp - 0x74]
push eax
mov edx, 0x49a5e1
lea eax, [ebp - 0x78]
call fcn.00485610
inc dword [ebx + 0x1c]
xor ecx, ecx
mov dword [ebp - 0x7c], ecx
lea ecx, [ebp - 0x7c]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0x78]
pop eax
call fcn.0048583c
lea eax, [ebp - 0x7c]
xor edx, edx
mov dword [ebp - 0x80], edx
lea ecx, [ebp - 0x80]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xc]
call fcn.0048583c
lea edx, [ebp - 0x80]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x80]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x7c]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x78]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x74]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0x110
xor ecx, ecx
mov dword [ebp - 0x84], ecx
lea ecx, [ebp - 0x84]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a5e3
call fcn.00485bec
lea eax, [ebp - 0x84]
push eax
mov edx, 0x49a5ed
lea eax, [ebp - 0x88]
call fcn.00485610
inc dword [ebx + 0x1c]
xor ecx, ecx
mov dword [ebp - 0x8c], ecx
lea ecx, [ebp - 0x8c]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0x88]
pop eax
call fcn.0048583c
lea eax, [ebp - 0x8c]
xor edx, edx
mov dword [ebp - 0x90], edx
lea ecx, [ebp - 0x90]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xc]
call fcn.0048583c
lea edx, [ebp - 0x90]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x90]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x8c]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x88]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x84]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0x11c
xor ecx, ecx
mov dword [ebp - 0x94], ecx
lea ecx, [ebp - 0x94]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a5ef
call fcn.00485bec
lea edx, [ebp - 0x94]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x94]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0x128
xor ecx, ecx
mov dword [ebp - 0x98], ecx
lea ecx, [ebp - 0x98]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a602
call fcn.00485bec
lea eax, [ebp - 0x98]
push eax
mov edx, 0x49a611
lea eax, [ebp - 0x9c]
call fcn.00485610
inc dword [ebx + 0x1c]
xor ecx, ecx
mov dword [ebp - 0xa0], ecx
lea ecx, [ebp - 0xa0]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0x9c]
pop eax
call fcn.0048583c
lea eax, [ebp - 0xa0]
xor edx, edx
mov dword [ebp - 0xa4], edx
lea ecx, [ebp - 0xa4]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xc]
call fcn.0048583c
lea edx, [ebp - 0xa4]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xa4]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xa0]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x9c]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x98]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0x134
xor ecx, ecx
mov dword [ebp - 0xa8], ecx
lea ecx, [ebp - 0xa8]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a616
call fcn.00485bec
lea eax, [ebp - 0xa8]
xor edx, edx
mov dword [ebp - 0xac], edx
lea ecx, [ebp - 0xac]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xc]
call fcn.0048583c
lea edx, [ebp - 0xac]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xac]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xa8]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0x140
xor ecx, ecx
mov dword [ebp - 0xb0], ecx
lea ecx, [ebp - 0xb0]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a629
call fcn.00485bec
lea eax, [ebp - 0xb0]
push eax
mov edx, 0x49a638
lea eax, [ebp - 0xb4]
call fcn.00485610
inc dword [ebx + 0x1c]
xor ecx, ecx
mov dword [ebp - 0xb8], ecx
lea ecx, [ebp - 0xb8]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xb4]
pop eax
call fcn.0048583c
lea eax, [ebp - 0xb8]
xor edx, edx
mov dword [ebp - 0xbc], edx
lea ecx, [ebp - 0xbc]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xc]
call fcn.0048583c
lea edx, [ebp - 0xbc]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xbc]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xb8]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xb4]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xb0]
mov edx, 2
call fcn.004857e4
jmp 0x4029ee
mov word [ebx + 0x10], 0x14c
mov edx, 0x49a63a
lea eax, [ebp - 0xc0]
call fcn.00485610
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xc0]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xc0]
mov edx, 2
call fcn.004857e4
mov word [ebx + 0x10], 0x158
lea edx, [ebp - 4]
mov eax, dword [ebp - 0xc4]
call fcn.00485814
mov eax, dword [ebp - 0xc4]
mov edx, 2
mov word [ebx + 0x10], 0x164
push eax
lea eax, [ebp - 0x10]
dec dword [ebx + 0x1c]
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 8]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 4]
mov edx, 2
call fcn.004857e4
pop eax
mov word [ebx + 0x10], 0x158
inc dword [ebx + 0x1c]
mov edx, dword [ebx]
mov dword fs:[0], edx
jmp 0x402db8
lea ecx, [ebp - 0x230]
push ecx
mov eax, dword [ebp - 0x11c]
mov edx, dword [eax + 4]
push edx
call sub.SHELL32.DLL_SHGetPathFromIDListA
mov word [ebx + 0x10], 0x170
lea edx, [ebp - 0x230]
lea eax, [ebp - 0xc8]
call fcn.00485610
mov edx, eax
inc dword [ebx + 0x1c]
lea eax, [ebp - 0xc]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xc8]
mov edx, 2
call fcn.004857e4
mov ecx, dword [ebp - 0x114]
sub ecx, 0x20
je 0x402ae2
sub ecx, 0x20
je 0x402c91
sub ecx, 0x40
je 0x402cff
sub ecx, 0x80
je 0x402bb0
jmp 0x402d44
mov word [ebx + 0x10], 0x17c
mov edx, 0x49a644
lea eax, [ebp - 0xcc]
call fcn.00485610
inc dword [ebx + 0x1c]
xor eax, eax
mov dword [ebp - 0xd0], eax
lea eax, [ebp - 8]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xcc]
lea ecx, [ebp - 0xd0]
call fcn.0048583c
lea edx, [ebp - 0xd0]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xd0]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xcc]
mov edx, 2
call fcn.004857e4
mov esi, dword [0x4a47b4]
cmp esi, dword [0x4a47c0]
je 0x402b8e
mov edi, esi
mov dword [ebp - 0xd4], edi
test edi, edi
je 0x402b82
mov word [ebx + 0x10], 0x194
lea edx, [ebp - 8]
mov eax, dword [ebp - 0xd4]
call fcn.00485648
mov word [ebx + 0x10], 0x188
add dword [0x4a47b4], 4
jmp 0x402d44
push 1
push 1
lea ecx, [ebp - 0x124]
push ecx
lea eax, [ebp - 8]
push eax
push esi
push 0x4a47b0
call fcn.00402dc0
add esp, 0x18
jmp 0x402d44
mov word [ebx + 0x10], 0x1a0
xor edx, edx
mov dword [ebp - 0xd8], edx
lea ecx, [ebp - 0xd8]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a65a
call fcn.00485bec
lea edx, [ebp - 0xd8]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xd8]
mov edx, 2
call fcn.004857e4
mov word [ebx + 0x10], 0x1ac
cmp dword [ebp - 8], 0
je 0x402c06
mov edx, dword [ebp - 8]
jmp 0x402c0b
mov edx, 0x49a669
lea eax, [ebp - 0xdc]
call fcn.00485610
inc dword [ebx + 0x1c]
mov esi, dword [0x4a47b4]
cmp esi, dword [0x4a47c0]
je 0x402c59
mov edi, esi
mov dword [ebp - 0xe0], edi
test edi, edi
je 0x402c50
mov word [ebx + 0x10], 0x1b8
lea edx, [ebp - 0xdc]
mov eax, dword [ebp - 0xe0]
call fcn.00485648
mov word [ebx + 0x10], 0x1ac
add dword [0x4a47b4], 4
jmp 0x402c79
push 1
push 1
lea ecx, [ebp - 0x12c]
push ecx
lea eax, [ebp - 0xdc]
push eax
push esi
push 0x4a47b0
call fcn.00402dc0
add esp, 0x18
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xdc]
mov edx, 2
call fcn.004857e4
jmp 0x402d44
mov word [ebx + 0x10], 0x1c4
mov edx, 0x49a66a
lea eax, [ebp - 0xe4]
call fcn.00485610
inc dword [ebx + 0x1c]
xor eax, eax
mov dword [ebp - 0xe8], eax
lea eax, [ebp - 8]
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xe4]
lea ecx, [ebp - 0xe8]
call fcn.0048583c
lea edx, [ebp - 0xe8]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xe8]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xe4]
mov edx, 2
call fcn.004857e4
jmp 0x402d44
mov word [ebx + 0x10], 0x1d0
xor ecx, ecx
mov dword [ebp - 0xec], ecx
lea ecx, [ebp - 0xec]
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, 0x49a680
call fcn.00485bec
lea edx, [ebp - 0xec]
lea eax, [ebp - 4]
call fcn.00485814
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xec]
mov edx, 2
call fcn.004857e4
mov word [ebx + 0x10], 0x1dc
lea edx, [ebp - 4]
mov eax, dword [ebp - 0xc4]
call fcn.00485814
mov eax, dword [ebp - 0xc4]
mov edx, 2
mov word [ebx + 0x10], 0x1e8
push eax
lea eax, [ebp - 0x10]
dec dword [ebx + 0x1c]
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 8]
mov edx, 2
call fcn.004857e4
dec dword [ebx + 0x1c]
lea eax, [ebp - 4]
mov edx, 2
call fcn.004857e4
pop eax
mov word [ebx + 0x10], 0x1dc
inc dword [ebx + 0x1c]
mov edx, dword [ebx]
mov dword fs:[0], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret