Function at 0x473324
Capabilities:
Read file on windows
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4c
mov ebx, dword [ebp + 8]
mov dword [esp + 0xc], 0x52f3e1
mov dword [esp + 8], 0x52f1ec
mov dword [esp + 4], 0x400
mov eax, dword [ebx + 0xb4]
mov dword [esp], eax
call fcn.004508c4
mov eax, dword [ebx + 4]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0xb4]
mov dword [esp], eax
call fcn.00453150
mov edi, eax
xor esi, esi
mov dword [esp + 8], 0x52f2bc
mov dword [esp + 4], 8
mov eax, dword [ebx + 0xb4]
mov dword [esp], eax
call fcn.004508c4
mov dword [esp], ebx
call fcn.0047316c
sub edi, dword [ebx + 0xb0]
mov dword [ebp - 0x20], edi
mov dword [esp], edi
call fcn.0050963c
mov dword [ebx + 0x1c], eax
mov dword [esp + 4], 0x52f203
mov eax, dword [ebx + 4]
mov dword [esp], eax
call sub.msvcrt.dll_fopen
mov esi, eax
test eax, eax
je 0x474277
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x1c]
mov dword [esp], eax
call sub.msvcrt.dll_fread
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sub.msvcrt.dll_fseek
mov dword [esp], ebx
call fcn.00472930
mov dword [esp], ebx
call fcn.00472a34
test al, al
je 0x4742f5
mov eax, dword [ebx + 0xa8]
inc eax
mov edi, dword [ebx + 8]
cmp eax, edi
jae 0x473451
mov edx, 4
xor ecx, ecx
lea esi, [esi]
add edx, 1
adc ecx, 0
inc eax
cmp eax, edi
jb 0x47342c
mov eax, edx
xor eax, 0x20
or eax, ecx
je 0x473a98
mov eax, edx
xor eax, 0x24
or eax, ecx
je 0x47376c
mov eax, 0x10
mov dword [ebx + 0x64], eax
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x20], eax
test eax, eax
je 0x4742cb
mov dword [esp + 8], 0x52f2e0
mov dword [esp + 4], 8
mov eax, dword [ebx + 0xb4]
mov dword [esp], eax
call fcn.004508c4
inc dword [ebx + 0xa8]
mov eax, dword [ebx + 0x6c]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004729dc
mov dword [ebx + 0x6c], eax
cmp eax, 0x200
je 0x473aa4
mov dword [esp], 0x20000
call fcn.0050963c
mov dword [ebx + 0x58], eax
test eax, eax
je 0x4742a1
mov eax, dword [ebx + 0x6c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0xa8]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebx + 0xa8], eax
mov eax, dword [ebx + 0x98]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004729dc
mov edi, eax
mov dword [ebx + 0x98], eax
cmp eax, 0x40000
je 0x473da0
cmp eax, 0x48000
je 0x473fa8
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebx + 0xa8], eax
mov eax, dword [ebx + 0x78]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004729dc
mov edx, eax
mov dword [ebx + 0x78], eax
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebx + 0xa8], eax
mov eax, dword [ebx + 0x7c]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call fcn.004729dc
mov ecx, eax
mov dword [ebx + 0x7c], eax
mov eax, dword [ebp - 0x1c]
add eax, 0xc
mov dword [ebx + 0xa8], eax
mov eax, dword [ebx + 0x80]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x2c], ecx
call fcn.004729dc
mov dword [ebx + 0x80], eax
add edi, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
lea edx, [edi + edx]
mov ecx, dword [ebp - 0x2c]
lea ecx, [edx + ecx]
add ecx, eax
mov edi, dword [ebx + 0x64]
cmp edi, 0x20
je 0x473ddc
cmp edi, 0x24
je 0x473f4c
mov dword [ebx + 0x84], 0
mov dword [ebx + 0x88], 0
xor eax, eax
xor edi, edi
mov dword [esp + 4], eax
mov dword [esp], 0x52f31f
call sub.msvcrt.dll_printf
mov eax, dword [ebx + 0x78]
test eax, eax
jne 0x473910
mov eax, dword [ebx + 0x7c]
test eax, eax
jne 0x4738d0
mov eax, dword [ebx + 0x80]
test eax, eax
jne 0x473890
test edi, edi
jne 0x4737dc
mov ecx, dword [ebx + 0x88]
test ecx, ecx
jne 0x473778
mov edx, dword [ebx + 0x84]
test edx, edx
jne 0x473778
mov eax, dword [ebx + 0x88]
test eax, eax
jne 0x473cb8
mov eax, dword [ebx + 0x90]
test eax, eax
jne 0x473c78
mov dword [ebp - 0x1c], 0
mov dword [esp + 8], 0x52f328
mov dword [esp + 4], 8
mov eax, dword [ebx + 0xb4]
mov dword [esp], eax
call fcn.004508c4
mov dword [esp], esi
call sub.msvcrt.dll_rewind
cmp dword [ebx + 0x6c], 0x200
je 0x473a44
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x20000
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x58]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, 0x20000
jne 0x4741a5
mov eax, dword [ebx + 0x98]
cmp eax, 0x40000
je 0x473d20
cmp eax, 0x48000
je 0x473ea4
mov dword [esp + 8], 0x52f34c
mov dword [esp + 4], 8
mov eax, dword [ebx + 0xb4]
mov dword [esp], eax
call fcn.004508c4
mov eax, dword [ebx + 0x78]
test eax, eax
jne 0x4739f4
mov eax, dword [ebx + 0x80]
test eax, eax
jne 0x4739a0
mov eax, dword [ebx + 0x7c]
test eax, eax
jne 0x473950
test edi, edi
jne 0x473820
mov edi, dword [ebx + 0x84]
test edi, edi
jne 0x473bb0
mov ecx, dword [ebx + 0x88]
test ecx, ecx
jne 0x474018
mov dword [esp + 8], 0x52f388
mov dword [esp + 4], 8
mov eax, dword [ebx + 0xb4]
mov dword [esp], eax
call fcn.004508c4
mov dword [esp + 0xc], esi
mov eax, dword [ebx + 0x64]
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x20]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x64]
jne 0x47431f
mov dword [esp], esi
call sub.msvcrt.dll_fclose
mov eax, dword [ebp - 0x1c]
test eax, eax
sete al
add esp, 0x4c
pop ebx
pop esi
pop edi
leave
ret
mov eax, 0x24
jmp 0x473456
mov eax, dword [ebx + 0x8c]
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x24], eax
test eax, eax
je 0x47424d
mov eax, dword [ebx + 0x84]
test eax, eax
je 0x47360c
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x30], eax
test eax, eax
jne 0x47360c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov eax, dword [ebx + 0x84]
test eax, eax
jne 0x473b6c
mov dword [ebp - 0x1c], 0
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x47362f
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x2c], eax
test eax, eax
jne 0x47362f
mov dword [ebp - 0x1c], 5
jmp 0x47362f
mov edx, dword [ebx + 0x84]
test edx, edx
jne 0x473ae8
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x47370e
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x2c]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x88]
je 0x47370e
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
lea esi, [esi]
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x3c], eax
test eax, eax
jne 0x4735e8
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
lea esi, [esi]
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x38], eax
test eax, eax
jne 0x4735da
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
lea esi, [esi]
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x40], eax
test eax, eax
jne 0x4735cf
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
lea esi, [esi]
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x7c]
je 0x4736ea
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
nop
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x3c]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x80]
je 0x4736df
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
lea esi, [esi]
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x78]
je 0x4736d1
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
nop
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x800
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x58]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, 0x800
je 0x47368c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov eax, 0x20
jmp 0x473456
mov dword [esp], 0x800
call fcn.0050963c
mov dword [ebx + 0x58], eax
test eax, eax
jne 0x4734c4
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
lea esi, [esi]
mov dword [esp + 0xc], esi
mov eax, dword [ebx + 0x8c]
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x24]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x8c]
jne 0x4741f9
mov dword [esp + 0xc], esi
mov eax, dword [ebx + 0x84]
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x30]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x84]
je 0x47382e
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov eax, dword [ebx + 0x8c]
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x24], eax
cmp eax, 1
sbb eax, eax
and eax, 5
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x84]
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x30], eax
test eax, eax
jne 0x4737f1
mov dword [ebp - 0x1c], 5
jmp 0x4737f1
mov dword [esp + 0xc], esi
mov eax, dword [ebx + 0x8c]
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x24]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x8c]
jne 0x4741cf
mov eax, dword [ebx + 0x88]
test eax, eax
jne 0x47409c
mov dword [esp + 0xc], esi
mov eax, dword [ebx + 0x84]
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x30]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x84]
jne 0x47443b
mov eax, dword [ebx + 0x90]
test eax, eax
je 0x47370e
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x90]
je 0x47370e
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
nop
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x28], eax
test eax, eax
jne 0x473628
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
lea esi, [esi]
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x2c], eax
test eax, eax
je 0x474223
cmp dword [ebx + 0x88], 0x31fff
ja 0x47361a
mov eax, dword [ebx + 0x94]
mov dword [esp], eax
call fcn.0050963c
mov dword [ebx + 0x34], eax
test eax, eax
jne 0x47361a
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
nop
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x20000
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x50]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, 0x20000
jne 0x4745d8
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x20000
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x54]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, 0x20000
je 0x4736a8
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
nop
mov dword [esp], 0x20000
call fcn.0050963c
mov dword [ebx + 0x50], eax
test eax, eax
je 0x4745ae
mov dword [esp], 0x20000
call fcn.0050963c
mov dword [ebx + 0x54], eax
test eax, eax
je 0x474584
mov eax, dword [ebx + 0xa8]
mov dword [ebp - 0x1c], eax
jmp 0x47350c
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov dword [ebx + 0xa8], eax
mov eax, dword [ebx + 0x84]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x2c], ecx
call fcn.004729dc
mov edx, eax
mov dword [ebx + 0x84], eax
mov eax, dword [ebx + 0x88]
mov ecx, dword [ebp - 0x2c]
cmp eax, 0x32000
jbe 0x473e2e
cmp dword [ebp - 0x20], 0x200000
jbe 0x473e2e
cmp dword [ebx + 0x98], 0x48000
je 0x474174
mov edx, dword [ebx + 0x84]
test edx, edx
je 0x474561
test eax, eax
jne 0x473e5c
mov eax, dword [ebp - 0x20]
sub eax, edi
mov edi, eax
sub edi, edx
sub edi, ecx
mov dword [ebx + 0x8c], edi
mov eax, edx
xor edi, edi
jmp 0x4735b4
mov edi, 0x32000
sub edi, eax
mov dword [ebx + 0x94], edi
mov eax, edx
neg eax
sub eax, dword [ebx + 0x88]
sub eax, dword [ebx + 0x64]
add eax, dword [ebp - 0x20]
sub eax, edi
cmp eax, 0x1a6000
jle 0x473e92
sub eax, 0x1a6000
mov dword [ebx + 0x90], eax
mov eax, 0x1a6000
sub eax, ecx
mov dword [ebx + 0x8c], eax
mov eax, edx
xor edi, edi
jmp 0x4735b4
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x18000
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x44]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, 0x18000
jne 0x474537
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x18000
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x48]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, 0x18000
jne 0x47450d
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x18000
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x4c]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, 0x18000
je 0x4736a8
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov dword [ebx + 0xa8], eax
mov eax, dword [ebx + 0x84]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x2c], ecx
call fcn.004729dc
mov edx, eax
mov dword [ebx + 0x84], eax
mov eax, dword [ebp - 0x1c]
add eax, 0x14
mov dword [ebx + 0xa8], eax
mov eax, dword [ebx + 0x88]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [ebp - 0x28], edx
call fcn.004729dc
mov dword [ebx + 0x88], eax
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
jmp 0x473e0e
mov dword [esp], 0x18000
call fcn.0050963c
mov dword [ebx + 0x44], eax
test eax, eax
je 0x4744e3
mov dword [esp], 0x18000
call fcn.0050963c
mov dword [ebx + 0x48], eax
test eax, eax
je 0x4744b9
mov dword [esp], 0x18000
call fcn.0050963c
mov dword [ebx + 0x4c], eax
test eax, eax
jne 0x473dce
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
nop
mov dword [esp + 0xc], esi
mov eax, dword [ebx + 0x8c]
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x24]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x8c]
jne 0x47448f
mov dword [esp + 0xc], esi
mov eax, dword [ebx + 0x88]
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x2c]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x88]
je 0x47370e
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x2c]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x88]
jne 0x474465
mov eax, dword [ebx + 0x94]
test eax, eax
je 0x47411c
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x34]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x94]
je 0x47411c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
nop
mov dword [esp + 0xc], esi
mov eax, dword [ebx + 0x84]
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x30]
mov dword [esp], eax
call sub.msvcrt.dll_fread
cmp eax, dword [ebx + 0x84]
je 0x473c18
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
nop
test edx, edx
je 0x474199
neg edi
sub edi, edx
sub edi, eax
add edi, dword [ebp - 0x20]
sub edi, ecx
mov dword [ebx + 0x8c], edi
mov eax, dword [ebx + 0x84]
mov edi, 1
jmp 0x4735b4
xor eax, eax
mov edi, 1
jmp 0x4735b4
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 8
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 0x52f3a4
mov dword [esp + 8], 0
mov dword [esp + 4], 0x536b20
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
cmp edx, 3
je 0x4743ec
cmp edx, 2
je 0x4743b0
mov dword [esp], eax
call fcn.005099c0
mov dword [esp + 0xc], 0x52f3e1
mov dword [esp + 8], 0x52f271
mov dword [esp + 4], 8
mov eax, dword [ebx + 0xb4]
mov dword [esp], eax
call fcn.004508c4
test esi, esi
je 0x474391
mov dword [esp], esi
call sub.msvcrt.dll_fclose
call fcn.00509b8c
mov al, 1
jmp 0x473763
mov dword [esp], eax
call fcn.005099c0
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x52f3e1
mov dword [esp + 8], 0x52f25a
mov dword [esp + 4], 8
mov eax, dword [ebx + 0xb4]
mov dword [esp], eax
call fcn.004508c4
jmp 0x474391
mov dword [esp], eax
call fcn.005099c0
mov edi, dword [eax]
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], 0x52f3e1
mov dword [esp + 8], 0x52f238
mov dword [esp + 4], 8
mov eax, dword [ebx + 0xb4]
mov dword [esp], eax
call fcn.004508c4
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.00472ad0
jmp 0x474385
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
xor edi, edi
test eax, eax
je 0x4735b4
mov edi, dword [ebp - 0x20]
sub edi, dword [ebx + 0x64]
sub edi, eax
sub edi, ecx
mov dword [ebx + 0x8c], edi
xor eax, eax
xor edi, edi
jmp 0x4735b4
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
mov dword [esp], 4
call fcn.0050981c
mov dword [eax], 6
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5373fc
mov dword [esp], eax
call fcn.0050a02c
nop