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

Disassembly:
push edi
push esi
sub esp, 0x7c
mov eax, dword [esp + 0x8c]
mov edx, dword [esp + 0x88]
mov esi, 0x7f4fffd9
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], edx
mov dword [esp + 0x70], ecx
mov eax, ecx
mov di, word [0x4995fe]
mov dx, di
add edx, 0xf9b43043
mov di, dx
mov word [0x4995fe], di
mov edx, esp
mov dword [edx + 4], 0x31e
mov dword [edx], 0x215f
mov dword [esp + 0x50], ecx
mov dword [esp + 0x4c], esi
mov dword [esp + 0x48], eax
call fcn.0044bdb0
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x34], eax
mov eax, dword [0x495e20]
or eax, 0xb53abcde
mov dword [0x495e20], eax
mov eax, esp
mov dword [eax + 4], 0xaf1
mov dword [eax], 0x14ab
call fcn.0044bdb0
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x30], eax
mov eax, dword [0x497168]
mov edx, dword [0x494c10]
xor edx, eax
mov dword [0x494c10], edx
mov eax, dword [0x491c40]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov di, word [0x498078]
movsx eax, di
mov ecx, dword [0x49249c]
mov edx, ecx
dec edx
mov dword [0x49249c], edx
add eax, ecx
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jle 0x450215
mov eax, dword [0x4947d0]
shl eax, 4
neg eax
mov ecx, dword [0x497088]
lea eax, [ecx + eax + 0x414be63e]
mov dword [0x497088], eax
mov eax, 0x292463e9
mov ecx, dword [esp + 0x48]
mov dword [ecx + 0x18], 0
mov edx, dword [0x4964c8]
xor edx, 0x9d79ab47
mov esi, dword [0x492b80]
add esi, edx
mov dword [0x492b80], esi
mov byte [ecx + 0x1c], 0
mov di, word [0x498646]
movsx edx, di
cmp eax, edx
je 0x45029d
mov eax, dword [0x496e98]
imul eax, eax, 0xe4abd84f
or eax, 0xe6875a03
mov ecx, dword [0x494fa8]
cmp eax, ecx
jle 0x450298
mov ax, word [0x49718c]
movsx ecx, ax
add ecx, 0xd693b170
cmp ecx, 0xe50aaa7f
jne 0x450293
jmp 0x450293
jmp 0x450298
jmp 0x45029d
mov eax, 0xc42d8862
mov ecx, dword [esp + 0x48]
mov dword [ecx + 0x28], 0
mov edx, dword [0x495624]
imul edx, edx, 0x2ecabd62
mov dword [0x495624], edx
mov edx, esp
mov dword [edx + 4], 4
mov dword [edx], 0x3d2c
mov dword [esp + 0x44], eax
call fcn.0044bdb0
mov dword [esp + 0x6c], eax
mov eax, dword [0x493a6c]
dec eax
mov dword [0x493a6c], eax
or eax, 0xa92288f
and eax, 0x1f92e9af
mov dword [0x494970], eax
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x48]
add ecx, 0x38
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.004564c0
mov ecx, dword [0x493a68]
mov edx, 0x730debb8
sub edx, ecx
mov ecx, dword [0x493de8]
and ecx, edx
mov dword [0x493de8], ecx
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0x88b
mov dword [esp + 0x40], eax
call fcn.0044bdb0
mov dword [esp + 0x68], eax
mov eax, dword [0x4936c0]
add eax, 0x23000018
mov dword [0x4936c0], eax
mov eax, dword [esp + 0x6c]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 4
call fcn.004019a0
mov eax, dword [0x4942f0]
shl eax, 1
add eax, 0xe6b0cd74
mov ecx, dword [esp + 0x44]
cmp ecx, eax
je 0x4503a5
mov eax, dword [0x492ae0]
mov ecx, eax
dec ecx
mov dword [0x492ae0], ecx
add eax, 0x9785980e
and eax, 0x31dce6d
mov ecx, dword [0x4929d4]
sub ecx, eax
mov dword [0x4929d4], ecx
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x48]
add ecx, 0x4c
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.004564c0
mov ecx, dword [0x49317c]
shr ecx, 7
add ecx, 0xdaefb440
mov si, cx
mov word [0x4993d6], si
mov ecx, dword [esp + 0x68]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 5
mov dword [esp + 0x3c], eax
call fcn.004019a0
mov si, word [0x498a5a]
mov word [0x498a5a], 0
mov eax, esp
mov dword [eax], 0
mov word [esp + 0x3a], si
call fcn.00452150
mov ecx, dword [esp + 0x48]
mov dword [ecx + 0x20], eax
mov eax, dword [0x49499c]
and eax, 0xc2640b25
mov edi, dword [0x49665c]
sub edi, eax
mov dword [0x49665c], edi
mov eax, dword [ecx + 0x20]
shr eax, 9
mov dword [ecx + 0x20], eax
mov eax, dword [0x4935dc]
and eax, 0x9946e94d
mov dword [0x4935dc], eax
mov eax, dword [ecx + 0x20]
add eax, 0x200
mov dword [ecx + 0x24], eax
mov eax, dword [0x49535c]
and eax, 0x27499e07
mov dword [0x49535c], eax
mov dword [esp + 0x64], 0
mov dword [0x492570], 0xb885b878
mov si, word [0x499160]
mov ax, si
or eax, 0x699e
mov si, ax
mov word [0x499160], si
mov dword [esp + 0x5c], 0
mov dword [esp + 0x34], edx
cmp dword [esp + 0x5c], 0x28
je 0x4505b2
mov eax, 0xa4f82b8f
mov ecx, dword [0x4947b0]
and ecx, 0x55807aee
mov dword [0x4947b0], ecx
mov ecx, dword [0x491c10]
mov edx, esp
mov esi, dword [esp + 0x48]
mov dword [edx + 0xc], esi
mov dword [edx + 0x14], 0
mov dword [edx + 0x10], 0
mov dword [edx + 8], 0x447750
mov dword [edx + 4], 0
mov dword [edx], 0
mov dword [esp + 0x30], eax
call ecx
sub esp, 0x18
mov dword [esp + 0x60], eax
mov eax, dword [0x4963fc]
shl eax, 0xa
imul eax, eax, 0xca478e27
mov ecx, dword [esp + 0x30]
cmp ecx, eax
jle 0x450520
mov eax, dword [0x4926e0]
add eax, 0xd618fc10
mov dword [0x4926e0], eax
cmp dword [esp + 0x60], 0
je 0x45058a
mov ax, word [0x49734a]
movsx ecx, ax
xor ecx, 0x2210a00
or ecx, 0x4c46e4be
mov edx, dword [0x494a00]
and edx, ecx
mov dword [0x494a00], edx
mov ecx, dword [esp + 0x64]
inc ecx
mov dword [esp + 0x64], ecx
mov dword [0x492fa0], 0xd7e7f7fd
mov ecx, dword [0x491c20]
mov edx, dword [esp + 0x60]
mov esi, esp
mov dword [esi], edx
call ecx
sub esp, 4
mov ecx, dword [0x492724]
or ecx, 0x2b0d2521
mov dword [0x492724], ecx
mov dword [esp + 0x2c], eax
mov ax, word [0x4981a2]
mov cx, ax
add ecx, 0xc6267540
mov ax, cx
mov word [0x4981a2], ax
mov eax, dword [esp + 0x5c]
add eax, 1
mov dword [esp + 0x5c], eax
jmp 0x450497
mov eax, dword [0x492274]
or eax, 0xbe678e13
mov dword [0x492274], eax
cmp dword [esp + 0x64], 0
jle 0x450669
mov dword [0x493e44], 0x903fe93b
mov ecx, dword [esp + 0x48]
call fcn.0041ca30
mov ax, word [0x49976e]
movsx ecx, ax
and ecx, 0x70c4e52c
mov edx, dword [0x496c44]
dec edx
mov dword [0x496c44], edx
cmp ecx, edx
jg 0x450612
mov dword [0x495a10], 0xda2c585
jmp 0x450664
mov eax, dword [0x495d2c]
shl eax, 9
xor eax, 0x2a46455d
cmp eax, 0x627c91bb
jl 0x45065f
mov eax, 0x16400400
mov cx, word [0x497d80]
movsx edx, cx
sar edx, 6
and edx, 0xa3c0acfa
mov esi, dword [0x49373c]
sar esi, 2
xor edx, esi
cmp eax, edx
je 0x45065a
jmp 0x45065a
jmp 0x45065f
jmp 0x450664
jmp 0x450669
mov ax, word [0x497d0c]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x497d0c], dx
movsx ecx, ax
imul ecx, ecx, 0x77af8437
mov esi, dword [0x4955d8]
add ecx, esi
mov esi, dword [0x493808]
or esi, ecx
mov dword [0x493808], esi
mov ecx, dword [esp + 0x48]
add ecx, 0x38
mov esi, esp
mov dword [esi], ecx
mov dword [esi + 4], 0x14
call fcn.00407960
mov ecx, dword [0x495058]
xor ecx, 0xbfddb1a3
cmp ecx, 0x136efd04
jle 0x4506f9
mov eax, 0x58d62fd3
mov ecx, dword [0x495790]
inc ecx
mov dword [0x495790], ecx
cmp eax, ecx
jne 0x4506f4
mov eax, dword [0x4934d4]
and eax, 0x8dd7cef9
mov dword [0x4934d4], eax
jmp 0x4506f9
mov eax, dword [esp + 0x48]
add eax, 0x4c
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0x14
call fcn.00407960
mov eax, dword [0x4963d8]
add eax, 0xfff35080
mov dword [0x4963d8], eax
mov eax, dword [0x491c4c]
mov ecx, esp
mov edx, dword [esp + 0x48]
mov dword [ecx], edx
call eax
sub esp, 4
mov eax, dword [0x492614]
and eax, 0xd011c267
mov dword [0x492614], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [eax + 0x30]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0xaf1
call fcn.004019a0
mov eax, dword [0x493bc8]
and eax, 0x7a952acf
mov ecx, dword [0x495658]
or ecx, eax
mov dword [0x495658], ecx
mov eax, dword [esp + 0x48]
mov ecx, dword [eax + 0x34]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x31e
call fcn.004019a0
mov eax, dword [0x491d24]
imul eax, eax, 0x1525278e
or eax, 0x524d0eaa
cmp eax, 0x15915eef
jle 0x4507b0
mov eax, dword [0x491cf4]
or eax, 0x90cd1157
mov dword [0x491cf4], eax
mov dword [esp + 0x58], 0
mov eax, dword [0x4954a8]
dec eax
mov dword [0x4954a8], eax
imul eax, eax, 0x420b8084
mov ecx, 0xdc093027
sub ecx, eax
mov eax, dword [0x496720]
imul eax, ecx
mov dword [0x496720], eax
mov eax, dword [esp + 0x48]
add eax, 0x80
mov ecx, eax
call fcn.00413d50
test al, 1
jne 0x4509a6
mov eax, dword [0x4939f4]
mov ecx, dword [0x492058]
imul eax, ecx
add eax, 0x94f246e7
mov dx, word [0x4997ba]
mov cx, dx
dec ecx
mov si, cx
mov word [0x4997ba], si
movsx ecx, dx
add ecx, 0xc3c1167e
and ecx, 0x3ec8a6f9
cmp eax, ecx
jle 0x450870
mov eax, 0x9ae93bcc
mov cx, word [0x498f68]
movsx edx, cx
cmp eax, edx
jl 0x45086b
mov eax, dword [0x494ffc]
dec eax
mov dword [0x494ffc], eax
imul eax, eax, 0x2aa9ab3d
and eax, 0xaf71
mov cx, ax
mov word [0x498940], cx
jmp 0x450870
call fcn.00418480
mov dword [esp + 0x54], eax
mov eax, dword [0x494350]
inc eax
mov dword [0x494350], eax
imul eax, eax, 0xcc243adf
add eax, 0x21947dbb
cmp eax, 0xfb96fdbd
jl 0x4508ae
mov eax, dword [0x494960]
add eax, 0x67ecf9f4
mov dword [0x494960], eax
jmp 0x4508c6
mov eax, dword [0x494434]
and eax, 0xb4f69c1
mov ecx, dword [0x491de4]
add ecx, eax
mov dword [0x491de4], ecx
mov eax, dword [esp + 0x48]
sub eax, 0xffffff80
mov ecx, eax
mov dword [esp + 0x28], eax
call fcn.00424e80
mov ecx, dword [esp + 0x54]
xor edx, edx
mov dword [esp + 0x24], eax
mov eax, ecx
mov ecx, dword [esp + 0x24]
div ecx
mov dword [esp + 0x54], edx
mov dword [0x491cd0], 0x383697cf
mov eax, dword [esp + 0x54]
mov edx, esp
mov dword [edx], eax
mov ecx, dword [esp + 0x28]
call fcn.00424ea0
sub esp, 4
mov ecx, eax
call fcn.00408b70
mov ecx, dword [esp + 0x78]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.004564c0
mov si, word [0x49735c]
movsx ecx, si
mov edx, dword [0x492fa0]
and ecx, edx
and ecx, 0x19cbc34e
mov dword [0x492fa0], ecx
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x54]
mov edi, esp
mov dword [edi], edx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x20], ecx
mov ecx, edx
mov dword [esp + 0x1c], eax
call fcn.00424ea0
sub esp, 4
add eax, 0x14
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esp + 0x20]
call fcn.004207f0
sub esp, 4
mov ecx, dword [0x494cf8]
or ecx, 0xd8ba24af
mov dword [0x494cf8], ecx
mov dword [esp + 0x58], 1
mov ecx, dword [0x49276c]
and ecx, 0x62813512
mov dword [0x49276c], ecx
mov dword [esp + 0x18], eax
mov eax, dword [0x495e34]
add eax, 0xed221deb
mov dword [0x495e34], eax
mov eax, dword [esp + 0x58]
add esp, 0x7c
pop esi
pop edi
ret 8