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

Disassembly:
sub esp, 0x50
mov eax, dword [esp + 0x54]
push ebx
push ebp
push esi
push edi
lea edi, [eax + eax + 0x6000]
push 0
push 0x10
mov esi, ecx
push edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x70], 0
call fcn.00481530
test eax, eax
jne 0x48315a
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x50
ret 0x20
mov ebp, edi
push 0x10
and ebp, 0xffff
mov ecx, esi
push ebp
call fcn.00482140
mov ecx, dword [esp + 0x6c]
push 0x11
push ebp
mov dword [ecx], eax
mov ecx, esi
call fcn.00482140
mov ebx, dword [esp + 0x68]
push 0
push 0x40
push edi
mov ecx, esi
mov dword [ebx], eax
call fcn.00481530
test eax, eax
je 0x4831ae
lea edx, [esp + 0x1c]
push 0
push edx
mov ecx, eax
call fcn.00483740
test eax, eax
je 0x4831ae
mov eax, dword [esp + 0x70]
mov cl, byte [esp + 0x1c]
mov byte [eax], cl
push 0
push 0x50
push edi
mov ecx, esi
call fcn.00481530
test eax, eax
je 0x4831de
lea edx, [esp + 0x10]
mov ecx, eax
push edx
call fcn.00483730
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x10], eax
movsx edx, word [eax]
mov dword [ecx], edx
movsx eax, word [eax + 2]
mov dword [ecx + 4], eax
push 0x100
push ebp
mov ecx, esi
call fcn.00482140
mov ecx, dword [esp + 0x78]
push 0x102
push ebp
mov dword [ecx], eax
mov ecx, esi
call fcn.00482140
mov edx, dword [esp + 0x7c]
push 0
push 0x3000
push edi
mov ecx, esi
mov dword [edx], eax
call fcn.00481530
test eax, eax
je 0x483231
lea ecx, [esp + 0x64]
push ecx
mov ecx, eax
call fcn.00483730
pop edi
pop esi
pop ebp
mov dword [esp + 0x58], eax
pop ebx
add esp, 0x50
ret 0x20
mov al, byte [esp + 0x80]
test al, al
je 0x4834dc
push 0
mov ecx, esi
call fcn.004a7270
test eax, eax
mov dword [esp + 0x80], eax
je 0x4834dc
mov edx, dword [esp + 0x6c]
mov eax, dword [edx]
imul eax, dword [ebx]
mov dword [esp + 0x70], eax
fild dword [esp + 0x70]
fmul qword [0x4e41c8]
fadd qword [0x4dbbc8]
call fcn.004cd7a0
mov ecx, dword [esp + 0x7c]
mov edi, eax
mov eax, 1
mov dword [esp + 0x18], edi
mov ecx, dword [ecx]
mov dword [esp + 0x3c], eax
shl eax, cl
mov ecx, esi
mov dword [esp + 0x40], 2
mov dword [esp + 0x44], 4
mov dword [esp + 0x48], 8
mov dword [esp + 0x4c], 0x10
mov dword [esp + 0x50], 0x20
mov dword [esp + 0x54], 0x40
mov dword [esp + 0x58], 0x80
mov dword [esp + 0x5c], 0x100
mov dword [esp + 0x70], eax
call fcn.00481d00
mov ecx, esi
mov dword [esi + 0xc64], eax
call fcn.00481ce0
mov edx, dword [esi + 0xc64]
mov dword [esi + 0xc60], eax
cmp edx, dword [ebx]
jl 0x48314e
mov ecx, dword [esp + 0x6c]
cmp eax, dword [ecx]
jl 0x48314e
add edi, 0x10
push edi
call fcn.004ccca2
mov ecx, edi
mov ebx, eax
mov edx, ecx
xor eax, eax
mov edi, ebx
add esp, 4
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
push 1
and ecx, 3
push 0x3000
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x1c]
mov ecx, esi
push eax
mov dword [esp + 0x70], ebx
call fcn.00481530
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x64]
push 0
push ecx
push edx
mov ecx, eax
call fcn.004885c0
mov eax, dword [esp + 0x78]
push 1
push 0x100
push ebp
mov ecx, esi
mov dword [eax], 1
call fcn.00492de0
mov ecx, dword [esp + 0x7c]
push 0
push 0x102
push ebp
mov dword [ecx], 0
mov ecx, esi
call fcn.00492de0
mov ecx, esi
call fcn.00481d20
cmp eax, 8
jne 0x483437
mov ecx, dword [esp + 0x80]
push 0
call fcn.00484400
mov ecx, dword [esp + 0x6c]
mov edx, eax
xor eax, eax
xor edi, edi
mov ebp, dword [ecx]
mov dword [esp + 0x7c], edx
test ebp, ebp
mov dword [esp + 0x80], eax
jle 0x4834dc
jmp 0x4833ca
mov edx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x74]
mov ebp, dword [ecx + 4]
lea ebp, [eax + ebp - 1]
imul ebp, dword [esi + 0xc64]
add ebp, dword [ecx]
lea ecx, [edx + ebp - 1]
cmp ecx, edx
jb 0x483419
mov edx, dword [esp + 0x68]
xor ebp, ebp
cmp dword [edx], ebp
jle 0x483419
mov al, byte [esp + 0x70]
test byte [ecx], al
je 0x4833fe
mov al, byte [esp + edi*4 + 0x3c]
or byte [ebx], al
inc edi
cmp edi, 8
jl 0x48340a
xor edi, edi
inc ebx
mov byte [ebx], 0
mov eax, dword [edx]
inc ebp
inc ecx
cmp ebp, eax
jl 0x4833f0
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x6c]
inc eax
mov dword [esp + 0x80], eax
cmp eax, dword [ecx]
jl 0x4833c6
mov eax, dword [esp + 0x64]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0x20
mov ecx, esi
call fcn.00481d20
cmp eax, 0x10
jne 0x4834dc
mov ecx, dword [esp + 0x80]
push 0
call fcn.00484400
mov ecx, dword [esp + 0x6c]
xor edx, edx
xor ebp, ebp
mov dword [esp + 0x7c], eax
mov edi, dword [ecx]
mov dword [esp + 0x80], edx
test edi, edi
jle 0x4834dc
mov ecx, dword [esp + 0x74]
mov edi, dword [ecx + 4]
lea edi, [edi + edx - 1]
imul edi, dword [esi + 0xc64]
add edi, dword [ecx]
lea ecx, [eax + edi*2 - 2]
cmp ecx, eax
jb 0x4834cc
mov eax, dword [esp + 0x68]
xor edi, edi
cmp dword [eax], edi
jle 0x4834c8
movsx edx, word [ecx]
mov eax, dword [esp + 0x70]
test eax, edx
je 0x4834a9
mov dl, byte [esp + ebp*4 + 0x3c]
mov al, byte [ebx]
or al, dl
mov byte [ebx], al
inc ebp
cmp ebp, 8
jl 0x4834b5
xor ebp, ebp
inc ebx
mov byte [ebx], 0
mov eax, dword [esp + 0x68]
inc edi
add ecx, 2
cmp edi, dword [eax]
jl 0x483494
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
inc edx
mov dword [esp + 0x80], edx
cmp edx, dword [ecx]
jl 0x48346e
mov eax, dword [esp + 0x64]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0x20