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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x34]
cmp eax, dword [ecx + 8]
jbe 0x484a06
sub esp, 0xb4
nop
mov ebx, dword [esp + 0xc4]
mov ebp, ebx
and ebx, 0x1f
cmp ebx, 0xa
jbe 0x48447a
cmp ebx, 0xf
jbe 0x484163
cmp ebx, 0x11
ja 0x4840c6
cmp ebx, 0x10
je 0x483fbb
nop
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
mov ecx, dword [esp + 0xc0]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
call fcn.0047f3e0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x44], eax
xor ecx, ecx
jmp 0x4849fd
mov ebx, dword [esp + 0xb8]
mov edx, dword [ebx + 0x10]
mov esi, dword [ebx + 8]
mov eax, dword [ebx + 0x14]
lea ecx, [eax + 8]
cmp edx, ecx
jb 0x484999
cmp eax, ecx
ja 0x484994
mov ecx, dword [ebx]
mov ebp, dword [ebx + 4]
mov ecx, dword [ecx + 0x28]
mov dword [esp], ebp
sub edx, eax
mov ebp, edx
neg edx
sar edx, 0x1f
and eax, edx
add eax, esi
mov dword [esp + 4], eax
mov dword [esp + 8], 8
mov dword [esp + 0xc], ebp
call ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xb8]
mov ebx, dword [edx + 0x14]
lea ebp, [ebx + 8]
mov dword [edx + 0x14], ebp
mov esi, dword [edx + 0x10]
mov edi, dword [edx + 8]
add ebx, 0x10
cmp esi, ebx
jb 0x48498b
cmp ebx, ebp
jb 0x484982
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], ecx
mov eax, dword [edx]
mov ecx, dword [edx + 4]
mov eax, dword [eax + 0x28]
mov dword [esp], ecx
sub esi, ebp
mov ecx, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ebp, esi
lea ebx, [ebp + edi]
mov dword [esp + 4], ebx
mov dword [esp + 8], 8
mov dword [esp + 0xc], ecx
call eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xb8]
add dword [edx + 0x14], 8
mov edx, dword [esp + 0xbc]
mov dword [esp], edx
mov edx, dword [esp + 0xc0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xc4]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x48]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
call fcn.0047fd10
jmp 0x4847a3
cmp ebx, 0x17
jne 0x4840e1
nop
mov eax, dword [esp + 0xc0]
mov ecx, dword [eax + 4]
mov dword [esp + 0x40], ecx
xor edx, edx
jmp 0x484979
cmp ebx, 0x19
jne 0x4847a3
test ebp, 0x200
jne 0x484101
lea eax, [0x56ee80]
mov ecx, dword [esp + 0xbc]
jmp 0x48412e
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
mov ecx, dword [esp + 0xc0]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
call fcn.00480460
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0xc4]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x3c], eax
mov edx, dword [esp + 0xbc]
mov dword [esp], edx
mov ebx, dword [esp + 0xc0]
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
call fcn.0047f9f0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x58], eax
xor ecx, ecx
jmp 0x484812
cmp ebx, 0xd
ja 0x4842ae
cmp ebx, 0xb
jne 0x484207
mov ebx, dword [esp + 0xb8]
mov edx, dword [ebx + 0x10]
mov esi, dword [ebx + 8]
mov eax, dword [ebx + 0x14]
lea ecx, [eax + 8]
cmp edx, ecx
jb 0x484802
cmp eax, ecx
ja 0x4847fd
mov ecx, dword [ebx]
mov ebp, dword [ebx + 4]
mov ecx, dword [ecx + 0x28]
mov dword [esp], ebp
sub edx, eax
mov ebp, edx
neg edx
sar edx, 0x1f
and eax, edx
add eax, esi
mov dword [esp + 4], eax
mov dword [esp + 8], 8
mov dword [esp + 0xc], ebp
call ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xb8]
add dword [edx + 0x14], 8
mov edx, dword [esp + 0xbc]
mov dword [esp], edx
mov edx, dword [esp + 0xc0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xc4]
mov dword [esp + 8], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
call fcn.0047ffd0
jmp 0x4847a3
cmp ebx, 0xd
jne 0x4847a3
mov ebx, dword [esp + 0xb8]
mov edx, dword [ebx + 0x10]
mov esi, dword [ebx + 8]
mov eax, dword [ebx + 0x14]
lea ecx, [eax + 4]
cmp edx, ecx
jb 0x4847f8
cmp eax, ecx
ja 0x4847f3
mov ecx, dword [ebx]
mov ebp, dword [ebx + 4]
mov ecx, dword [ecx + 0x24]
mov dword [esp], ebp
sub edx, eax
mov ebp, edx
neg edx
sar edx, 0x1f
and eax, edx
add eax, esi
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], ebp
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xb8]
add dword [ecx + 0x14], 4
mov dword [esp], eax
call fcn.0044d300
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xbc]
mov dword [esp], edx
mov edx, dword [esp + 0xc0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xc4]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.0047fe10
jmp 0x4847a3
cmp ebx, 0xe
jne 0x484349
mov ebx, dword [esp + 0xb8]
mov edx, dword [ebx + 0x10]
mov esi, dword [ebx + 8]
mov eax, dword [ebx + 0x14]
lea ecx, [eax + 8]
cmp edx, ecx
jb 0x4847ee
cmp eax, ecx
ja 0x4847e9
mov ecx, dword [ebx]
mov ebp, dword [ebx + 4]
mov ecx, dword [ecx + 0x28]
mov dword [esp], ebp
sub edx, eax
mov ebp, edx
neg edx
sar edx, 0x1f
and eax, edx
add eax, esi
mov dword [esp + 4], eax
mov dword [esp + 8], 8
mov dword [esp + 0xc], ebp
call ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xb8]
add dword [edx + 0x14], 8
mov edx, dword [esp + 0xbc]
mov dword [esp], edx
mov edx, dword [esp + 0xc0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xc4]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.0047fe10
jmp 0x4847a3
mov ebx, dword [esp + 0xb8]
mov edx, dword [ebx + 0x10]
mov esi, dword [ebx + 8]
mov eax, dword [ebx + 0x14]
lea ecx, [eax + 4]
cmp edx, ecx
jb 0x4847e4
cmp eax, ecx
ja 0x4847df
mov ecx, dword [ebx]
mov ebp, dword [ebx + 4]
mov ecx, dword [ecx + 0x24]
mov dword [esp], ebp
sub edx, eax
mov ebp, edx
neg edx
sar edx, 0x1f
and eax, edx
add eax, esi
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], ebp
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
lea ebx, [edx + 4]
mov dword [ecx + 0x14], ebx
mov ebp, dword [ecx + 0x10]
mov esi, dword [ecx + 8]
add edx, 8
cmp ebp, edx
jb 0x4847d6
cmp edx, ebx
jb 0x4847cd
mov dword [esp + 0x54], eax
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov eax, dword [eax + 0x24]
mov dword [esp], edx
sub ebp, ebx
mov edx, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebx, ebp
add ebx, esi
mov dword [esp + 4], ebx
mov dword [esp + 8], 4
mov dword [esp + 0xc], edx
call eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0xb8]
add dword [ecx + 0x14], 4
mov ecx, dword [esp + 0x54]
mov dword [esp], ecx
call fcn.0044d300
mov eax, dword [esp + 4]
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0x50]
mov dword [esp], edx
call fcn.0044d300
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xbc]
mov dword [esp], edx
mov edx, dword [esp + 0xc0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xc4]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
call fcn.0047fd10
jmp 0x4847a3
cmp ebx, 5
ja 0x4845d3
cmp ebx, 3
ja 0x484539
cmp ebx, 1
jne 0x4844dd
mov edx, dword [esp + 0xb8]
mov ecx, dword [edx + 0xc]
mov ebx, dword [edx + 8]
mov eax, dword [edx + 0x14]
cmp ecx, eax
jbe 0x4847c8
movzx ecx, byte [ebx + eax]
inc eax
mov dword [edx + 0x14], eax
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
test cl, cl
setne al
mov byte [esp + 0xc], al
call fcn.0047fc50
jmp 0x4847a3
cmp ebx, 3
jne 0x4847a3
nop
mov edx, dword [esp + 0xb8]
mov ecx, dword [edx + 0xc]
mov ebx, dword [edx + 8]
mov eax, dword [edx + 0x14]
cmp ecx, eax
jbe 0x4847c3
lea ecx, [ebx + eax]
movsx ecx, byte [ecx]
inc eax
mov dword [edx + 0x14], eax
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov eax, ecx
sar ecx, 0x1f
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], eax
call fcn.0047fee0
jmp 0x4847a3
cmp ebx, 4
jne 0x484589
mov eax, dword [esp + 0xb8]
mov dword [esp], eax
call fcn.00483db0
movsx eax, word [esp + 4]
mov ecx, dword [esp + 0xbc]
mov dword [esp], ecx
mov ecx, dword [esp + 0xc0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 8], ecx
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
call fcn.0047fee0
jmp 0x4847a3
mov eax, dword [esp + 0xb8]
mov dword [esp], eax
call fcn.00483e30
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xbc]
mov dword [esp], ecx
mov ecx, dword [esp + 0xc0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 8], ecx
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
call fcn.0047fee0
jmp 0x4847a3
cmp ebx, 8
ja 0x484682
cmp ebx, 6
je 0x484639
cmp ebx, 8
jne 0x4847a3
mov edx, dword [esp + 0xb8]
mov ecx, dword [edx + 0xc]
mov ebx, dword [edx + 8]
mov eax, dword [edx + 0x14]
cmp ecx, eax
jbe 0x4847be
movzx ecx, byte [ebx + eax]
inc eax
mov dword [edx + 0x14], eax
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], ecx
call fcn.0047ffd0
jmp 0x4847a3
mov eax, dword [esp + 0xb8]
mov dword [esp], eax
call fcn.00483eb0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xbc]
mov dword [esp], edx
mov edx, dword [esp + 0xc0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xc4]
mov dword [esp + 8], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
call fcn.0047fee0
jmp 0x4847a3
cmp ebx, 9
jne 0x48471e
mov ebx, dword [esp + 0xb8]
mov edx, dword [ebx + 0x10]
mov esi, dword [ebx + 8]
mov eax, dword [ebx + 0x14]
lea ecx, [eax + 2]
cmp edx, ecx
jb 0x4847b9
cmp eax, ecx
ja 0x4847b4
mov ecx, dword [ebx]
mov ebp, dword [ebx + 4]
mov ecx, dword [ecx + 0x20]
mov dword [esp], ebp
sub edx, eax
mov ebp, edx
neg edx
sar edx, 0x1f
and eax, edx
add eax, esi
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], ebp
call ecx
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0xb8]
add dword [ecx + 0x14], 2
mov ecx, dword [esp + 0xbc]
mov dword [esp], ecx
mov ecx, dword [esp + 0xc0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 8], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
call fcn.0047ffd0
jmp 0x4847a3
mov ebx, dword [esp + 0xb8]
mov edx, dword [ebx + 0x10]
mov esi, dword [ebx + 8]
mov eax, dword [ebx + 0x14]
lea ecx, [eax + 4]
cmp edx, ecx
jb 0x4847af
cmp eax, ecx
ja 0x4847aa
mov ecx, dword [ebx]
mov ebp, dword [ebx + 4]
mov ecx, dword [ecx + 0x24]
mov dword [esp], ebp
sub edx, eax
mov ebp, edx
neg edx
sar edx, 0x1f
and eax, edx
add eax, esi
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], ebp
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xb8]
add dword [ecx + 0x14], 4
mov ecx, dword [esp + 0xbc]
mov dword [esp], ecx
mov ecx, dword [esp + 0xc0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 8], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
call fcn.0047ffd0
add esp, 0xb4
ret
call fcn.00464640
call fcn.00464620
call fcn.00464640
call fcn.00464620
call fcn.004645e0
call fcn.004645e0
call fcn.004645e0
mov eax, ebx
mov ecx, edx
call fcn.00464640
mov ecx, edx
mov edx, ebp
call fcn.00464620
call fcn.00464640
call fcn.00464620
call fcn.00464640
call fcn.00464620
call fcn.00464640
call fcn.00464620
call fcn.00464640
call fcn.00464620
mov edx, dword [esp + 0x60]
lea ecx, [edx + 1]
mov eax, dword [esp + 0x58]
cmp ecx, eax
jge 0x4847a3
mov dword [esp + 0x60], ecx
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
mov edx, dword [esp + 0xc0]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xc4]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call fcn.0047ef50
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, ecx
and ecx, 0x160
cmp ecx, 0x100
je 0x4848c1
mov dword [esp + 0x68], ebx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + 0x2c]
mov edx, dword [esp + 0x74]
mov dword [esp], edx
mov ebx, dword [esp + 0x60]
mov dword [esp + 4], ebx
call ecx
lea edi, [esp + 0x80]
lea esi, [esp + 8]
call fcn.00464c0e
mov eax, dword [esp + 0x80]
cmp dword [esp + 0x84], 1
je 0x4848ab
mov eax, 1
jmp 0x4848b1
cmp byte [eax], 0x5f
setne al
test al, al
je 0x4848e8
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x68]
mov ecx, dword [esp + 0xb8]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.00483f40
mov eax, dword [esp + 0xb8]
jmp 0x484807
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
call fcn.004839f0
mov eax, dword [esp + 0xb8]
mov ecx, dword [eax + 0x14]
add ecx, dword [esp + 0xc]
mov dword [eax + 0x14], ecx
jmp 0x484807
mov dword [esp + 0x5c], edx
mov ecx, dword [esp + 0xbc]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edx
call fcn.0047f040
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xb8]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
call fcn.00483f40
mov eax, dword [esp + 0x5c]
lea edx, [eax + 1]
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0x40]
mov ebp, dword [esp + 0xc4]
cmp edx, ecx
jl 0x48491a
jmp 0x4847a3
mov eax, ebp
mov ecx, ebx
call fcn.00464640
mov ecx, ebx
mov edx, esi
call fcn.00464620
call fcn.00464640
call fcn.00464620
mov dword [esp + 0x64], ecx
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
mov edx, dword [esp + 0xc0]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xc4]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call fcn.0047f040
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xb8]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
call fcn.00483f40
mov eax, dword [esp + 0x64]
lea ecx, [eax + 1]
mov eax, dword [esp + 0x44]
cmp ecx, eax
jl 0x48499e
jmp 0x4847a3
call fcn.00463190
jmp fcn.00483f40