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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x10]
cmp eax, dword [ecx + 8]
jbe 0x498efe
sub esp, 0x90
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x9c]
mov dword [esp + 8], edx
call fcn.00496930
mov eax, dword [esp + 0xc]
mov dword [esp + 0x8c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x78], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0x34], edx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x7c], ebx
mov ebp, dword [esp + 0xa0]
mov dword [esp], ebp
mov esi, dword [esp + 0xa4]
mov dword [esp + 4], esi
mov edi, dword [esp + 0xa8]
mov dword [esp + 8], edi
call fcn.00496930
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x8c]
cmp dword [esp + 0xc], ecx
jne 0x49835b
mov dword [esp], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00404100
movzx eax, byte [esp + 0xc]
test al, al
jne 0x49836d
mov dword [esp + 0xac], 0xffffffff
add esp, 0x90
ret
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x9c]
mov dword [esp + 8], edx
call fcn.00495b70
mov eax, dword [esp + 0xc]
cmp eax, 0x11
ja 0x49876f
cmp eax, 0xc
ja 0x4985fc
cmp eax, 1
je 0x498564
lea ecx, [eax - 2]
cmp ecx, 4
jbe 0x498499
cmp eax, 7
jb 0x498c63
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
call fcn.00496b00
mov eax, dword [esp + 0xc]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x48], ecx
mov edx, dword [esp + 0xa0]
mov dword [esp], edx
mov edx, dword [esp + 0xa4]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xa8]
mov dword [esp + 8], edx
call fcn.00496b00
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x48]
cmp ecx, eax
sete dl
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x38]
cmp ebp, ebx
xchg esi, ebx
setb bl
xchg esi, ebx
cmp ecx, eax
xchg edi, ebx
setb bl
xchg edi, ebx
and esi, edx
or edi, esi
xchg edi, eax
test al, al
xchg edi, eax
jne 0x498487
cmp ebp, ebx
seta bl
cmp ecx, eax
seta al
and ebx, edx
or eax, ebx
test al, al
je 0x498475
mov dword [esp + 0xac], 1
add esp, 0x90
ret
mov dword [esp + 0xac], 0
add esp, 0x90
ret
mov dword [esp + 0xac], 0xffffffff
add esp, 0x90
ret
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
call fcn.004956d0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x44], ecx
mov edx, dword [esp + 0xa0]
mov dword [esp], edx
mov edx, dword [esp + 0xa4]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xa8]
mov dword [esp + 8], edx
call fcn.004956d0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x44]
cmp ecx, eax
sete dl
setl bl
mov ebp, dword [esp + 0xc]
mov esi, dword [esp + 0x3c]
cmp esi, ebp
xchg edi, ebx
setb bl
xchg edi, ebx
and edi, edx
or ebx, edi
test bl, bl
jne 0x498552
cmp esi, ebp
seta bl
cmp ecx, eax
setg al
and ebx, edx
or eax, ebx
test al, al
je 0x498540
mov dword [esp + 0xac], 1
add esp, 0x90
ret
mov dword [esp + 0xac], 0
add esp, 0x90
ret
mov dword [esp + 0xac], 0xffffffff
add esp, 0x90
ret
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
call fcn.00493ef0
movzx eax, byte [esp + 0xc]
mov byte [esp + 0x23], al
mov ecx, dword [esp + 0xa0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 8], ecx
call fcn.00493ef0
movzx eax, byte [esp + 0x23]
cmp byte [esp + 0xc], al
je 0x4985ea
test al, al
je 0x4985d8
mov dword [esp + 0xac], 1
add esp, 0x90
ret
mov dword [esp + 0xac], 0xffffffff
add esp, 0x90
ret
mov dword [esp + 0xac], 0
add esp, 0x90
ret
cmp eax, 0xe
jbe 0x4986eb
lea ecx, [eax - 0xf]
cmp ecx, 1
jbe 0x49861d
cmp eax, 0x11
jne 0x498c63
xor eax, eax
jmp 0x498ded
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
call fcn.00494f70
movsd xmm0, qword [esp + 0xc]
movsd qword [esp + 0x5c], xmm0
movsd xmm1, qword [esp + 0x14]
movsd qword [esp + 0x64], xmm1
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 8], eax
call fcn.00494f70
movsd xmm0, qword [esp + 0xc]
movsd xmm1, qword [esp + 0x14]
movsd qword [esp + 0x54], xmm1
movsd xmm2, qword [esp + 0x5c]
movsd qword [esp], xmm2
movsd qword [esp + 8], xmm0
call fcn.00498ff0
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4986bd
mov dword [esp + 0xac], eax
add esp, 0x90
ret
movsd xmm0, qword [esp + 0x64]
movsd qword [esp], xmm0
movsd xmm0, qword [esp + 0x54]
movsd qword [esp + 8], xmm0
call fcn.00498ff0
mov eax, dword [esp + 0x10]
mov dword [esp + 0xac], eax
add esp, 0x90
ret
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
call fcn.004953a0
movsd xmm0, qword [esp + 0xc]
movsd qword [esp + 0x6c], xmm0
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 8], eax
call fcn.004953a0
movsd xmm0, qword [esp + 0xc]
movsd xmm1, qword [esp + 0x6c]
movsd qword [esp], xmm1
movsd qword [esp + 8], xmm0
call fcn.00498ff0
mov eax, dword [esp + 0x10]
mov dword [esp + 0xac], eax
add esp, 0x90
ret
cmp eax, 0x16
ja 0x498ab6
cmp eax, 0x12
je 0x4989bb
cmp eax, 0x14
je 0x498794
cmp eax, 0x16
je 0x498ad4
jmp 0x498c63
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x9c]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0xa4]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0xa8]
mov dword [esp + 0x14], esi
call fcn.00498f10
movzx eax, byte [esp + 0x1c]
mov ecx, dword [esp + 0x18]
test al, al
jne 0x4989ad
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x9c]
mov dword [esp + 8], edx
call fcn.00495040
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00496930
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
test eax, eax
je 0x49883b
mov eax, dword [eax + 4]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00496c90
mov eax, dword [esp + 8]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x84], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x50], edx
mov ebx, dword [esp + 0xa0]
mov dword [esp], ebx
mov ebp, dword [esp + 0xa4]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0xa8]
mov dword [esp + 8], esi
call fcn.00495040
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00496930
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
test eax, eax
je 0x4988b5
mov eax, dword [eax + 4]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00496c90
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x88]
mov dword [esp], ebx
mov ebx, dword [esp + 0x84]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.004982a0
mov eax, dword [esp + 0x18]
test eax, eax
je 0x498911
mov dword [esp + 0xac], eax
add esp, 0x90
ret
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
call fcn.00495040
mov eax, dword [esp + 0xc]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x84], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x50], edx
mov ebx, dword [esp + 0xa0]
mov dword [esp], ebx
mov ebx, dword [esp + 0xa4]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0xa8]
mov dword [esp + 8], ebx
call fcn.00495040
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 8], eax
call fcn.004982a0
mov eax, dword [esp + 0x18]
mov dword [esp + 0xac], eax
add esp, 0x90
ret
mov dword [esp + 0xac], ecx
add esp, 0x90
ret
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x9c]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0xa4]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0xa8]
mov dword [esp + 0x14], esi
call fcn.00498f10
movzx eax, byte [esp + 0x1c]
mov ecx, dword [esp + 0x18]
test al, al
jne 0x498aa8
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
call fcn.00496360
mov eax, dword [esp + 0xc]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0xa0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 8], ecx
call fcn.00496360
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x30]
cmp eax, ecx
ja 0x498a96
jae 0x498a84
mov dword [esp + 0xac], 1
add esp, 0x90
ret
mov dword [esp + 0xac], 0
add esp, 0x90
ret
mov dword [esp + 0xac], 0xffffffff
add esp, 0x90
ret
mov dword [esp + 0xac], ecx
add esp, 0x90
ret
cmp eax, 0x18
je 0x498b6a
cmp eax, 0x19
jne 0x498acb
xor eax, eax
jmp 0x498cd5
cmp eax, 0x1a
jne 0x498c63
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
call fcn.00496360
mov eax, dword [esp + 0xc]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0xa0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 8], ecx
call fcn.00496360
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x4c]
cmp eax, ecx
ja 0x498b58
jae 0x498b46
mov dword [esp + 0xac], 1
add esp, 0x90
ret
mov dword [esp + 0xac], 0
add esp, 0x90
ret
mov dword [esp + 0xac], 0xffffffff
add esp, 0x90
ret
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
call fcn.004967e0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x80], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x40], ecx
mov edx, dword [esp + 0xa0]
mov dword [esp], edx
mov edx, dword [esp + 0xa4]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xa8]
mov dword [esp + 8], edx
call fcn.004967e0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x2c], ecx
mov edx, dword [esp + 0x80]
mov dword [esp], edx
mov ebx, dword [esp + 0x40]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call fcn.00403270
mov eax, dword [esp + 0x10]
test eax, eax
jl 0x498c51
mov eax, dword [esp + 0x80]
mov dword [esp], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
call fcn.00403270
mov eax, dword [esp + 0x10]
test eax, eax
jle 0x498c3f
mov dword [esp + 0xac], 1
add esp, 0x90
ret
mov dword [esp + 0xac], 0
add esp, 0x90
ret
mov dword [esp + 0xac], 0xffffffff
add esp, 0x90
ret
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x80]
mov ecx, dword [esp + 0x7c]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0x50873f]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x15
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.00450870
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409f30
mov eax, dword [esp + 8]
lea ecx, [0x4ec7e0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00438510
mov ecx, dword [esp + 0x28]
lea eax, [ecx + 1]
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
call fcn.00496320
mov eax, dword [esp + 0x28]
cmp dword [esp + 0xc], eax
jle 0x498dd4
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.00495220
mov eax, dword [esp + 0x10]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x84], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x50], edx
mov ebx, dword [esp + 0xa0]
mov dword [esp], ebx
mov ebp, dword [esp + 0xa4]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0xa8]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x28]
mov dword [esp + 0xc], edi
call fcn.00495220
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x88]
mov dword [esp], ebx
mov ebx, dword [esp + 0x84]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.004982a0
mov eax, dword [esp + 0x18]
test eax, eax
je 0x498cce
mov dword [esp + 0xac], eax
add esp, 0x90
ret
mov dword [esp + 0xac], 0
add esp, 0x90
ret
mov ecx, dword [esp + 0x24]
lea eax, [ecx + 1]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
call fcn.00495bb0
mov eax, dword [esp + 0x24]
cmp dword [esp + 0xc], eax
jle 0x498eec
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.00495460
mov eax, dword [esp + 0x10]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x84], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x50], edx
mov ebx, dword [esp + 0xa0]
mov dword [esp], ebx
mov ebp, dword [esp + 0xa4]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0xa8]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x24]
mov dword [esp + 0xc], edi
call fcn.00495460
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x88]
mov dword [esp], ebx
mov ebx, dword [esp + 0x84]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.004982a0
mov eax, dword [esp + 0x18]
test eax, eax
je 0x498de6
mov dword [esp + 0xac], eax
add esp, 0x90
ret
mov dword [esp + 0xac], 0
add esp, 0x90
ret
call fcn.00464070
jmp fcn.004982a0