Function at 0x4047f9
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, 0x21624294
push esi
push edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x14], edi
mov esi, dword [esp + 0x10]
mov eax, 0xfe37879
mov edx, 0x369312ac
cmp ecx, 0x1366cdb9
jg 0x404bd0
je 0x404bc6
cmp ecx, 0xc57400e
jg 0x404a15
je 0x4049f3
cmp ecx, 0x5ac1f97
jg 0x404973
je 0x404960
cmp ecx, 0x7e6080
je 0x404fa7
cmp ecx, 0x160ca36
je 0x40494d
cmp ecx, 0x2d3f3ae
je 0x404936
cmp ecx, 0x443747c
jne 0x404f99
mov eax, ebx
or eax, edi
jne 0x40489a
mov ecx, esi
jmp 0x404f94
call fcn.00404242
mov esi, eax
call fcn.0040427c
cmp esi, eax
jbe 0x4048df
push 0x147
mov edx, 0xba05a1dc
mov ecx, 0xa5c1c40c
call fcn.00402f79
pop ecx
call eax
mov esi, eax
call fcn.00404242
mov edi, eax
call fcn.0040427c
sub edi, eax
xor edx, edx
mov eax, esi
div edi
mov edi, dword [esp + 0x14]
mov esi, edx
jmp 0x4048e1
xor esi, esi
call fcn.0040427c
lea ecx, [esi + eax]
call fcn.00406db0
test eax, eax
je 0x4048fc
mov ecx, 0x114d9624
jmp 0x404819
push 0x18e
mov edx, 0xdbe0815a
mov ecx, 0xa5c1c40c
call fcn.00402f79
pop ecx
call eax
cmp edx, edi
jb 0x404928
ja 0x40491d
cmp eax, ebx
jb 0x404928
mov esi, dword [esp + 0x10]
mov ecx, esi
jmp 0x404f8f
mov esi, dword [esp + 0x10]
mov ecx, 0x443747c
jmp 0x404f8f
call fcn.0040686b
test eax, eax
je 0x404fba
mov ecx, 0x23a2ad26
jmp 0x40481d
call fcn.00403b70
mov dword [esp + 0x6c], eax
mov ecx, 0xc493be0
jmp 0x40481d
mov ecx, dword [esp + 0x2c]
call fcn.00402fda
mov ecx, 0x388d7e12
jmp 0x40481d
cmp ecx, 0x6211719
je 0x4049d0
cmp ecx, 0xadb4af3
je 0x4049b9
cmp ecx, 0xbca92fd
je 0x4049aa
cmp ecx, 0xc493be0
jne 0x404f99
call fcn.00403363
mov dword [esp + 0x70], eax
mov ecx, 0x199aeeed
jmp 0x40481d
call fcn.00404ff7
mov ecx, 0x2d3f3ae
jmp 0x40481d
call fcn.004050fd
test eax, eax
je 0x404fba
mov ecx, 0xbca92fd
jmp 0x40481d
call fcn.00405964
mov eax, dword [0x40a508]
mov ecx, 0x20376015
cmp dword [eax + 0x23c], 0
mov eax, 0xfe37879
cmovne ecx, eax
jmp 0x404822
lea edx, [esp + 0x2c]
lea ecx, [esp + 0x64]
call fcn.004051d2
neg eax
sbb ecx, ecx
and ecx, 0x216a934
add ecx, 0x388d7e12
jmp 0x40481d
cmp ecx, eax
jg 0x404b1a
je 0x404b0b
cmp ecx, 0xcecf966
je 0x404ac6
cmp ecx, 0xdce48f7
je 0x404a84
cmp ecx, 0xe1f5e94
je 0x404fae
cmp ecx, 0xebe7936
jne 0x404f99
lea ecx, [esp + 0x3c]
call fcn.004078d1
test eax, eax
je 0x404a7a
xorps xmm0, xmm0
mov esi, 0x127e1630
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, 0x38b25a17
jmp 0x40481d
lea ecx, [esp + 0x48]
call fcn.00404493
test eax, eax
je 0x404abc
lea eax, [esp + 0x48]
mov edx, 0x465b1551
push eax
push 0x71
mov ecx, 0xa5c1c40c
mov dword [esp + 0x6c], eax
call fcn.00402f79
pop ecx
call eax
mov dword [esp + 0x68], eax
mov ecx, 0x1f902669
jmp 0x40481d
mov ecx, 0x114d9624
jmp 0x40481d
call fcn.00405b0f
test eax, eax
mov eax, dword [0x40a508]
je 0x404af2
cmp dword [eax + 0x23c], 0
mov ecx, 0x1c2d9e3d
mov edx, 0x369312ac
cmovne ecx, edx
mov eax, 0xfe37879
jmp 0x404827
cmp dword [eax + 0x23c], 0
mov ecx, 0x137319d3
mov eax, 0x2b03fec1
cmovne ecx, eax
jmp 0x40481d
call fcn.00405e38
mov ecx, 0x20376015
jmp 0x40481d
cmp ecx, 0x114d9624
je 0x404fb5
cmp ecx, 0x1263e0b5
je 0x404b83
cmp ecx, 0x127e1630
je 0x404b70
cmp ecx, 0x13319c32
jne 0x404f99
lea edx, [esp + 0x28]
mov ecx, 0x409280
call fcn.0040259d
mov esi, eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], esi
call fcn.0040163b
mov ecx, esi
call fcn.00402fda
mov ecx, 0x1366cdb9
jmp 0x404819
lea ecx, [esp + 0x7c]
call fcn.00404580
mov ecx, 0x225c7aad
jmp 0x40481d
lea edx, [esp + 0x3c]
lea ecx, [esp + 0x34]
call fcn.0040534c
test eax, eax
je 0x404a7a
xor ecx, ecx
call fcn.00407743
call fcn.00405c77
cmp dword [esp + 0x44], 0
mov ecx, 0xebe7936
je 0x40481d
cmp dword [esp + 0x44], 7
mov eax, 0x7e6080
cmove ecx, eax
jmp 0x40481d
mov ecx, 0x2748fd59
jmp 0x404827
cmp ecx, 0x225c7aad
jg 0x404d08
je 0x404cf2
cmp ecx, 0x1c2d9e3d
jg 0x404c8a
je 0x404c53
cmp ecx, 0x137319d3
je 0x404c44
cmp ecx, 0x1538b7f0
je 0x404c31
cmp ecx, 0x199aeeed
je 0x404c1e
cmp ecx, 0x199f90c3
jne 0x404f99
mov ecx, 0x13319c32
jmp 0x404827
call fcn.0040440a
mov dword [esp + 0x74], eax
mov ecx, 0x1538b7f0
jmp 0x404ae8
call fcn.0040443c
mov dword [esp + 0x78], eax
mov ecx, 0x127e1630
jmp 0x404ae8
call fcn.0040634e
mov ecx, 0x1e2bc084
jmp 0x40481d
call fcn.00406d02
mov esi, 0x199f90c3
mov edx, 0xdbe0815a
push 0x18e
mov ecx, 0xa5c1c40c
mov dword [esp + 0x14], esi
call fcn.00402f79
pop ecx
call eax
mov edi, edx
mov ebx, eax
mov dword [esp + 0x14], edi
mov ecx, 0x443747c
jmp 0x40481d
cmp ecx, 0x1e2bc084
je 0x404ce3
cmp ecx, 0x1f902669
je 0x404cc7
cmp ecx, 0x20376015
je 0x404cb8
cmp ecx, 0x21624294
jne 0x404f99
mov ecx, 0xadb4af3
jmp 0x404827
call fcn.00405c93
mov ecx, 0xe1f5e94
jmp 0x40481d
mov eax, dword [0x40a508]
mov ecx, 0x160ca36
mov eax, dword [eax + 0x45c]
mov dword [esp + 0x8c], eax
jmp 0x404ae8
call fcn.00406734
mov ecx, 0x2aeb486d
jmp 0x40481d
lea ecx, [esp + 0x84]
call fcn.00407816
mov ecx, 0xc57400e
jmp 0x40481d
cmp ecx, 0x2da0f0da
jg 0x404e0d
je 0x404dff
cmp ecx, 0x23a2ad26
je 0x404de5
cmp ecx, 0x2748fd59
je 0x404d68
cmp ecx, 0x2aeb486d
je 0x404d51
cmp ecx, 0x2b03fec1
jne 0x404f99
call fcn.004061da
mov ecx, 0x137319d3
jmp 0x40481d
call fcn.00406010
test eax, eax
je 0x404fba
mov ecx, 0x6211719
jmp 0x40481d
mov eax, 0xdce48f7
mov dword [esp + 0x10], eax
call fcn.0040436c
mov esi, eax
call fcn.004043ad
cmp esi, eax
jbe 0x404db2
push 0x147
mov edx, 0xba05a1dc
mov ecx, 0xa5c1c40c
call fcn.00402f79
pop ecx
call eax
mov esi, eax
call fcn.0040436c
mov edi, eax
call fcn.004043ad
sub edi, eax
xor edx, edx
mov eax, esi
div edi
mov esi, edx
jmp 0x404db4
xor esi, esi
push 0x18e
mov edx, 0xdbe0815a
mov ecx, 0xa5c1c40c
call fcn.00402f79
pop ecx
call eax
mov ebx, eax
mov edi, edx
call fcn.004043ad
add eax, esi
mov ecx, 0x443747c
add ebx, eax
adc edi, 0
jmp 0x404815
call fcn.004064c8
neg eax
sbb ecx, ecx
and ecx, 0x113ec71e
add ecx, 0xcecf966
jmp 0x40481d
mov ecx, dword [esp + 0x7c]
call fcn.00402fda
jmp 0x404c80
cmp ecx, edx
je 0x404f7d
cmp ecx, 0x388d7e12
je 0x404f67
cmp ecx, 0x38b25a17
je 0x404f54
cmp ecx, 0x3aa42746
jne 0x404f99
lea eax, [esp + 0x34]
push eax
call fcn.0040445c
lea edx, [esp + 0x30]
mov ecx, eax
call fcn.0040118d
pop ecx
test eax, eax
je 0x404ed0
mov eax, 0x127e1630
mov dword [esp + 0x10], eax
call fcn.0040430e
mov ecx, eax
call fcn.00404349
cmp ecx, eax
jbe 0x404e9d
push 0x147
mov edx, 0xba05a1dc
mov ecx, 0xa5c1c40c
call fcn.00402f79
pop ecx
call eax
mov esi, eax
call fcn.0040430e
mov ecx, eax
call fcn.00404349
sub ecx, eax
xor edx, edx
mov eax, esi
div ecx
mov esi, edx
jmp 0x404e9f
xor esi, esi
push 0x18e
mov edx, 0xdbe0815a
mov ecx, 0xa5c1c40c
call fcn.00402f79
pop ecx
call eax
mov ebx, eax
mov edi, edx
call fcn.00404349
add eax, esi
mov ecx, 0x1263e0b5
add ebx, eax
adc edi, 0
jmp 0x404815
call fcn.00401174
mov eax, 0x127e1630
mov dword [esp + 0x10], eax
call fcn.004042cd
mov ecx, eax
call fcn.004042a9
cmp eax, ecx
jbe 0x404f21
push 0x147
mov edx, 0xba05a1dc
mov ecx, 0xa5c1c40c
call fcn.00402f79
pop ecx
call eax
mov edx, eax
call fcn.004042cd
mov ecx, eax
call fcn.004042a9
mov esi, eax
mov eax, edx
sub esi, ecx
xor edx, edx
div esi
mov esi, edx
jmp 0x404f23
xor esi, esi
push 0x18e
mov edx, 0xdbe0815a
mov ecx, 0xa5c1c40c
call fcn.00402f79
pop ecx
call eax
mov ebx, eax
mov edi, edx
call fcn.004042cd
add eax, esi
mov ecx, 0x5ac1f97
add ebx, eax
adc edi, 0
jmp 0x404815
mov ecx, dword [esp + 0x34]
call fcn.00402fda
mov ecx, 0x5ac1f97
jmp 0x40481d
mov ecx, dword [esp + 0x84]
call fcn.00402fda
mov ecx, 0x2da0f0da
jmp 0x40481d
call fcn.0040665a
test eax, eax
jne 0x404cbd
mov ecx, 0x1c2d9e3d
mov edx, 0x369312ac
mov eax, 0xfe37879
cmp ecx, 0x3b89b01f
jne 0x404827
jmp 0x404fba
call fcn.00405cb5
jmp 0x404fba
call fcn.0040611b
jmp 0x404fba
call fcn.004078a8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret