Function at 0x404741
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, 0x218fe762
push esi
push edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x14], edi
mov esi, dword [esp + 0x10]
mov eax, 0x1faaa966
mov edx, 0x2544012b
cmp ecx, 0x1679036b
jg 0x404b9f
je 0x404b95
cmp ecx, 0xac23f6f
jg 0x404932
je 0x4048f2
cmp ecx, 0x655ac90
jg 0x404826
je 0x40480f
cmp ecx, 0x82a57e
je 0x4047fc
cmp ecx, 0x22888e1
je 0x4047e2
cmp ecx, 0x56dd346
je 0x4047cf
cmp ecx, 0x5945060
jne 0x404ecf
call fcn.00405bfd
jmp 0x404ee9
lea ecx, [esp + 0x84]
call fcn.0040774c
mov ecx, 0x35c2163b
jmp 0x404765
call fcn.004063ed
neg eax
sbb ecx, ecx
and ecx, 0x2b318c42
add ecx, 0xac23f6f
jmp 0x404765
lea ecx, [esp + 0x7c]
call fcn.004044cc
mov ecx, 0x56dd346
jmp 0x404765
call fcn.0040502e
test eax, eax
je 0x404ee9
mov ecx, 0x2cccbe8a
jmp 0x404765
cmp ecx, 0x78e69be
je 0x404875
cmp ecx, 0x8334990
je 0x404866
cmp ecx, 0x84d6563
je 0x404edd
cmp ecx, 0x999331f
jne 0x404ecf
call fcn.0040438b
mov dword [esp + 0x78], eax
mov ecx, 0x82a57e
mov eax, 0x1faaa966
jmp 0x40476f
call fcn.00406121
mov ecx, 0x133e9a62
jmp 0x404765
mov eax, 0x3b99489c
mov dword [esp + 0x10], eax
call fcn.004042b4
mov ecx, eax
call fcn.004042f7
cmp ecx, eax
jbe 0x4048bf
push 0x139
mov edx, 0xaaa49e7c
mov ecx, 0xe716a6f8
call fcn.00402e7c
pop ecx
call eax
mov esi, eax
call fcn.004042b4
mov ecx, eax
call fcn.004042f7
sub ecx, eax
xor edx, edx
mov eax, esi
div ecx
mov esi, edx
jmp 0x4048c1
xor esi, esi
push 0x1a7
mov edx, 0xcb41befa
mov ecx, 0xe716a6f8
call fcn.00402e7c
pop ecx
call eax
mov ebx, eax
mov edi, edx
call fcn.004042f7
add eax, esi
mov ecx, 0x2d665cd4
add ebx, eax
adc edi, 0
jmp 0x40475d
call fcn.00405a52
test eax, eax
mov eax, dword [0x40a604]
je 0x404919
cmp dword [eax + 0x254], 0
mov ecx, 0xdaaa85d
mov edx, 0x2544012b
cmovne ecx, edx
jmp 0x40485c
cmp dword [eax + 0x254], 0
mov ecx, 0x133e9a62
mov eax, 0x8334990
cmovne ecx, eax
jmp 0x404765
cmp ecx, 0x1028102d
jg 0x404a11
je 0x4049fa
cmp ecx, 0xdaaa85d
je 0x4049c3
cmp ecx, 0xe38fc39
je 0x404995
cmp ecx, 0xef5ed17
je 0x40497f
cmp ecx, 0xf7905cf
jne 0x404ecf
call fcn.00405f65
test eax, eax
je 0x404ee9
mov ecx, 0x157313bb
jmp 0x404765
mov ecx, dword [esp + 0x84]
call fcn.00402edd
mov ecx, 0x2e9a8d0a
jmp 0x404765
lea edx, [esp + 0x28]
mov ecx, 0x4092a0
call fcn.004025b2
mov esi, eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], esi
call fcn.00401617
mov ecx, esi
call fcn.00402edd
mov ecx, 0x1679036b
jmp 0x404761
call fcn.00406c32
mov esi, 0x1b7bc18d
mov edx, 0xcb41befa
push 0x1a7
mov ecx, 0xe716a6f8
mov dword [esp + 0x14], esi
call fcn.00402e7c
pop ecx
call eax
mov edi, edx
mov ebx, eax
mov dword [esp + 0x14], edi
mov ecx, 0x2d665cd4
jmp 0x404765
call fcn.0040679b
test eax, eax
je 0x404ee9
mov ecx, 0x22888e1
jmp 0x404765
cmp ecx, 0x1264235e
je 0x404a7a
cmp ecx, 0x133e9a62
je 0x404a6b
cmp ecx, 0x14710bd3
je 0x404a58
cmp ecx, 0x157313bb
jne 0x404ecf
call fcn.0040589c
mov eax, dword [0x40a604]
mov ecx, 0x292ff6fc
cmp dword [eax + 0x254], 0
mov eax, 0x1faaa966
cmovne ecx, eax
jmp 0x40476a
mov ecx, dword [esp + 0x2c]
call fcn.00402edd
mov ecx, 0xef5ed17
jmp 0x404765
call fcn.00406289
mov ecx, 0x35f3cbb1
jmp 0x404765
lea eax, [esp + 0x34]
push eax
call fcn.004043b3
lea edx, [esp + 0x30]
mov ecx, eax
call fcn.00401192
pop ecx
test eax, eax
je 0x404b11
mov eax, 0x82a57e
mov dword [esp + 0x10], eax
call fcn.00404230
mov esi, eax
call fcn.00404272
cmp esi, eax
jbe 0x404ade
push 0x139
mov edx, 0xaaa49e7c
mov ecx, 0xe716a6f8
call fcn.00402e7c
pop ecx
call eax
mov esi, eax
call fcn.00404230
mov edi, eax
call fcn.00404272
sub edi, eax
xor edx, edx
mov eax, esi
div edi
mov esi, edx
jmp 0x404ae0
xor esi, esi
push 0x1a7
mov edx, 0xcb41befa
mov ecx, 0xe716a6f8
call fcn.00402e7c
pop ecx
call eax
mov ebx, eax
mov edi, edx
call fcn.00404272
add eax, esi
mov ecx, 0x37f5bcdc
add ebx, eax
adc edi, 0
jmp 0x40475d
call fcn.00401179
mov eax, 0x82a57e
mov dword [esp + 0x10], eax
call fcn.004041f4
mov ecx, eax
call fcn.004041c9
cmp eax, ecx
jbe 0x404b62
push 0x139
mov edx, 0xaaa49e7c
mov ecx, 0xe716a6f8
call fcn.00402e7c
pop ecx
call eax
mov edx, eax
call fcn.004041f4
mov ecx, eax
call fcn.004041c9
mov esi, eax
mov eax, edx
sub esi, ecx
xor edx, edx
div esi
mov esi, edx
jmp 0x404b64
xor esi, esi
push 0x1a7
mov edx, 0xcb41befa
mov ecx, 0xe716a6f8
call fcn.00402e7c
pop ecx
call eax
mov ebx, eax
mov edi, edx
call fcn.004041f4
add eax, esi
mov ecx, 0x14710bd3
add ebx, eax
adc edi, 0
jmp 0x40475d
mov ecx, 0x78e69be
jmp 0x40476f
cmp ecx, 0x2cccbe8a
jg 0x404cb9
je 0x404caa
cmp ecx, eax
jg 0x404c44
je 0x404c35
cmp ecx, 0x168af390
je 0x404c00
cmp ecx, 0x184241a7
je 0x404ee4
cmp ecx, 0x1b7bc18d
je 0x404bf6
cmp ecx, 0x1cf4a9aa
jne 0x404ecf
mov ecx, dword [esp + 0x34]
call fcn.00402edd
mov ecx, 0x14710bd3
jmp 0x404765
mov ecx, 0xe38fc39
jmp 0x40476f
lea ecx, [esp + 0x3c]
call fcn.00407801
test eax, eax
je 0x404c2b
xorps xmm0, xmm0
mov esi, 0x82a57e
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, 0x1cf4a9aa
jmp 0x404765
call fcn.00405d90
mov ecx, 0x292ff6fc
jmp 0x404765
cmp ecx, 0x218fe762
je 0x404ca0
cmp ecx, edx
je 0x404c86
cmp ecx, 0x28631705
je 0x404c73
cmp ecx, 0x292ff6fc
jne 0x404ecf
call fcn.00405bdb
mov ecx, 0x84d6563
jmp 0x404765
call fcn.0040325f
mov dword [esp + 0x70], eax
mov ecx, 0x3580078a
jmp 0x404765
call fcn.00406575
neg eax
sbb ecx, ecx
and ecx, 0xfaa2bd06
add ecx, 0xdaaa85d
jmp 0x404765
mov ecx, 0x655ac90
jmp 0x40476f
call fcn.00404f28
mov ecx, 0x1028102d
jmp 0x404765
cmp ecx, 0x35c2163b
jg 0x404df4
je 0x404dd2
cmp ecx, 0x2d665cd4
je 0x404d29
cmp ecx, 0x2e9a8d0a
je 0x404d1b
cmp ecx, 0x2ead13f8
je 0x404d02
cmp ecx, 0x3580078a
jne 0x404ecf
call fcn.00404352
mov dword [esp + 0x74], eax
mov ecx, 0x999331f
jmp 0x40485c
mov eax, dword [0x40a604]
mov ecx, 0x377dadc6
mov eax, dword [eax + 8]
mov dword [esp + 0x8c], eax
jmp 0x40485c
mov ecx, dword [esp + 0x7c]
call fcn.00402edd
jmp 0x4049f0
mov eax, ebx
or eax, edi
jne 0x404d36
mov ecx, esi
jmp 0x404eca
call fcn.00404189
mov esi, eax
call fcn.0040415c
cmp eax, esi
jbe 0x404d7b
push 0x139
mov edx, 0xaaa49e7c
mov ecx, 0xe716a6f8
call fcn.00402e7c
pop ecx
call eax
mov edi, eax
call fcn.00404189
mov esi, eax
call fcn.0040415c
mov ecx, eax
xor edx, edx
mov eax, edi
sub ecx, esi
mov edi, dword [esp + 0x14]
div ecx
jmp 0x404d7d
xor edx, edx
call fcn.00404189
lea ecx, [edx + eax]
call fcn.00406cda
test eax, eax
je 0x404d98
mov ecx, 0x184241a7
jmp 0x404761
push 0x1a7
mov edx, 0xcb41befa
mov ecx, 0xe716a6f8
call fcn.00402e7c
pop ecx
call eax
cmp edx, edi
jb 0x404dc4
ja 0x404db9
cmp eax, ebx
jb 0x404dc4
mov esi, dword [esp + 0x10]
mov ecx, esi
jmp 0x404ec5
mov esi, dword [esp + 0x10]
mov ecx, 0x2d665cd4
jmp 0x404ec5
lea edx, [esp + 0x2c]
lea ecx, [esp + 0x64]
call fcn.00405103
neg eax
sbb ecx, ecx
and ecx, 0x36e3647
add ecx, 0xef5ed17
jmp 0x404765
cmp ecx, 0x35f3cbb1
je 0x404ebb
cmp ecx, 0x377dadc6
je 0x404ea8
cmp ecx, 0x37f5bcdc
je 0x404e65
cmp ecx, 0x3b99489c
jne 0x404ecf
lea ecx, [esp + 0x48]
call fcn.004043d9
test eax, eax
je 0x404e5b
lea eax, [esp + 0x48]
mov edx, 0x56fa2af1
push eax
push 0x1dc
mov ecx, 0xe716a6f8
mov dword [esp + 0x6c], eax
call fcn.00402e7c
pop ecx
call eax
mov dword [esp + 0x68], eax
mov ecx, 0x2ead13f8
jmp 0x404765
mov ecx, 0x184241a7
jmp 0x404765
lea edx, [esp + 0x3c]
lea ecx, [esp + 0x34]
call fcn.00405280
test eax, eax
je 0x404c2b
xor ecx, ecx
call fcn.00407676
call fcn.00405bba
cmp dword [esp + 0x44], 0
mov ecx, 0x168af390
je 0x404765
cmp dword [esp + 0x44], 7
mov eax, 0x5945060
cmove ecx, eax
jmp 0x404765
call fcn.00403a81
mov dword [esp + 0x6c], eax
mov ecx, 0x28631705
jmp 0x404765
call fcn.0040664f
mov ecx, 0xf7905cf
mov edx, 0x2544012b
mov eax, 0x1faaa966
cmp ecx, 0x38785257
jne 0x40476f
jmp 0x404ee9
call fcn.0040606d
jmp 0x404ee9
call fcn.004077d8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret