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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffffc
sub esp, 0xb4
mov eax, eax
mov ebx, ebx
mov ecx, ecx
mov edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xac], ecx
mov dword [esp + 0xa8], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0x98], 0xffffffff
mov byte [esp + 0x97], 6
push ebx
push ecx
mov ebx, 0x110b00
mov ecx, 0
cmp ecx, 0x320
jae 0x40b633
add ebx, 0x9678a
inc ecx
jmp 0x40b61b
add ebx, 0x38a7
mov dword [esp + 0x98], ebx
pop ecx
pop ebx
mov eax, dword [esp + 0x90]
mov ecx, eax
push edx
push eax
mov edx, 0x103139
mov eax, 0
cmp eax, 0x829
jae 0x40b66f
add edx, 0x12e735
inc eax
jmp 0x40b657
add edx, 0x32e2b
sub ecx, edx
pop eax
pop edx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], ecx
jg 0x40b6d9
jmp 0x40b692
mov eax, dword [esp + 0x8c]
push edx
push esi
mov edx, 0xc4bc7
mov esi, 0
cmp esi, 0x7ea
jae 0x40b6bd
add edx, 0x11003c
inc esi
jmp 0x40b6a5
sub edx, 0x6f39c
sub eax, edx
pop esi
pop edx
mov dword [esp + 0x84], eax
je 0x40bcfc
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
sub eax, 0x667a2e49
mov dword [esp + 0x80], eax
jg 0x40bc2e
jmp 0x40b6f7
mov eax, dword [esp + 0x8c]
push edx
push ebx
mov edx, 0x61a9c
mov ebx, 0
cmp ebx, 0x844
jae 0x40b722
add edx, 0xc3ee6
inc ebx
jmp 0x40b70a
sub edx, 0xc3a94
sub eax, edx
pop ebx
pop edx
mov dword [esp + 0x7c], eax
jg 0x40bbea
jmp 0x40b73b
mov eax, dword [esp + 0x8c]
push esi
push ecx
mov esi, 0xc3ba4
mov ecx, 0
cmp ecx, 0x201
jae 0x40b766
add esi, 0xeb25c
inc ecx
jmp 0x40b74e
sub esi, 0xad31a
sub eax, esi
pop ecx
pop esi
mov dword [esp + 0x78], eax
jg 0x40bba6
jmp 0x40b77f
mov eax, dword [esp + 0x8c]
push ecx
push ebx
mov ecx, 0xb3668
mov ebx, 0
cmp ebx, 0x1136
jae 0x40b7aa
add ecx, 0x8fbaf
inc ebx
jmp 0x40b792
sub ecx, 0x1de20
sub eax, ecx
pop ebx
pop ecx
mov dword [esp + 0x74], eax
jg 0x40b7df
jmp 0x40b7c3
mov eax, dword [esp + 0x8c]
add eax, 0x65abf11e
mov dword [esp + 0x70], eax
je 0x40c1b4
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
sub eax, 0xa120ec21
mov dword [esp + 0x6c], eax
jg 0x40b83e
jmp 0x40b7fa
mov eax, dword [esp + 0x8c]
push ecx
push ebx
mov ecx, 0xb923d
mov ebx, 0
cmp ebx, 0xfa1
jae 0x40b825
add ecx, 0x9e49a
inc ebx
jmp 0x40b80d
sub ecx, 0x44ee4
sub eax, ecx
pop ebx
pop ecx
mov dword [esp + 0x68], eax
je 0x40c0f8
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
add eax, 0x5a133984
mov dword [esp + 0x64], eax
jg 0x40b876
jmp 0x40b85a
mov eax, dword [esp + 0x8c]
add eax, 0x5edf13de
mov dword [esp + 0x60], eax
je 0x40bd96
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
push ecx
push esi
mov ecx, 0x140e04
mov esi, 0
cmp esi, 0xf2a
jae 0x40b8a1
add ecx, 0xbcd61
inc esi
jmp 0x40b889
add ecx, 0x49cc5
sub eax, ecx
pop esi
pop ecx
mov dword [esp + 0x5c], eax
jg 0x40b8fe
jmp 0x40b8ba
mov eax, dword [esp + 0x8c]
push ecx
push edx
mov ecx, 0x7e893
mov edx, 0
cmp edx, 0x18e2
jae 0x40b8e5
add ecx, 0x6aa9a
inc edx
jmp 0x40b8cd
add ecx, 0x3d1f6
sub eax, ecx
pop edx
pop ecx
mov dword [esp + 0x58], eax
je 0x40bdce
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
sub eax, 0xbf3d090d
mov dword [esp + 0x54], eax
jg 0x40b95d
jmp 0x40b919
mov eax, dword [esp + 0x8c]
push esi
push ecx
mov esi, 0x9754c
mov ecx, 0
cmp ecx, 0x22af
jae 0x40b944
add esi, 0x52972
inc ecx
jmp 0x40b92c
sub esi, 0xe286
sub eax, esi
pop ecx
pop esi
mov dword [esp + 0x50], eax
je 0x40bea0
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
push ebx
push edx
mov ebx, 0x13d78a
mov edx, 0
cmp edx, 0x153c
jae 0x40b988
add ebx, 0x9586e
inc edx
jmp 0x40b970
add ebx, 0x197ca
sub eax, ebx
pop edx
pop ebx
mov dword [esp + 0x4c], eax
jg 0x40b9e5
jmp 0x40b9a1
mov eax, dword [esp + 0x8c]
push esi
push ecx
mov esi, 0xc9f30
mov ecx, 0
cmp ecx, 0x152c
jae 0x40b9cc
add esi, 0x90814
inc ecx
jmp 0x40b9b4
sub esi, 0x69d92
sub eax, esi
pop ecx
pop esi
mov dword [esp + 0x48], eax
je 0x40c16d
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
add eax, 0x38804078
mov dword [esp + 0x44], eax
jg 0x40ba45
jmp 0x40ba01
mov eax, dword [esp + 0x8c]
push edx
push ecx
mov edx, 0x11ffe3
mov ecx, 0
cmp ecx, 0xb09
jae 0x40ba2c
add edx, 0x11fbad
inc ecx
jmp 0x40ba14
add edx, 0x2e725
sub eax, edx
pop ecx
pop edx
mov dword [esp + 0x40], eax
je 0x40c007
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
push ebx
push ecx
mov ebx, 0xc16e7
mov ecx, 0
cmp ecx, 0x1da3
jae 0x40ba70
add ebx, 0x700e0
inc ecx
jmp 0x40ba58
add ebx, 0x3a31b
sub eax, ebx
pop ecx
pop ebx
mov dword [esp + 0x3c], eax
jg 0x40baa4
jmp 0x40ba89
mov eax, dword [esp + 0x8c]
sub eax, 0xc77fbf89
mov dword [esp + 0x38], eax
je 0x40c13f
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
sub eax, 0xd40bbcbc
mov dword [esp + 0x34], eax
jg 0x40bada
jmp 0x40babf
mov eax, dword [esp + 0x8c]
sub eax, 0xcf9ea8a3
mov dword [esp + 0x30], eax
je 0x40bf3f
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
push esi
push edx
mov esi, 0x13260b
mov edx, 0
cmp edx, 0x18d5
jae 0x40bb05
add esi, 0x88922
inc edx
jmp 0x40baed
add esi, 0x34d68
sub eax, esi
pop edx
pop esi
mov dword [esp + 0x2c], eax
je 0x40c082
jmp 0x40bb1e
mov eax, dword [esp + 0x8c]
push ebx
push ecx
mov ebx, 0x94711
mov ecx, 0
cmp ecx, 0x10b8
jae 0x40bb49
add ebx, 0xe9d45
inc ecx
jmp 0x40bb31
add ebx, 0x45cef
sub eax, ebx
pop ecx
pop ebx
mov dword [esp + 0x28], eax
je 0x40c03f
jmp 0x40bb62
mov eax, dword [esp + 0x8c]
push ebx
push esi
mov ebx, 0xfff21
mov esi, 0
cmp esi, 0xf24
jae 0x40bb8d
add ebx, 0x1023f0
inc esi
jmp 0x40bb75
sub ebx, 0xa6ed7
sub eax, ebx
pop esi
pop ebx
mov dword [esp + 0x24], eax
je 0x40bfb5
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
push edx
push ecx
mov edx, 0xf821f
mov ecx, 0
cmp ecx, 0x207
jae 0x40bbd1
add edx, 0xe7f23
inc ecx
jmp 0x40bbb9
add edx, 0x190d3
sub eax, edx
pop ecx
pop edx
mov dword [esp + 0x20], eax
je 0x40bc77
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
push ecx
push edx
mov ecx, 0x11eb2a
mov edx, 0
cmp edx, 0x1099
jae 0x40bc15
add ecx, 0x61760
inc edx
jmp 0x40bbfd
add ecx, 0x5e197
sub eax, ecx
pop edx
pop ecx
mov dword [esp + 0x1c], eax
je 0x40be68
jmp 0x40bc72
mov eax, dword [esp + 0x8c]
push edx
push ebx
mov edx, 0xbefe4
mov ebx, 0
cmp ebx, 0x8a4
jae 0x40bc59
add edx, 0xbdbb5
inc ebx
jmp 0x40bc41
sub edx, 0x8298e
sub eax, edx
pop ebx
pop edx
mov dword [esp + 0x18], eax
je 0x40beed
jmp 0x40bc72
jmp 0x40c1c3
push edx
push esi
mov edx, 0xb4b22
mov esi, 0
cmp esi, 0x1de0
jae 0x40bc9b
add edx, 0x82d9e
inc esi
jmp 0x40bc83
add edx, 0x4e236
mov eax, edx
pop esi
pop edx
push esi
push ebx
mov esi, 0x1103a9
mov ebx, 0
cmp ebx, 0xe60
jae 0x40bcc9
add esi, 0x95ac3
inc ebx
jmp 0x40bcb1
add esi, 0x77c3a
mov ecx, esi
pop ebx
pop esi
mov dl, 0
mov dh, byte [esp + 0x97]
sub dl, 0xff
mov bl, dh
sub bl, dl
mov byte [esp + 0x97], bl
cmp dh, 0
cmovne eax, ecx
mov dword [esp + 0x90], eax
jmp 0x40c1c3
lea eax, [esp + 0xac]
lea ecx, [esp + 0x9c]
lea edx, [esp + 0xa8]
lea esi, [esp + 0xa0]
mov dword [esp + 0xa0], 0
mov dword [esp + 0x9c], 0
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
call fcn.0040aae0
push eax
push ebx
mov eax, 0x56a79
mov ebx, 0
cmp ebx, 0x17aa
jae 0x40bd66
add eax, 0x702db
inc ebx
jmp 0x40bd4e
sub eax, 0x2366a
mov ecx, eax
pop ebx
pop eax
mov edx, 0xa120ec22
mov dword [esp + 0xa4], eax
cmp dword [esp + 0xa4], 0
cmove ecx, edx
mov dword [esp + 0x90], ecx
jmp 0x40c1c3
push ecx
push edx
mov ecx, 0xab236
mov edx, 0
cmp edx, 0x135a
jae 0x40bdba
add ecx, 0xaf48a
inc edx
jmp 0x40bda2
add ecx, 0xd403
mov dword [esp + 0x98], ecx
pop edx
pop ecx
jmp 0x40c1c3
mov eax, dword [esp + 0xb0]
mov cl, byte [esp + 0x97]
mov edx, dword [esp + 0xa0]
mov esi, dword [esp + 0xa8]
mov edi, dword [esp + 0x9c]
mov ebx, dword [esp + 0xa4]
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
movzx edx, cl
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
call fcn.00409aa0
mov edx, 0xb3110bb4
push eax
push edx
mov eax, 0xfee8b
mov edx, 0
cmp edx, 0x6cf
jae 0x40be40
add eax, 0xed8b6
inc edx
jmp 0x40be28
add eax, 0xc576c
mov esi, eax
pop edx
pop eax
push edx
mov edx, 0x90adbcb
xor edx, 0x90adbcb
cmp eax, edx
pop edx
cmovl edx, esi
mov dword [esp + 0x90], edx
jmp 0x40c1c3
push ebx
push edx
mov ebx, 0xa7492
mov edx, 0
cmp edx, 0x26f1
jae 0x40be8c
add ebx, 0x571ae
inc edx
jmp 0x40be74
add ebx, 0x16f5d
mov dword [esp + 0x98], ebx
pop edx
pop ebx
jmp 0x40c1c3
push ebx
push edx
mov ebx, 0x11a5f4
mov edx, 0
cmp edx, 0x2177
jae 0x40bec4
add ebx, 0x6338c
inc edx
jmp 0x40beac
add ebx, 0x6009b
mov eax, ebx
pop edx
pop ebx
mov ecx, 0x667a2e4a
cmp dword [esp + 0xa8], 0
cmovne eax, ecx
mov dword [esp + 0x90], eax
jmp 0x40c1c3
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
call fcn.00402ec0
mov dword [esp + 0xa8], 0
push eax
push edx
mov eax, 0xe70bf
mov edx, 0
cmp edx, 0x28ce
jae 0x40bf2b
add eax, 0x51635
inc edx
jmp 0x40bf13
add eax, 0x113e
mov dword [esp + 0x98], eax
pop edx
pop eax
jmp 0x40c1c3
push ebx
push ecx
mov ebx, 0xb344c
mov ecx, 0
cmp ecx, 0x1216
jae 0x40bf63
add ebx, 0xaf932
inc ecx
jmp 0x40bf4b
add ebx, 0x50c85
mov eax, ebx
pop ecx
pop ebx
push ebx
push esi
mov ebx, 0x12e778
mov esi, 0
cmp esi, 0x1699
jae 0x40bf91
add ebx, 0xad026
inc esi
jmp 0x40bf79
sub ebx, 0x6e424
mov ecx, ebx
pop esi
pop ebx
cmp dword [esp + 0xa4], 0
cmovne eax, ecx
mov dword [esp + 0x90], eax
jmp 0x40c1c3
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
call fcn.00402ec0
mov dword [esp + 0xa4], 0
push edx
push eax
mov edx, 0x112be0
mov eax, 0
cmp eax, 0xc8a
jae 0x40bff3
add edx, 0xfd50f
inc eax
jmp 0x40bfdb
sub edx, 0xf8ad9
mov dword [esp + 0x98], edx
pop eax
pop edx
jmp 0x40c1c3
push ebx
push edx
mov ebx, 0x573d6
mov edx, 0
cmp edx, 0x4c4
jae 0x40c02b
add ebx, 0x62e45
inc edx
jmp 0x40c013
sub ebx, 0x521c3
mov dword [esp + 0x98], ebx
pop edx
pop ebx
jmp 0x40c1c3
mov dword [esp + 0x98], 0
push ebx
push esi
mov ebx, 0x76837
mov esi, 0
cmp esi, 0xed4
jae 0x40c06e
add ebx, 0xe4c45
inc esi
jmp 0x40c056
add ebx, 0x16562
mov dword [esp + 0x98], ebx
pop esi
pop ebx
jmp 0x40c1c3
push esi
push ebx
mov esi, 0xf61bb
mov ebx, 0
cmp ebx, 0x1f54
jae 0x40c0a6
add esi, 0x65da3
inc ebx
jmp 0x40c08e
add esi, 0x2e752
mov eax, esi
pop ebx
pop esi
push eax
push edx
mov eax, 0x8296f
mov edx, 0
cmp edx, 0xca3
jae 0x40c0d4
add eax, 0xc3ce5
inc edx
jmp 0x40c0bc
sub eax, 0x89d0b
mov ecx, eax
pop edx
pop eax
cmp dword [esp + 0xa8], 0
cmovne eax, ecx
mov dword [esp + 0x90], eax
jmp 0x40c1c3
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
call fcn.00402ec0
push edx
push eax
mov edx, 0x10e905
mov eax, 0
cmp eax, 0x999
jae 0x40c12b
add edx, 0x14c728
inc eax
jmp 0x40c113
add edx, 0x3679c
mov dword [esp + 0x98], edx
pop eax
pop edx
jmp 0x40c1c3
pushfd
mov eax, 0x3049c345
xor eax, 0xaa1dcda7
popfd
mov ecx, 0x426330
mov ecx, dword [ecx]
cmp dword [esp + 0xa4], 0
cmovne eax, ecx
mov dword [esp + 0x90], eax
jmp 0x40c1c3
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
call fcn.00402ec0
push ecx
push ebx
mov ecx, 0xc48a2
mov ebx, 0
cmp ebx, 0xaf7
jae 0x40c1a0
add ecx, 0xe114d
inc ebx
jmp 0x40c188
add ecx, 0x812f5
mov dword [esp + 0x98], ecx
pop ebx
pop ecx
jmp 0x40c1c3
mov eax, dword [esp + 0x98]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
jmp 0x40b642