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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x84
push ebx
mov ebx, dword [esp + 0x10]
mov ecx, 0x4d5c10d
push esi
push edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x14], edi
mov esi, dword [esp + 0x10]
mov eax, 0xe65d824
mov edx, 0xe388671
cmp ecx, 0x219575d5
jg 0x404bb6
je 0x404ba7
cmp ecx, eax
jg 0x404917
je 0x404908
cmp ecx, 0x50066ca
jg 0x4047cc
je 0x4047b9
cmp ecx, 0x12f3b31
je 0x4047a6
cmp ecx, 0x306e6a0
je 0x404767
cmp ecx, 0x4d5c10d
je 0x40475d
cmp ecx, 0x4d90a7d
jne 0x404e2b
lea ecx, [esp + 0x3c]
call fcn.00407749
test eax, eax
je 0x404753
xorps xmm0, xmm0
mov esi, 0x12f3b31
movlpd qword [esp + 0x18], xmm0
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], edi
mov ecx, 0x308a5069
jmp 0x4046c4
mov ecx, 0x2aaead27
jmp 0x4046ce
call fcn.00405992
test eax, eax
mov eax, dword [0x40a01c]
je 0x404790
cmp dword [eax + 0xc], 0
mov ecx, 0x2427ac36
mov edx, 0xe388671
cmovne ecx, edx
mov eax, 0xe65d824
jmp 0x4046ce
cmp dword [eax + 0xc], 0
mov ecx, 0x1a8b4d1c
mov eax, 0xe65d824
cmovne ecx, eax
jmp 0x4046c9
lea ecx, [esp + 0x7c]
call fcn.0040441d
mov ecx, 0xc6c7070
jmp 0x4046c4
mov ecx, dword [esp + 0x24]
call fcn.00402e6b
mov ecx, 0x35c266ab
jmp 0x4046c4
cmp ecx, 0x93282da
je 0x4048c3
cmp ecx, 0xb662ce7
je 0x404820
cmp ecx, 0xc6c7070
je 0x40480a
cmp ecx, edx
jne 0x404e2b
call fcn.004064d3
neg eax
sbb ecx, ecx
and ecx, 0x12245c46
add ecx, 0x2427ac36
jmp 0x4046c4
lea ecx, [esp + 0x84]
call fcn.0040768e
mov ecx, 0x116943d0
jmp 0x4046c4
mov eax, ebx
or eax, edi
jne 0x40482d
mov ecx, esi
jmp 0x404e26
call fcn.004040df
mov ecx, eax
call fcn.004040b4
cmp eax, ecx
jbe 0x404874
push 0xb4
mov edx, 0xc54fc94a
mov ecx, 0xcd97083a
call fcn.00402e0d
pop ecx
call eax
mov edi, eax
call fcn.004040df
mov ecx, eax
call fcn.004040b4
mov esi, eax
xor edx, edx
sub esi, ecx
mov eax, edi
div esi
mov edi, dword [esp + 0x14]
mov esi, edx
jmp 0x404876
xor esi, esi
call fcn.004040df
lea ecx, [esi + eax]
call fcn.00406c18
test eax, eax
je 0x404891
mov ecx, 0x380a5c09
jmp 0x4046c0
push 0x4e
mov edx, 0xa4aae9cc
mov ecx, 0xcd97083a
call fcn.00402e0d
pop ecx
call eax
cmp edx, edi
jb 0x4048ba
ja 0x4048af
cmp eax, ebx
jb 0x4048ba
mov esi, dword [esp + 0x10]
mov ecx, esi
jmp 0x404e21
mov esi, dword [esp + 0x10]
jmp 0x404e1c
lea ecx, [esp + 0x48]
call fcn.0040432d
test eax, eax
je 0x4048fe
lea eax, [esp + 0x48]
mov edx, 0x39117dc7
push eax
push 0x106
mov ecx, 0xcd97083a
mov dword [esp + 0x6c], eax
call fcn.00402e0d
pop ecx
call eax
mov dword [esp + 0x68], eax
mov ecx, 0x284f4d63
jmp 0x4046c4
mov ecx, 0x380a5c09
jmp 0x4046c4
call fcn.00406064
mov ecx, 0x1a8b4d1c
jmp 0x4046c4
cmp ecx, 0x185c28b6
jg 0x404ac3
je 0x404ab4
cmp ecx, 0xfc19667
je 0x404aa1
cmp ecx, 0x116943d0
je 0x404a7f
cmp ecx, 0x135087b9
je 0x40496c
cmp ecx, 0x179c2fdf
jne 0x404e2b
call fcn.00405e96
test eax, eax
je 0x404e45
mov ecx, 0x2bf35ee2
jmp 0x4046c4
lea eax, [esp + 0x2c]
push eax
call fcn.004042e7
lea edx, [esp + 0x28]
mov ecx, eax
call fcn.0040118b
pop ecx
test eax, eax
je 0x404a00
mov eax, 0x12f3b31
mov dword [esp + 0x10], eax
call fcn.004041a5
mov ecx, eax
call fcn.004041c5
cmp ecx, eax
jbe 0x4049d0
push 0xb4
mov edx, 0xc54fc94a
mov ecx, 0xcd97083a
call fcn.00402e0d
pop ecx
call eax
mov ecx, eax
call fcn.004041a5
mov esi, eax
call fcn.004041c5
sub esi, eax
xor edx, edx
mov eax, ecx
div esi
mov esi, edx
jmp 0x4049d2
xor esi, esi
push 0x4e
mov edx, 0xa4aae9cc
mov ecx, 0xcd97083a
call fcn.00402e0d
pop ecx
call eax
mov ebx, eax
mov edi, edx
call fcn.004041c5
add eax, esi
mov ecx, 0x27f45aa2
add ebx, eax
adc edi, 0
jmp 0x4046bc
call fcn.00401172
mov eax, 0x12f3b31
mov dword [esp + 0x10], eax
call fcn.0040412d
mov esi, eax
call fcn.00404166
cmp esi, eax
jbe 0x404a4f
push 0xb4
mov edx, 0xc54fc94a
mov ecx, 0xcd97083a
call fcn.00402e0d
pop ecx
call eax
mov esi, eax
call fcn.0040412d
mov edi, eax
call fcn.00404166
sub edi, eax
xor edx, edx
mov eax, esi
div edi
mov esi, edx
jmp 0x404a51
xor esi, esi
push 0x4e
mov edx, 0xa4aae9cc
mov ecx, 0xcd97083a
call fcn.00402e0d
pop ecx
call eax
mov ebx, eax
mov edi, edx
call fcn.00404166
add eax, esi
mov ecx, 0x50066ca
add ebx, eax
adc edi, 0
jmp 0x4046bc
lea edx, [esp + 0x24]
lea ecx, [esp + 0x64]
call fcn.00405061
neg eax
sbb ecx, ecx
and ecx, 0xdd8e210e
add ecx, 0x35c266ab
jmp 0x4046c4
call fcn.004042ba
mov dword [esp + 0x78], eax
mov ecx, 0x12f3b31
jmp 0x4046c4
call fcn.00405b19
mov ecx, 0x364c087c
jmp 0x4046c4
cmp ecx, 0x1a8b4d1c
je 0x404b98
cmp ecx, 0x1d067781
je 0x404b85
cmp ecx, 0x20af0373
je 0x404b09
cmp ecx, 0x2122226d
jne 0x404e2b
call fcn.00406346
neg eax
sbb ecx, ecx
and ecx, 0x1e8e8f35
add ecx, 0x306e6a0
jmp 0x4046c4
mov eax, 0x93282da
mov dword [esp + 0x10], eax
call fcn.00404206
mov ecx, eax
call fcn.004041e5
cmp eax, ecx
jbe 0x404b55
push 0xb4
mov edx, 0xc54fc94a
mov ecx, 0xcd97083a
call fcn.00402e0d
pop ecx
call eax
mov edi, eax
call fcn.00404206
mov ecx, eax
call fcn.004041e5
mov esi, eax
xor edx, edx
sub esi, ecx
mov eax, edi
div esi
mov esi, edx
jmp 0x404b57
xor esi, esi
push 0x4e
mov edx, 0xa4aae9cc
mov ecx, 0xcd97083a
call fcn.00402e0d
pop ecx
call eax
mov ebx, eax
mov edi, edx
call fcn.00404206
add eax, esi
mov ecx, 0xb662ce7
add ebx, eax
adc edi, 0
jmp 0x4046bc
call fcn.004031f6
mov dword [esp + 0x70], eax
mov ecx, 0x39692635
jmp 0x4046c4
call fcn.004061db
mov ecx, 0x219575d5
jmp 0x4046c4
call fcn.004065ad
mov ecx, 0x179c2fdf
jmp 0x4046c4
cmp ecx, 0x30f050b2
jg 0x404d43
je 0x404d2c
cmp ecx, 0x2aaead27
jg 0x404cbc
je 0x404ca5
cmp ecx, 0x2427ac36
je 0x404c71
cmp ecx, 0x27f45aa2
je 0x404c2e
cmp ecx, 0x284f4d63
je 0x404c15
cmp ecx, 0x29131eed
jne 0x404e2b
call fcn.004039e9
mov dword [esp + 0x6c], eax
mov ecx, 0x1d067781
jmp 0x4046c4
mov eax, dword [0x40a01c]
mov ecx, 0x29131eed
mov eax, dword [eax + 0x4c]
mov dword [esp + 0x8c], eax
jmp 0x404786
lea edx, [esp + 0x3c]
lea ecx, [esp + 0x2c]
call fcn.004051d8
test eax, eax
je 0x404753
xor ecx, ecx
call fcn.004075be
call fcn.00405afd
cmp dword [esp + 0x44], 0
mov ecx, 0x4d90a7d
je 0x4046c4
cmp dword [esp + 0x44], 7
mov eax, 0x30bbb050
cmove ecx, eax
jmp 0x4046c4
call fcn.00406b74
mov esi, 0x3a9212bf
mov edx, 0xa4aae9cc
push 0x4e
mov ecx, 0xcd97083a
mov dword [esp + 0x14], esi
call fcn.00402e0d
pop ecx
call eax
mov edi, edx
mov ebx, eax
mov dword [esp + 0x14], edi
mov ecx, 0xb662ce7
jmp 0x4046c4
call fcn.00404f8c
test eax, eax
je 0x404e45
mov ecx, 0x3400294e
jmp 0x4046c4
cmp ecx, 0x2bf35ee2
je 0x404d0c
cmp ecx, 0x2e138822
je 0x404cfd
cmp ecx, 0x308a5069
je 0x404cea
cmp ecx, 0x30bbb050
jne 0x404e2b
call fcn.00405b3b
jmp 0x404e45
mov ecx, dword [esp + 0x2c]
call fcn.00402e6b
mov ecx, 0x50066ca
jmp 0x4046c4
call fcn.00405cc2
mov ecx, 0x185c28b6
jmp 0x4046c4
call fcn.004057e4
mov eax, dword [0x40a01c]
mov ecx, 0x185c28b6
cmp dword [eax + 0xc], 0
mov eax, 0x2e138822
cmovne ecx, eax
jmp 0x4046c4
call fcn.004066fd
test eax, eax
je 0x404e45
mov ecx, 0x2122226d
jmp 0x4046c4
cmp ecx, 0x380a5c09
jg 0x404da8
je 0x404e40
cmp ecx, 0x3400294e
je 0x404d99
cmp ecx, 0x35c266ab
je 0x404d83
cmp ecx, 0x364c087c
je 0x404e39
cmp ecx, 0x366d955c
jne 0x404e2b
mov ecx, 0x20af0373
jmp 0x4046ce
mov ecx, dword [esp + 0x84]
call fcn.00402e6b
mov ecx, 0x38d2bff5
jmp 0x4046c4
call fcn.00404e7f
mov ecx, 0x30f050b2
jmp 0x4046c4
cmp ecx, 0x38d2bff5
je 0x404e13
cmp ecx, 0x39692635
je 0x404e00
cmp ecx, 0x3a9212bf
je 0x404df6
cmp ecx, 0x3b34065f
jne 0x404e2b
lea edx, [esp + 0x38]
mov ecx, 0x409280
call fcn.0040259a
mov esi, eax
lea ecx, [esp + 0x34]
mov dword [esp + 0x34], esi
call fcn.00401626
mov ecx, esi
call fcn.00402e6b
mov ecx, 0x366d955c
jmp 0x4046c0
mov ecx, 0x3b34065f
jmp 0x4046ce
call fcn.0040427e
mov dword [esp + 0x74], eax
mov ecx, 0xfc19667
jmp 0x4046c4
mov ecx, dword [esp + 0x7c]
call fcn.00402e6b
mov ecx, 0xb662ce7
mov edx, 0xe388671
mov eax, 0xe65d824
cmp ecx, 0x74c0b1f
jne 0x4046ce
jmp 0x404e45
call fcn.00405fa5
jmp 0x404e45
call fcn.00407721
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret