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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x160
mov eax, dword [ebp + 8]
mov dword [esp + 0x148], eax
mov dword [esp + 0x144], ecx
mov eax, dword [esp + 0x144]
mov dword [esp + 0x14c], eax
mov eax, dword [esp + 0x14c]
mov ecx, 0x43721c
mov ecx, esp
lea edx, [esp + 0x138]
mov dword [ecx], edx
mov ecx, 0x437420
mov ecx, eax
call fcn.004123c0
sub esp, 4
mov eax, esp
lea ecx, [esp + 0x138]
mov dword [eax], ecx
lea ecx, [esp + 0x140]
call fcn.004a2df0
sub esp, 4
mov ecx, dword [esp + 0x14c]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x150], ecx
mov dword [esp + 0x124], 0xab2b5d2f
mov dword [esp + 0x118], eax
mov eax, dword [esp + 0x124]
mov ecx, 0x7fff
mov ecx, eax
sub ecx, 0x6b6d3381
mov dword [esp + 0x114], eax
mov dword [esp + 0x110], ecx
jg 0x45bd0b
jmp 0x45b691
mov eax, dword [esp + 0x114]
add eax, 0xa5264469
mov dword [esp + 0x10c], eax
jg 0x45bcf0
jmp 0x45b6b0
mov eax, dword [esp + 0x114]
sub eax, 0x559bca08
mov dword [esp + 0x108], eax
jg 0x45bcd5
jmp 0x45b6ce
mov eax, dword [esp + 0x114]
sub eax, 0x48f60767
mov dword [esp + 0x104], eax
jg 0x45bcba
jmp 0x45b6ec
mov eax, dword [esp + 0x114]
sub eax, 0x8b1fded3
mov dword [esp + 0x100], eax
jg 0x45b729
jmp 0x45b70a
mov eax, dword [esp + 0x114]
add eax, 0x78742445
mov dword [esp + 0xfc], eax
je 0x45c38f
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x956b60fe
mov dword [esp + 0xf8], eax
jg 0x45b765
jmp 0x45b747
mov eax, dword [esp + 0x114]
sub eax, 0x8b1fded4
mov dword [esp + 0xf4], eax
je 0x45bef4
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x9ff7d724
mov dword [esp + 0xf0], eax
jg 0x45b7a1
jmp 0x45b783
mov eax, dword [esp + 0x114]
sub eax, 0x956b60ff
mov dword [esp + 0xec], eax
je 0x45c3f0
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xa2dd6c0a
mov dword [esp + 0xe8], eax
jg 0x45b7dd
jmp 0x45b7bf
mov eax, dword [esp + 0x114]
sub eax, 0x9ff7d725
mov dword [esp + 0xe4], eax
je 0x45bec0
jmp 0x45bd26
mov eax, dword [esp + 0x114]
add eax, 0x5b00b0cb
mov dword [esp + 0xe0], eax
jg 0x45b81a
jmp 0x45b7fc
mov eax, dword [esp + 0x114]
sub eax, 0xa2dd6c0b
mov dword [esp + 0xdc], eax
je 0x45be66
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xa75413f4
mov dword [esp + 0xd8], eax
jg 0x45b856
jmp 0x45b838
mov eax, dword [esp + 0x114]
sub eax, 0xa4ff4f36
mov dword [esp + 0xd4], eax
je 0x45bf3b
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xab2b5d2e
mov dword [esp + 0xd0], eax
jg 0x45b893
jmp 0x45b874
mov eax, dword [esp + 0x114]
add eax, 0x58abec0b
mov dword [esp + 0xcc], eax
je 0x45c228
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xac10823f
mov dword [esp + 0xc8], eax
jg 0x45b8cf
jmp 0x45b8b1
mov eax, dword [esp + 0x114]
sub eax, 0xab2b5d2f
mov dword [esp + 0xc4], eax
je 0x45bd2b
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xaf900744
mov dword [esp + 0xc0], eax
jg 0x45b90b
jmp 0x45b8ed
mov eax, dword [esp + 0x114]
sub eax, 0xac108240
mov dword [esp + 0xbc], eax
je 0x45c239
jmp 0x45bd26
mov eax, dword [esp + 0x114]
add eax, 0x4e1ddc48
mov dword [esp + 0xb8], eax
jg 0x45b948
jmp 0x45b92a
mov eax, dword [esp + 0x114]
sub eax, 0xaf900745
mov dword [esp + 0xb4], eax
je 0x45beaf
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xb2b33dfd
mov dword [esp + 0xb0], eax
jg 0x45b984
jmp 0x45b966
mov eax, dword [esp + 0x114]
sub eax, 0xb1e223b9
mov dword [esp + 0xac], eax
je 0x45bdde
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xb4726e97
mov dword [esp + 0xa8], eax
jg 0x45b9c0
jmp 0x45b9a2
mov eax, dword [esp + 0x114]
sub eax, 0xb2b33dfe
mov dword [esp + 0xa4], eax
je 0x45c35f
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xb9620158
mov dword [esp + 0xa0], eax
jg 0x45b9fc
jmp 0x45b9de
mov eax, dword [esp + 0x114]
sub eax, 0xb4726e98
mov dword [esp + 0x9c], eax
je 0x45bd87
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xc497777c
mov dword [esp + 0x98], eax
jg 0x45ba38
jmp 0x45ba1a
mov eax, dword [esp + 0x114]
sub eax, 0xb9620159
mov dword [esp + 0x94], eax
je 0x45bf6a
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xc6d6a33f
mov dword [esp + 0x90], eax
jg 0x45ba75
jmp 0x45ba56
mov eax, dword [esp + 0x114]
add eax, 0x3b688883
mov dword [esp + 0x8c], eax
je 0x45bd63
jmp 0x45bd26
mov eax, dword [esp + 0x114]
add eax, 0x2ba829d0
mov dword [esp + 0x88], eax
jg 0x45bab2
jmp 0x45ba94
mov eax, dword [esp + 0x114]
sub eax, 0xc6d6a340
mov dword [esp + 0x84], eax
je 0x45c2d2
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0xd966e93f
mov dword [esp + 0x80], eax
jg 0x45baeb
jmp 0x45bad0
mov eax, dword [esp + 0x114]
sub eax, 0xd457d631
mov dword [esp + 0x7c], eax
je 0x45bda5
jmp 0x45bd26
mov eax, dword [esp + 0x114]
add eax, 0x131e09c5
mov dword [esp + 0x78], eax
jg 0x45bb23
jmp 0x45bb07
mov eax, dword [esp + 0x114]
add eax, 0x269916c0
mov dword [esp + 0x74], eax
je 0x45c158
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x2d0a6ad5
mov dword [esp + 0x70], eax
jg 0x45bc9f
jmp 0x45bb3e
mov eax, dword [esp + 0x114]
add eax, 0xd3649c70
mov dword [esp + 0x6c], eax
jg 0x45bc84
jmp 0x45bb5a
mov eax, dword [esp + 0x114]
sub eax, 0x2a325730
mov dword [esp + 0x68], eax
jg 0x45bc69
jmp 0x45bb75
mov eax, dword [esp + 0x114]
sub eax, 0x2304a224
mov dword [esp + 0x64], eax
jg 0x45bc4e
jmp 0x45bb90
mov eax, dword [esp + 0x114]
sub eax, 0x16f3f124
mov dword [esp + 0x60], eax
jg 0x45bc33
jmp 0x45bbab
mov eax, dword [esp + 0x114]
sub eax, 0x6c24725
mov dword [esp + 0x5c], eax
jg 0x45bc18
jmp 0x45bbc6
mov eax, dword [esp + 0x114]
sub eax, 0xece1f63c
mov dword [esp + 0x58], eax
je 0x45c2ad
jmp 0x45bbe1
mov eax, dword [esp + 0x114]
sub eax, 0xed05261c
mov dword [esp + 0x54], eax
je 0x45c36f
jmp 0x45bbfc
mov eax, dword [esp + 0x114]
add eax, 0x892f8bb
mov dword [esp + 0x50], eax
je 0x45c311
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x6c24726
mov dword [esp + 0x4c], eax
je 0x45be8d
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x16f3f125
mov dword [esp + 0x48], eax
je 0x45bee3
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x2304a225
mov dword [esp + 0x44], eax
je 0x45c0a5
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x2a325731
mov dword [esp + 0x40], eax
je 0x45bdc0
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x2c9b6391
mov dword [esp + 0x3c], eax
je 0x45bdef
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x2d0a6ad6
mov dword [esp + 0x38], eax
je 0x45bf5e
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x48f60768
mov dword [esp + 0x34], eax
je 0x45bd52
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x559bca09
mov dword [esp + 0x30], eax
je 0x45c344
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x5ad9bb98
mov dword [esp + 0x2c], eax
je 0x45bf8b
jmp 0x45bd26
mov eax, dword [esp + 0x114]
sub eax, 0x6b6d3382
mov dword [esp + 0x28], eax
je 0x45be33
jmp 0x45bd26
jmp 0x45c406
mov eax, 0
mov ecx, 0xd457d631
mov edx, 0x48f60768
mov esi, dword [esp + 0x150]
cmp eax, esi
cmovb ecx, edx
mov dword [esp + 0x124], ecx
jmp 0x45c406
mov eax, 0xc497777d
mov dword [esp + 0x124], eax
jmp 0x45c406
mov eax, 0xb4726e98
mov ecx, dword [esp + 0x14c]
call fcn.0045c410
mov dword [esp + 0x154], ecx
mov dword [esp + 0x124], eax
jmp 0x45c406
mov dword [esp + 0x124], 0x2a325731
mov eax, dword [esp + 0x154]
mov dword [esp + 0x120], eax
jmp 0x45c406
mov dword [esp + 0x124], 0x2a325731
mov dword [esp + 0x120], 1
jmp 0x45c406
mov eax, dword [esp + 0x120]
mov dword [esp + 0x134], eax
mov dword [esp + 0x124], 0xb1e223b9
jmp 0x45c406
mov eax, 0x2c9b6391
mov dword [esp + 0x124], eax
jmp 0x45c406
mov eax, 0x6b6d3382
mov ecx, dword [esp + 0x134]
mov edx, dword [esp + 0x14c]
mov edx, dword [edx + 8]
add ecx, 0xd280914a
sub ecx, edx
add ecx, 0x2d7f6eb6
cmp ecx, dword [esp + 0x148]
setb bl
and bl, 1
mov byte [esp + 0x158], bl
mov dword [esp + 0x124], eax
jmp 0x45c406
mov eax, 0xa2dd6c0b
pushfd
mov ecx, 0xb72eeb9d
xor ecx, 0xb1ecacbb
popfd
mov dl, byte [esp + 0x158]
test dl, 1
cmovne eax, ecx
mov dword [esp + 0x124], eax
mov byte [esp + 0x11f], 1
jmp 0x45c406
cmp dword [esp + 0x134], 8
setb al
mov dword [esp + 0x124], 0x6c24726
and al, 1
mov byte [esp + 0x11f], al
jmp 0x45c406
mov eax, 0xaf900745
mov cl, byte [esp + 0x11f]
and cl, 1
mov byte [esp + 0x15b], cl
mov dword [esp + 0x124], eax
jmp 0x45c406
mov eax, 0x9ff7d725
mov dword [esp + 0x124], eax
jmp 0x45c406
mov eax, 0x5ad9bb98
mov ecx, 0x16f3f125
mov dl, byte [esp + 0x15b]
test dl, 1
cmovne eax, ecx
mov dword [esp + 0x124], eax
jmp 0x45c406
mov eax, 0x8b1fded4
mov dword [esp + 0x124], eax
jmp 0x45c406
mov ecx, dword [esp + 0x14c]
call fcn.004a2e60
mov ecx, 0xa4ff4f36
shr eax, 0
mov edx, dword [esp + 0x134]
add eax, 0x450d3d28
sub eax, edx
sub eax, 0x450d3d28
cmp eax, dword [esp + 0x134]
setb bl
and bl, 1
mov byte [esp + 0x159], bl
mov dword [esp + 0x124], ecx
jmp 0x45c406
mov eax, 0xb9620159
mov ecx, 0x2d0a6ad6
mov dl, byte [esp + 0x159]
test dl, 1
cmovne eax, ecx
mov dword [esp + 0x124], eax
jmp 0x45c406
mov ecx, dword [esp + 0x14c]
call fcn.004a2ec0
mov eax, dword [esp + 0x134]
shl eax, 1
mov dword [esp + 0x134], eax
mov dword [esp + 0x124], 0xb1e223b9
jmp 0x45c406
mov eax, dword [esp + 0x134]
mov ecx, dword [esp + 0x14c]
mov ecx, dword [ecx + 8]
add eax, 0xbeeaede8
sub eax, ecx
sub eax, 0xbeeaede8
mov dword [esp + 0x148], eax
mov eax, dword [esp + 0x14c]
mov eax, dword [eax + 0xc]
shr eax, 0
mov dword [esp + 0x130], eax
mov eax, dword [esp + 0x14c]
mov eax, dword [eax + 8]
mov ecx, dword [esp + 0x148]
add eax, 0x2e8e2f43
add eax, ecx
sub eax, 0x2e8e2f43
mov ecx, ebx
mov ecx, esp
call fcn.0045c420
lea ecx, [esp + 0x140]
call fcn.00414cd0
sub esp, 4
lea ecx, [esp + 0x140]
mov dword [esp + 0x12c], eax
mov eax, dword [esp + 0x12c]
mov edx, dword [esp + 0x130]
shl edx, 2
add eax, edx
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x128]
mov edx, dword [esp + 0x14c]
mov edx, dword [edx + 4]
mov esi, dword [esp + 0x14c]
call fcn.0045c430
shl esi, 2
add edx, esi
mov esi, dword [esp + 0x14c]
mov esi, dword [esi + 4]
mov edi, dword [esp + 0x130]
shl edi, 2
add esi, edi
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call fcn.004a3060
pushfd
xor ecx, ecx
add ecx, 0x7641045d
sub ecx, 0x9cda1b1d
popfd
mov edx, 0x2304a225
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x130]
cmp eax, dword [esp + 0x148]
cmovbe ecx, edx
mov dword [esp + 0x124], ecx
jmp 0x45c406
lea eax, [esp + 0x140]
mov ecx, dword [esp + 0x128]
mov edx, dword [esp + 0x14c]
mov edx, dword [edx + 4]
mov esi, dword [esp + 0x130]
shl esi, 2
add edx, esi
mov esi, dword [esp + 0x14c]
mov esi, dword [esi + 4]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.004a3060
lea ecx, [esp + 0x140]
mov edx, 0
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x148]
mov esi, dword [esp + 0x130]
sub edx, esi
add eax, edx
mov edx, dword [esp + 0x128]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00414d00
lea eax, [esp + 0x140]
mov ecx, dword [esp + 0x130]
mov edx, dword [esp + 0x12c]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00414d00
mov dword [esp + 0x124], 0xa75413f5
jmp 0x45c406
lea eax, [esp + 0x140]
mov ecx, dword [esp + 0x128]
mov edx, dword [esp + 0x14c]
mov edx, dword [edx + 4]
mov esi, dword [esp + 0x148]
shl esi, 2
add edx, esi
mov esi, dword [esp + 0x14c]
mov esi, dword [esi + 4]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.004a3060
lea ecx, [esp + 0x140]
mov edx, dword [esp + 0x12c]
mov esi, dword [esp + 0x14c]
mov esi, dword [esi + 4]
mov edi, dword [esp + 0x130]
shl edi, 2
add esi, edi
mov edi, dword [esp + 0x14c]
mov edi, dword [edi + 4]
mov ebx, dword [esp + 0x148]
shl ebx, 2
add edi, ebx
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x24], eax
call fcn.004a3060
lea ecx, [esp + 0x140]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x148]
mov edx, dword [esp + 0x128]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00414d00
mov dword [esp + 0x124], 0xa75413f5
jmp 0x45c406
mov eax, 0xac108240
mov dword [esp + 0x124], eax
jmp 0x45c406
lea eax, [esp + 0x140]
mov ecx, dword [esp + 0x14c]
call fcn.0045c440
mov edx, dword [esp + 0x14c]
mov edx, dword [edx + 8]
shl edx, 2
add ecx, edx
mov edx, dword [esp + 0x14c]
mov edx, dword [edx + 4]
mov esi, dword [esp + 0x130]
shl esi, 2
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004a3110
mov eax, 0xece1f63c
mov ecx, dword [esp + 0x14c]
cmp dword [ecx + 4], 0
setne bl
and bl, 1
mov byte [esp + 0x15a], bl
mov dword [esp + 0x124], eax
jmp 0x45c406
mov eax, 0x5a663c
mov eax, dword [eax]
mov ecx, 0xc6d6a340
mov dl, byte [esp + 0x15a]
test dl, 1
cmovne eax, ecx
mov dword [esp + 0x124], eax
jmp 0x45c406
mov eax, dword [esp + 0x14c]
mov eax, dword [eax + 8]
mov ecx, dword [esp + 0x14c]
mov ecx, dword [ecx + 4]
mov edx, eax
mov edx, esp
mov dword [edx + 4], eax
call fcn.0045c450
lea ecx, [esp + 0x140]
call fcn.0045c480
sub esp, 8
mov dword [esp + 0x124], 0xf76d0745
jmp 0x45c406
mov eax, dword [esp + 0x12c]
mov ecx, dword [esp + 0x14c]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x148]
mov ecx, dword [esp + 0x14c]
mov edx, dword [ecx + 8]
neg eax
sub edx, eax
mov dword [ecx + 8], edx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov eax, dword [esp + 0x14c]
mov dword [esp + 0x124], 0xc497777d
mov dword [esp + 0x20], eax
jmp 0x45c406
mov dword [esp + 0x124], 0xaf900745
jmp 0x45c406
mov ecx, dword [esp + 0x14c]
call fcn.004a2e60
mov dword [esp + 0x124], 0x8b1fded4
mov dword [esp + 0x1c], eax
jmp 0x45c406
lea eax, [esp + 0x140]
mov ecx, dword [esp + 0x14c]
mov ecx, dword [ecx + 4]
mov edx, dword [esp + 0x14c]
mov edx, dword [edx + 8]
shl edx, 2
add ecx, edx
mov edx, dword [esp + 0x14c]
mov edx, dword [edx + 4]
mov esi, dword [esp + 0x130]
shl esi, 2
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004a3110
mov eax, dword [esp + 0x14c]
mov dword [esp + 0x124], 0xac108240
mov dword [esp + 0x18], eax
jmp 0x45c406
mov eax, dword [esp + 0x14c]
mov dword [esp + 0x124], 0x2c9b6391
mov dword [esp + 0x14], eax
jmp 0x45b664