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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x80
push ebx
mov ebx, dword [esp + 0x10]
mov eax, 0x12823d32
push ebp
mov ebp, dword [esp + 0x10]
push esi
push edi
mov edi, dword [esp + 0x18]
mov esi, 0x2564be4f
jmp 0x406560
cmp eax, 0x1ff46034
jg 0x406878
je 0x406ee9
cmp eax, 0xfd5a1ac
jg 0x40674d
je 0x406735
cmp eax, 0xd28318f
jg 0x406672
je 0x40663e
cmp eax, 0x8e1a01c
jg 0x4065dd
je 0x4065cd
cmp eax, 0x2c8787f
je 0x4065c1
cmp eax, 0x4326e25
jne 0x4069be
lea ecx, [esp + 0x84]
call fcn.0040b050
mov eax, 0x2b42ebb2
jmp 0x406560
call fcn.00408530
mov eax, 0xddcb99d
jmp 0x406560
lea ecx, [esp + 0x7c]
call fcn.004060e0
mov eax, 0x4326e25
jmp 0x406560
cmp eax, 0xa28b6e5
je 0x40662b
cmp eax, 0xb70f210
jne 0x4069be
call fcn.00408240
mov ecx, dword [0x40e2ec]
test eax, eax
je 0x406612
cmp dword [ecx + 0x268], 0
mov eax, 0xe0d6cd8
cmovne eax, esi
jmp 0x406560
cmp dword [ecx + 0x268], 0
mov eax, 0x166b1152
mov ecx, 0x3278b521
cmovne eax, ecx
jmp 0x406560
mov ecx, dword [esp + 0x34]
call fcn.00404250
mov eax, 0x1c32e2d2
jmp 0x406560
mov dword [esp + 0x18], 0x669c
mov eax, 0xcccccccd
mov ecx, dword [esp + 0x18]
mul ecx
shr edx, 5
mov dword [esp + 0x18], edx
xor dword [esp + 0x18], 0x178
mov eax, dword [esp + 0x18]
mov dword [esp + 0x78], eax
mov eax, 0x8e1a01c
jmp 0x406560
cmp eax, 0xe9d6a0f
jg 0x406713
je 0x4066ef
cmp eax, 0xddcb99d
je 0x4066c2
cmp eax, 0xe0d6cd8
jne 0x4069be
call fcn.00409d70
push 0xcf
mov edx, 0xcfd93ac1
mov ecx, 0xbb398380
mov ebp, 0x1c5e7f9f
call fcn.00404190
add esp, 4
call eax
mov edi, eax
mov ebx, edx
mov eax, 0x2537e9de
jmp 0x406560
lea ecx, [esp + 0x3c]
call fcn.0040b2b0
test eax, eax
je 0x4066e5
xorps xmm0, xmm0
mov ebp, 0x8e1a01c
movlpd qword [esp + 0x18], xmm0
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
mov eax, 0xa28b6e5
jmp 0x406560
call fcn.00407ec0
mov ecx, dword [0x40e2ec]
mov eax, 0x14860a92
cmp dword [ecx + 0x268], 0
mov ecx, 0x21c0adc4
cmovne eax, ecx
jmp 0x406560
cmp eax, 0xf0c159c
jne 0x4069be
call fcn.004096b0
test eax, eax
je 0x406f08
mov eax, 0xfd5a1ac
jmp 0x406560
call fcn.004090c0
neg eax
sbb eax, eax
and eax, 0x810ea45
add eax, 0xb70f210
jmp 0x406560
cmp eax, 0x16bf64f2
jg 0x406809
je 0x4067b7
cmp eax, 0x14860a92
jg 0x40679d
je 0x40678e
cmp eax, 0x12823d32
je 0x406784
cmp eax, 0x1381dc55
jne 0x4069be
call fcn.00409470
mov eax, 0x315a7589
jmp 0x406560
mov eax, 0x27047861
jmp 0x406560
call fcn.00408550
mov eax, 0x2aa5d516
jmp 0x406560
cmp eax, 0x166b1152
jne 0x4069be
call fcn.00408ea0
mov eax, 0x1381dc55
jmp 0x406560
lea ecx, [esp + 0x48]
call fcn.00405f60
test eax, eax
je 0x406987
lea eax, [esp + 0x48]
mov dword [esp + 0x64], eax
mov eax, dword [0x40e144]
test eax, eax
jne 0x4067f4
mov ecx, 0xbb398380
call fcn.00403f20
mov edx, 0x5262aeca
mov ecx, eax
call fcn.00403e80
mov dword [0x40e144], eax
lea ecx, [esp + 0x48]
push ecx
call eax
mov dword [esp + 0x68], eax
mov eax, 0x1fdef138
jmp 0x406560
cmp eax, 0x1ea773fc
jg 0x406854
je 0x406841
cmp eax, 0x1c32e2d2
je 0x40682e
cmp eax, 0x1c5e7f9f
jne 0x4069be
mov eax, 0x30d1bd42
jmp 0x406560
mov ecx, dword [esp + 0x24]
call fcn.00404250
mov eax, 0x39deb3f9
jmp 0x406560
call fcn.00405360
mov dword [esp + 0x6c], eax
mov eax, 0x216a974b
jmp 0x406560
cmp eax, 0x1fdef138
jne 0x4069be
mov eax, dword [0x40e2ec]
mov eax, dword [eax + 0x48]
mov dword [esp + 0x8c], eax
mov eax, 0x1ea773fc
jmp 0x406560
cmp eax, 0x2b42ebb2
jg 0x406c63
je 0x406c43
cmp eax, 0x2564be4f
jg 0x4069e9
je 0x4069d1
cmp eax, 0x226f6c18
jg 0x4068e6
je 0x4068d7
cmp eax, 0x216a974b
je 0x4068c4
cmp eax, 0x21c0adc4
jne 0x4069be
call fcn.004087d0
mov eax, 0x14860a92
jmp 0x406560
call fcn.004047a0
mov dword [esp + 0x70], eax
mov eax, 0x27dc0a4c
jmp 0x406560
call fcn.00406fb0
mov eax, 0xf0c159c
jmp 0x406560
cmp eax, 0x2537e9de
jne 0x4069be
mov eax, edi
or eax, ebx
je 0x4069bc
mov dword [esp + 0x14], 0x1f9e
shr dword [esp + 0x14], 0xc
add dword [esp + 0x14], 0xffff30c3
xor dword [esp + 0x14], 0xffff3064
call fcn.00405cd0
cmp eax, dword [esp + 0x14]
jbe 0x406959
push 0xb3
mov edx, 0xae3c1a47
mov ecx, 0xbb398380
call fcn.00404190
add esp, 4
call eax
mov edx, eax
call fcn.00405cd0
mov esi, eax
call fcn.00405d00
sub esi, eax
mov eax, edx
xor edx, edx
div esi
mov esi, 0x2564be4f
jmp 0x40695b
xor edx, edx
mov dword [esp + 0x14], 0x1f9e
shr dword [esp + 0x14], 0xc
add dword [esp + 0x14], 0xffff30c3
xor dword [esp + 0x14], 0xffff3064
mov ecx, dword [esp + 0x14]
add ecx, edx
call fcn.00409ea0
test eax, eax
je 0x406991
mov eax, 0x1ff46034
jmp 0x406560
push 0xcf
mov edx, 0xcfd93ac1
mov ecx, 0xbb398380
call fcn.00404190
add esp, 4
call eax
cmp edx, ebx
jb 0x4066b8
ja 0x4069bc
cmp eax, edi
jb 0x4066b8
mov eax, ebp
cmp eax, 0x33f417f9
jne 0x406560
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00409320
neg eax
sbb eax, eax
and eax, 0x1c98683e
add eax, 0xe0d6cd8
jmp 0x406560
cmp eax, 0x2aa5d516
jg 0x406a2e
je 0x406ef6
cmp eax, 0x27047861
je 0x406a17
cmp eax, 0x27dc0a4c
jne 0x4069be
call fcn.00405ea0
mov dword [esp + 0x74], eax
mov eax, 0xd28318f
jmp 0x406560
call fcn.00407160
test eax, eax
je 0x406f08
mov eax, 0x226f6c18
jmp 0x406560
cmp eax, 0x2acfa9b6
jne 0x4069be
mov dword [esp + 0x14], 0xe36c
lea edx, [esp + 0x24]
imul eax, dword [esp + 0x14], 0x71
mov dword [esp + 0x14], eax
add dword [esp + 0x14], 0xffff86a2
imul eax, dword [esp + 0x14], 0x7b
mov dword [esp + 0x14], eax
lea eax, [esp + 0x34]
shr dword [esp + 0x14], 6
or dword [esp + 0x14], 0x57610b65
xor dword [esp + 0x14], 0x57e10f64
mov ecx, dword [esp + 0x14]
push eax
call fcn.004012b0
add esp, 4
test eax, eax
je 0x406b7a
mov dword [esp + 0x18], 0xb2e0
mov ebp, 0x8e1a01c
mov eax, dword [esp + 0x18]
mov ecx, eax
shl ecx, 4
sub ecx, eax
shl ecx, 2
mov dword [esp + 0x18], ecx
xor dword [esp + 0x18], 0x245720
mov dword [esp + 0x14], 0x89fa
add dword [esp + 0x14], 0xffffb442
add dword [esp + 0x14], 0xffffdaaf
shr dword [esp + 0x14], 0xb
xor dword [esp + 0x14], 0xc3503
mov eax, dword [esp + 0x14]
cmp dword [esp + 0x18], eax
jbe 0x406b14
push 0xb3
mov edx, 0xae3c1a47
mov ecx, 0xbb398380
call fcn.00404190
add esp, 4
call eax
mov esi, eax
call fcn.00405dc0
mov edx, eax
call fcn.00405d90
mov ecx, eax
mov eax, esi
sub ecx, edx
xor edx, edx
div ecx
mov esi, edx
jmp 0x406b16
xor esi, esi
mov eax, dword [0x40ddbc]
test eax, eax
jne 0x406b3a
mov ecx, 0xbb398380
call fcn.00403f20
mov edx, 0xcfd93ac1
mov ecx, eax
call fcn.00403e80
mov dword [0x40ddbc], eax
mov dword [esp + 0x14], 0x89fa
add dword [esp + 0x14], 0xffffb442
add dword [esp + 0x14], 0xffffdaaf
shr dword [esp + 0x14], 0xb
xor dword [esp + 0x14], 0xc3503
call eax
mov edi, eax
mov ebx, edx
mov eax, dword [esp + 0x14]
add eax, esi
add edi, eax
mov eax, 0x380a1784
adc ebx, 0
jmp 0x406551
mov ecx, dword [0x40e2e0]
add dword [ecx + 0xc], 8
mov eax, dword [ecx + 0xc]
cmp dword [eax], 0
jne 0x406b92
mov eax, dword [ecx + 8]
mov dword [ecx + 0xc], eax
mov dword [esp + 0x14], 0xc5a1
mov ebp, 0x8e1a01c
xor dword [esp + 0x14], 0xe0738efa
shr dword [esp + 0x14], 6
add dword [esp + 0x14], 0xffffe737
xor dword [esp + 0x14], 0x381bbc4
call fcn.00405d50
cmp dword [esp + 0x14], eax
jbe 0x406bfc
push 0xb3
mov edx, 0xae3c1a47
mov ecx, 0xbb398380
call fcn.00404190
add esp, 4
call eax
mov esi, eax
call fcn.00405d50
mov edx, eax
call fcn.00405d20
mov ecx, eax
mov eax, esi
sub ecx, edx
xor edx, edx
div ecx
mov ebx, edx
jmp 0x406bfe
xor ebx, ebx
mov edi, dword [0x40ddbc]
test edi, edi
jne 0x406c26
mov ecx, 0xbb398380
call fcn.00403f20
mov edx, 0xcfd93ac1
mov ecx, eax
call fcn.00403e80
mov edi, eax
mov dword [0x40ddbc], edi
call fcn.00405d50
lea esi, [ebx + eax]
call edi
mov edi, eax
mov ebx, edx
add edi, esi
mov eax, 0x1c32e2d2
adc ebx, 0
jmp 0x406551
lea edx, [esp + 0x24]
lea ecx, [esp + 0x64]
call fcn.004072a0
neg eax
sbb eax, eax
and eax, 0xf0f0f5bd
add eax, 0x39deb3f9
jmp 0x406560
cmp eax, 0x3299e430
jg 0x406cf8
je 0x406f03
cmp eax, 0x315a7589
jg 0x406cde
je 0x406cc7
cmp eax, 0x30d1bd42
je 0x406c99
cmp eax, 0x314203dc
jne 0x4069be
mov eax, 0x39f8f5db
jmp 0x406560
lea edx, [esp + 0x30]
mov ecx, 0x40d2e0
call fcn.00403310
mov esi, eax
lea ecx, [esp + 0x2c]
mov dword [esp + 0x2c], esi
call fcn.00401890
mov ecx, esi
call fcn.00403460
mov eax, 0x314203dc
jmp 0x406551
call fcn.00408a10
test eax, eax
je 0x406f08
mov eax, 0xe9d6a0f
jmp 0x406560
cmp eax, 0x3278b521
jne 0x4069be
call fcn.00408cd0
mov eax, 0x166b1152
jmp 0x406560
cmp eax, 0x39deb3f9
jg 0x406d79
je 0x406d63
cmp eax, 0x3540656b
je 0x406d50
cmp eax, 0x380a1784
jne 0x4069be
lea edx, [esp + 0x3c]
lea ecx, [esp + 0x34]
call fcn.004074e0
test eax, eax
je 0x4066e5
xor ecx, ecx
call fcn.0040ae60
mov ecx, dword [esp + 0x44]
mov eax, 0x2c8787f
test ecx, ecx
je 0x406560
cmp ecx, 7
mov ecx, 0x3299e430
cmove eax, ecx
jmp 0x406560
mov ecx, dword [esp + 0x7c]
call fcn.00404250
mov eax, 0x2537e9de
jmp 0x406560
mov ecx, dword [esp + 0x84]
call fcn.00404250
mov eax, 0x3540656b
jmp 0x406560
cmp eax, 0x39f8f5db
jne 0x4069be
mov dword [esp + 0x18], 0xaaf5
mov ebp, 0x16bf64f2
shr dword [esp + 0x18], 3
add dword [esp + 0x18], 0xffff9253
xor dword [esp + 0x18], 0xffff9931
mov dword [esp + 0x14], 0xf5b3
add dword [esp + 0x14], 0xb403
add dword [esp + 0x14], 0xffff5bc8
add dword [esp + 0x14], 0x6fbb
add dword [esp + 0x14], 0xe315
or dword [esp + 0x14], 0x5d55179d
add dword [esp + 0x14], 0xafac
mov eax, dword [esp + 0x14]
mov dword [esp + 0x14], eax
shl dword [esp + 0x14], 2
xor dword [esp + 0x14], 0x7560216c
mov eax, dword [esp + 0x14]
cmp dword [esp + 0x18], eax
jbe 0x406e57
mov edx, dword [0x40dd4c]
test edx, edx
jne 0x406e25
mov ecx, 0xbb398380
call fcn.00403f20
mov edx, 0xae3c1a47
mov ecx, eax
call fcn.00403e80
mov edx, eax
mov dword [0x40dd4c], edx
mov dword [esp + 0x18], 0xaaf5
shr dword [esp + 0x18], 3
add dword [esp + 0x18], 0xffff9253
xor dword [esp + 0x18], 0xffff9931
call fcn.00405e10
mov esi, dword [esp + 0x18]
sub esi, eax
call edx
xor edx, edx
div esi
mov esi, edx
jmp 0x406e59
xor esi, esi
mov ecx, dword [0x40ddbc]
test ecx, ecx
jne 0x406e81
mov ecx, 0xbb398380
call fcn.00403f20
mov edx, 0xcfd93ac1
mov ecx, eax
call fcn.00403e80
mov ecx, eax
mov dword [0x40ddbc], ecx
mov dword [esp + 0x14], 0xf5b3
add dword [esp + 0x14], 0xb403
add dword [esp + 0x14], 0xffff5bc8
add dword [esp + 0x14], 0x6fbb
add dword [esp + 0x14], 0xe315
or dword [esp + 0x14], 0x5d55179d
add dword [esp + 0x14], 0xafac
mov eax, dword [esp + 0x14]
mov dword [esp + 0x14], eax
shl dword [esp + 0x14], 2
xor dword [esp + 0x14], 0x7560216c
call ecx
mov edi, eax
mov ebx, edx
mov eax, dword [esp + 0x14]
add eax, esi
add edi, eax
mov eax, 0x2537e9de
adc ebx, 0
jmp 0x406551
call fcn.0040b160
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00408ba0
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00408590
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret