Function at 0x4677d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x2a0
mov eax, dword [0x500030]
xor eax, esp
mov dword [esp + 0x29c], eax
push ebx
push ebp
mov ebp, dword [esp + 0x2ac]
mov eax, dword [ebp]
push esi
push edi
mov edi, ecx
or ecx, 0xffffffff
mov dword [esp + 0x30], edi
mov dword [esp + 0x18], 0
mov dword [esp + 0x20], ecx
cmp eax, 1
je 0x467828
add eax, 0xfffffffe
cmp eax, 1
ja 0x467820
mov ebx, dword [ebp + 0x14]
sub ebx, dword [ebp + 0xc]
mov dword [esp + 0x14], ebx
jmp 0x46783b
mov dword [esp + 0x14], ecx
mov ebx, ecx
jmp 0x46783b
mov eax, dword [ebp + 4]
push eax
call dword [sym.imp.MSVCR90.dll_ftell]
add esp, 4
mov dword [esp + 0x14], eax
mov ebx, eax
mov ecx, dword [edi + 0x14]
push 0x18
push 1
mov dword [esp + 0x24], ecx
call dword [sym.imp.MSVCR90.dll_calloc]
mov esi, eax
add esp, 8
mov dword [esp + 0x24], esi
test esi, esi
jne 0x467868
mov dword [0x50410c], 1
jmp 0x467b0b
mov eax, dword [esp + 0x1c]
test eax, eax
jle 0x467884
push 0x3c
call fcn.00466550
add esp, 4
mov dword [esi], eax
test eax, eax
je 0x467adb
push 0x210
mov eax, 1
call fcn.00466550
add esp, 4
mov dword [esi + 8], eax
test eax, eax
je 0x467adb
cmp dword [edi + 0x14], 0
mov eax, dword [edi + 0x18]
mov dword [esp + 0x1c], 0
jle 0x467aa9
jmp 0x4678c0
lea ecx, [eax + ebx - 0x200]
mov eax, dword [ebp]
cmp eax, 1
je 0x4678fd
add eax, 0xfffffffe
cmp eax, 1
ja 0x4678f1
mov eax, dword [ebp + 0xc]
add ecx, eax
mov dword [ebp + 0x20], 0
cmp ecx, eax
jb 0x467911
cmp ecx, dword [ebp + 0x10]
ja 0x467911
mov dword [ebp + 0x14], ecx
jmp 0x46791b
mov dword [0x50426c], 0xfffffff6
jmp 0x46791b
mov edx, dword [ebp + 4]
push 0
push ecx
push edx
call dword [sym.imp.MSVCR90.dll_fseek]
add esp, 0xc
test eax, eax
je 0x46791b
mov dword [0x50426c], 0xfffffffa
lea eax, [esp + 0x78]
mov ecx, ebp
call fcn.00469810
test eax, eax
je 0x467ad4
cmp dword [esp + 0x7c], 0
jle 0x467a25
xor ebx, ebx
cmp dword [esp + 0x20], 0xffffffff
je 0x46794b
cmp byte [esp + 0x8a], bl
jne 0x467952
lea ebx, [esp + 0x98]
push 0
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x38]
push edx
mov ecx, ebx
lea edx, [esp + 0x44]
mov edi, ebp
call fcn.00468c60
mov edi, eax
add esp, 0x10
test edi, edi
je 0x467ad4
cmp dword [esp + 0x28], 8
jle 0x467988
xor ebx, ebx
jmp 0x4679a6
test ebx, ebx
je 0x4679a6
mov eax, dword [esp + 0x18]
push eax
push 0
push ebx
mov eax, esi
call fcn.00465670
add esp, 0xc
test eax, eax
je 0x467ad4
movsx ecx, word [esp + 0x82]
movsx edx, word [esp + 0x80]
mov eax, dword [esp + 0x28]
push ecx
mov ecx, dword [esp + 0x30]
push edx
mov edx, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x44]
push ecx
push edx
push eax
push edi
push 0
mov eax, 6
lea edi, [esp + 0x5c]
call fcn.004650a0
add esp, 0x20
test eax, eax
je 0x467ad4
test ebx, ebx
je 0x467a0a
mov eax, dword [esp + 0x18]
xor edi, edi
lea ebx, [esp + 0x3c]
call fcn.00465570
mov eax, dword [esp + 0x18]
mov dword [esp + 0x20], eax
inc eax
mov dword [esp + 0x18], eax
jmp 0x467a63
cmp byte [esp + 0x8a], 0
je 0x467a67
mov eax, dword [esp + 0x20]
xor edi, edi
lea ebx, [esp + 0x3c]
call fcn.00465570
jmp 0x467a63
mov eax, dword [esi]
movsx esi, word [esp + 0x88]
imul esi, dword [eax + 4]
add esi, dword [eax + 0x18]
movsx edx, word [esp + 0x82]
mov ecx, 0xf
lea edi, [esp + 0x3c]
rep movsd dword es:[edi], dword [esi]
movsx ecx, word [esp + 0x80]
xor eax, eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], edx
mov esi, dword [esp + 0x24]
movsx eax, word [esp + 0x86]
movsx ecx, word [esp + 0x84]
push eax
push ecx
lea edx, [esp + 0x44]
push edx
mov eax, esi
call fcn.00465610
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x84]
mov ebx, dword [esp + 0x20]
inc ecx
add esp, 0xc
cmp ecx, dword [edx + 0x14]
mov dword [esp + 0x1c], ecx
jl 0x4678c0
mov eax, dword [ebp]
cmp eax, 1
je 0x467aeb
add eax, 0xfffffffe
cmp eax, 1
ja 0x467adf
mov eax, dword [ebp + 0xc]
lea ecx, [eax + ebx]
mov dword [ebp + 0x20], 0
cmp ecx, eax
jb 0x467aff
cmp ecx, dword [ebp + 0x10]
ja 0x467aff
mov dword [ebp + 0x14], ecx
jmp 0x467b09
mov ebx, esi
call fcn.004656e0
xor eax, eax
jmp 0x467b0b
mov dword [0x50426c], 0xfffffff6
jmp 0x467b09
mov eax, dword [ebp + 4]
push 0
push ebx
push eax
call dword [sym.imp.MSVCR90.dll_fseek]
add esp, 0xc
test eax, eax
je 0x467b09
mov dword [0x50426c], 0xfffffffa
mov eax, esi
mov ecx, dword [esp + 0x2ac]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004dc814
add esp, 0x2a0
ret