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

Disassembly:
push ecx
push esi
push edi
mov edi, ecx
mov ecx, dword [edi + 0x80]
mov ecx, dword [ecx + 0x7d4]
call fcn.00407000
inc dword [edi + 0x280]
cmp dword [edi + 0x2a4], 0
je 0x496044
inc dword [edi + 0x2a0]
push 3
call fcn.004f5780
add esp, 4
test eax, eax
jne 0x495fdb
mov eax, dword [edi + 0x298]
neg eax
mov dword [edi + 0x298], eax
push 9
push 0
push dword [edi + 0x298]
push dword [edi + 0x2a0]
push dword [edi + 0x2a4]
push 0
call fcn.0040db70
push 9
push 0
push dword [edi + 0x29c]
mov dword [edi + 0x28], eax
push dword [edi + 0x2a0]
push dword [edi + 0x2a4]
push 0
call fcn.0040db70
mov dword [edi + 0x2c], eax
add esp, 0x30
mov eax, dword [edi + 0x2a0]
cmp eax, dword [edi + 0x2a4]
jne 0x496044
mov dword [edi + 0x28], 0
mov dword [edi + 0x2c], 0
mov dword [edi + 0x2a4], 0
mov ecx, dword [edi + 0x148]
mov eax, dword [ecx + 0x3c]
cmp eax, 0xffffffff
je 0x49605f
mov edx, dword [ecx + 0x40]
cmp edx, eax
jge 0x49605f
lea eax, [edx + 1]
mov dword [ecx + 0x40], eax
mov eax, dword [edi + 0x2e8]
inc eax
mov dword [edi + 0x2e8], eax
cmp eax, 0xbb8
jne 0x4960b1
mov edx, dword [edi + 0x2ec]
mov esi, dword [edi + 0x2f0]
mov dword [edi + 0x2e8], 0
lea ecx, [edx + edx*4]
add ecx, ecx
lea eax, [ecx + 0xa]
cmp esi, eax
jge 0x4960b1
lea edx, [edx + edx*4]
add edx, 0xa
lea eax, [esi + 1]
add edx, edx
cmp eax, ecx
jle 0x4960ab
cmp eax, edx
cmovge eax, edx
mov ecx, eax
mov dword [edi + 0x2f0], ecx
lea eax, [esp + 8]
mov dword [esp + 8], 0
push eax
mov ecx, edi
call fcn.00491cf0
test al, al
je 0x4960e9
nop dword [eax]
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
call dword [eax + 0xc]
lea eax, [esp + 8]
mov ecx, edi
push eax
call fcn.00491cf0
test al, al
jne 0x4960d0
xor esi, esi
nop dword [eax + eax]
imul eax, dword [edi + 0xa4], 0x108
mov ecx, dword [edi + 0xa0]
add eax, ecx
test esi, esi
jne 0x49610a
mov esi, ecx
jmp 0x496110
add esi, 0x108
cmp esi, eax
jae 0x49612a
test dword [esi + 0x104], 0xffff0000
jne 0x49614a
add esi, 0x108
cmp esi, eax
jb 0x496114
xor esi, esi
nop dword [eax]
imul eax, dword [edi + 0xdc], 0xa4
mov ecx, dword [edi + 0xd8]
add eax, ecx
test esi, esi
jne 0x496159
mov esi, ecx
jmp 0x49615f
cmp byte [esi + 0x2f], 0
jne 0x496102
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xc]
jmp 0x4960f0
add esi, 0xa4
cmp esi, eax
jae 0x496179
test dword [esi + 0xa0], 0xffff0000
jne 0x49619a
add esi, 0xa4
cmp esi, eax
jb 0x496163
xor esi, esi
nop dword [eax + eax]
imul eax, dword [edi + 0xf8], 0x88
mov ecx, dword [edi + 0xf4]
add eax, ecx
test esi, esi
jne 0x4961a9
mov esi, ecx
jmp 0x4961af
cmp byte [esi + 0x24], 0
jne 0x496142
mov ecx, esi
call fcn.0049d2f0
jmp 0x496130
add esi, 0x88
cmp esi, eax
jae 0x4961c9
test dword [esi + 0x84], 0xffff0000
jne 0x4961ea
add esi, 0x88
cmp esi, eax
jb 0x4961b3
xor esi, esi
nop dword [eax + eax]
imul eax, dword [edi + 0x114], 0x94
mov ecx, dword [edi + 0x110]
add eax, ecx
test esi, esi
jne 0x4961f9
mov esi, ecx
jmp 0x4961ff
cmp byte [esi + 0x1c], 0
jne 0x496192
mov ecx, esi
call fcn.004a1b30
jmp 0x496180
add esi, 0x94
cmp esi, eax
jae 0x496219
test dword [esi + 0x90], 0xffff0000
jne 0x49623a
add esi, 0x94
cmp esi, eax
jb 0x496203
xor esi, esi
nop dword [eax + eax]
imul eax, dword [edi + 0xc0], 0xb0
mov ecx, dword [edi + 0xbc]
add eax, ecx
test esi, esi
jne 0x496249
mov esi, ecx
jmp 0x49624f
cmp byte [esi + 0x2f], 0
jne 0x4961e2
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xc]
jmp 0x4961d0
add esi, 0xb0
cmp esi, eax
jae 0x496269
test dword [esi + 0xac], 0xffff0000
jne 0x49628a
add esi, 0xb0
cmp esi, eax
jb 0x496253
xor esi, esi
nop dword [eax + eax]
imul eax, dword [edi + 0x130], 0xdc
mov ecx, dword [edi + 0x12c]
add eax, ecx
test esi, esi
jne 0x496299
mov esi, ecx
jmp 0x49629f
cmp byte [esi + 0x2f], 0
jne 0x496232
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xc]
jmp 0x496220
add esi, 0xdc
cmp esi, eax
jae 0x4962ca
nop dword [eax]
nop word [eax + eax]
test dword [esi + 0xd8], 0xffff0000
jne 0x496361
add esi, 0xdc
cmp esi, eax
jb 0x4962b0
mov ecx, dword [edi + 0x14c]
call fcn.004c9610
mov eax, dword [edi + 0x160]
cmp eax, 5
je 0x4963db
cmp eax, 6
je 0x4963db
cmp dword [edi + 0x164], 0
je 0x4963db
mov eax, dword [edi + 0x2e0]
dec eax
mov dword [edi + 0x2e0], eax
test eax, eax
jg 0x4963db
mov eax, dword [edi + 0x2e4]
mov esi, 0xe10
imul eax, eax
push 0x1f4
lea eax, [eax*2 + 0x1a9]
cmp eax, esi
cmovl esi, eax
call fcn.004f5780
add eax, esi
add esp, 4
mov dword [edi + 0x2e0], eax
movzx ecx, word [edi + 0x2be]
cmp cx, 3
jne 0x496377
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x5da760]
cvttsd2si eax, xmm0
jmp 0x49637e
cmp byte [esi + 0x2f], 0
jne 0x496282
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xc]
jmp 0x496270
jle 0x496384
cdq
sub eax, edx
sar eax, 1
mov dword [edi + 0x2e0], eax
push 0x2bc
call fcn.004f5780
add esp, 4
add eax, 0x32
mov ecx, edi
push 0
push 0
push 0xffffff6a
push eax
call fcn.004931f0
push ecx
mov esi, eax
mov dword [esp], 0x3f000000
call fcn.004f57a0
fadd dword [0x5d9838]
push 0x15e
fstp dword [esi + 0x40]
call fcn.004f5780
add eax, 0x190
add esp, 8
add dword [esi + 0x68], eax
mov dword [esi + 0x50], eax
inc dword [edi + 0x2e4]
mov ecx, edi
call fcn.00496400
mov ecx, edi
call fcn.00494870
mov ecx, edi
pop edi
pop esi
add esp, 4
jmp fcn.00494160