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

Disassembly:
push ebx
push edi
push esi
sub esp, 0x5e8
mov eax, dword [0x49e7e8]
dec eax
mov dword [0x49e7e8], eax
imul eax, eax, 0x77824d38
add eax, 0xdcf02ccb
mov ecx, dword [0x49f884]
mov edx, ecx
dec edx
mov dword [0x49f884], edx
or ecx, 0x875c5780
cmp eax, ecx
jle 0x44911b
mov eax, dword [0x49eeb0]
and eax, 0x1b8f27fe
mov dword [0x49eeb0], eax
lea ecx, [esp + 0x5a8]
call fcn.0042c890
mov dx, word [0x49fbfa]
mov cx, dx
inc ecx
mov si, cx
mov word [0x49fbfa], si
movsx ecx, dx
mov edi, dword [0x49dfcc]
and edi, ecx
mov dword [0x49dfcc], edi
mov ecx, dword [0x49e1d0]
add ecx, 0xd9ef8871
mov dx, word [0x49fe8c]
mov di, dx
imul edi, ecx
mov dx, di
mov word [0x49fe8c], dx
mov ecx, dword [0x49e23c]
or ecx, 0x7dea7518
mov dword [0x49dbd4], ecx
mov ecx, dword [0x49eed8]
imul ecx, ecx, 0x5eea443a
mov dword [0x49eed8], ecx
mov dword [esp + 0x118], 0
mov dx, word [0x49fdd8]
movsx ecx, dx
not ecx
add ecx, 0xf22f6aac
mov edi, dword [0x49de68]
imul edi, ecx
mov dword [0x49de68], edi
mov dword [0x4a09c0], 0x94
mov dx, word [0x4a014c]
mov cx, dx
imul ecx, ecx, 0xddebff7f
mov dx, cx
mov word [0x4a014c], dx
mov ecx, dword [0x49d8c0]
mov edi, esp
mov dword [edi], 0x4a09c0
mov dword [esp + 0x114], eax
call ecx
sub esp, 4
mov dx, word [0x49fff2]
mov cx, dx
imul ecx, ecx, 0xba148e30
mov dx, cx
mov word [0x49fff2], dx
mov dword [esp + 0x110], eax
call fcn.0042c400
mov dword [0x4a13c4], eax
mov eax, dword [0x49f1d8]
or eax, 0xa68409b0
mov dword [0x49f1d8], eax
call fcn.0044c7a0
mov dword [0x4a13c8], eax
mov eax, dword [0x49f8b4]
imul eax, eax, 0xe3e90b0c
mov ecx, dword [0x49e094]
add eax, ecx
mov ecx, dword [0x49f958]
xor ecx, eax
mov dword [0x49f958], ecx
mov eax, dword [0x4a13c4]
cmp eax, 0
je 0x449519
mov eax, 0xfef70ffb
mov ecx, dword [0x49def8]
inc ecx
mov dword [0x49def8], ecx
mov edx, dword [0x49de04]
or edx, ecx
mov dword [0x49de04], edx
mov ecx, esp
lea edx, [esp + 0x12b]
mov dword [ecx], edx
mov dword [esp + 0x10c], eax
call fcn.0044d520
mov dword [esp + 0x124], eax
mov si, word [0x4a0970]
movsx eax, si
add eax, 0xeed933b2
mov si, word [0x4a05aa]
mov cx, si
dec ecx
mov si, cx
mov word [0x4a05aa], si
movsx ecx, si
xor eax, ecx
mov ecx, dword [0x49e874]
or ecx, eax
mov dword [0x49e874], ecx
mov eax, dword [esp + 0x124]
mov byte [esp + eax + 0x12b], 0x5c
mov si, word [0x49fc6a]
movsx eax, si
xor eax, 0x7f50dc2c
mov ecx, dword [esp + 0x10c]
cmp ecx, eax
jl 0x44938b
mov eax, 0x2c1b6cde
mov cx, word [0x4a05be]
movsx edx, cx
sar edx, 6
xor edx, 0x8ea2deb7
cmp eax, edx
je 0x44935f
mov eax, 0x3de744f3
mov cx, word [0x49fae4]
movsx edx, cx
or edx, 0xaa228924
cmp eax, edx
jg 0x449355
jmp 0x44935a
jmp 0x44935a
jmp 0x449386
mov eax, dword [0x49ddc4]
sar eax, 4
sub eax, 0x8688fa19
xor eax, 0xdaca599e
cmp eax, 0x5186b95
jle 0x449381
jmp 0x449381
jmp 0x449386
jmp 0x44938b
mov eax, 0xdb36a9b3
mov ecx, dword [esp + 0x124]
inc ecx
mov dword [esp + 0x124], ecx
mov ecx, dword [0x49f9a4]
sub ecx, 0x6f35ac9e
cmp eax, ecx
jg 0x4493cb
mov ax, word [0x49feda]
mov cx, ax
or ecx, 0x844b
mov ax, cx
mov word [0x49feda], ax
mov eax, 0xbfe95ffb
mov ecx, dword [esp + 0x124]
mov byte [esp + ecx + 0x12b], 0
mov ecx, dword [0x49ede8]
or ecx, 0x56754583
cmp eax, ecx
jne 0x449402
mov eax, dword [0x49f4c4]
xor eax, 0x960f2691
mov dword [0x49f4c4], eax
mov eax, 0x303d8440
mov ecx, dword [0x4a1408]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x12b]
mov dword [edx], ecx
mov dword [esp + 0x108], eax
call fcn.004552a0
mov ecx, dword [0x49eaf0]
inc ecx
mov dword [0x49eaf0], ecx
mov edx, dword [esp + 0x108]
cmp edx, ecx
mov dword [esp + 0x104], eax
jle 0x449462
mov ax, word [0x4a01b4]
mov cx, ax
imul ecx, ecx, 0xa82000f3
mov ax, cx
mov word [0x4a01b4], ax
mov eax, dword [0x49d908]
mov ecx, esp
lea edx, [esp + 0x12b]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov dword [esp + 0x100], edx
call eax
sub esp, 8
mov dword [0x49dc8c], 0x25170044
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x5214
mov dword [esp + 0xfc], eax
call fcn.00448630
mov dword [esp + 0x5e4], eax
mov dword [0x49e4cc], 0x70f91b8
mov eax, dword [esp + 0x5e4]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x100]
mov dword [ecx], eax
call fcn.004552a0
mov ecx, dword [0x49e538]
and ecx, 0x956673ce
mov dword [0x49e538], ecx
mov ecx, dword [esp + 0x5e4]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xf8], eax
call fcn.0041ee00
mov eax, dword [0x49dfc4]
add eax, 0x74ed5daa
mov dword [0x49dfc4], eax
jmp 0x449569
mov eax, dword [0x49e06c]
sar eax, 8
xor eax, 0xeee3cca9
mov ecx, dword [0x49df94]
cmp eax, ecx
jge 0x449542
mov word [0x4a00da], 0x23c4
jmp 0x449552
mov eax, dword [0x49f328]
imul eax, eax, 0xd0234556
mov dword [0x49f328], eax
mov byte [esp + 0x12b], 0
mov eax, dword [0x49e7a8]
add eax, 0xf6c85df7
mov dword [0x49e7a8], eax
mov eax, 0x302838c8
mov ecx, dword [0x49dea8]
add ecx, 0x80e044e0
mov dword [0x49dea8], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x6aa8
mov dword [esp + 0xf4], eax
call fcn.00448630
mov dword [esp + 0x5e0], eax
mov dx, word [0x49fa60]
mov ax, dx
inc eax
mov si, ax
mov word [0x49fa60], si
movsx eax, dx
mov ecx, dword [esp + 0xf4]
cmp ecx, eax
jg 0x4495e1
mov ax, word [0x4a0866]
mov cx, ax
xor ecx, 0x47e8
mov ax, cx
mov word [0x4a0866], ax
lea eax, [esp + 0x5a8]
lea ecx, [esp + 0x12b]
mov edx, dword [esp + 0x5e0]
mov esi, esp
mov dword [esi], edx
lea edx, [esp + 0x5a8]
mov dword [esp + 0xf0], ecx
mov ecx, edx
mov dword [esp + 0xec], eax
call fcn.00423f60
sub esp, 4
mov di, word [0x4a0758]
mov cx, di
and ecx, 0x6972
mov di, cx
mov word [0x4a0758], di
mov ecx, dword [esp + 0x5e0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xe8], eax
call fcn.0041ee00
mov eax, dword [0x49f218]
mov di, word [0x49fc20]
mov cx, di
dec ecx
mov bx, cx
mov word [0x49fc20], bx
movsx ecx, di
add ecx, 0x8131525a
and eax, ecx
mov ecx, dword [0x49f35c]
imul ecx, eax
mov dword [0x49f35c], ecx
mov eax, dword [esp + 0xec]
mov ecx, eax
call fcn.0041bdd0
lea ecx, [esp + 0x5a8]
mov dword [esp + 0xe4], eax
call fcn.0040c450
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xf0]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0xe0], ecx
call fcn.0042d360
cmp eax, 0
je 0x4497ad
mov dword [0x49e870], 0xeefddc9b
mov dword [esp + 0x118], 1
mov eax, dword [0x49e2c0]
imul eax, eax, 0x7009ea0
mov dword [0x49e2c0], eax
mov eax, dword [0x49d894]
mov ecx, esp
lea edx, [esp + 0x12b]
mov dword [ecx], edx
mov dword [esp + 0xdc], edx
call eax
sub esp, 4
mov ecx, dword [0x49dc58]
xor ecx, 0xf28f
mov si, word [0x49fa46]
mov dx, si
imul edx, ecx
mov si, dx
mov word [0x49fa46], si
mov ecx, dword [esp + 0x124]
mov byte [esp + ecx + 0x12b], 0
mov ecx, dword [0x49e00c]
and ecx, 0x69a5ae59
mov dword [0x49e00c], ecx
mov ecx, dword [0x49d90c]
mov edx, esp
mov edi, dword [esp + 0xdc]
mov dword [edx], edi
mov dword [esp + 0xd8], eax
call ecx
sub esp, 4
mov ecx, dword [0x49eacc]
sar ecx, 4
imul ecx, ecx, 0x346ccc35
mov edx, dword [0x49ecc4]
or ecx, edx
or ecx, 0x7803598e
mov dword [0x49ecc4], ecx
mov dword [esp + 0xd4], eax
mov eax, dword [0x49ed28]
mov ecx, eax
inc ecx
mov dword [0x49ed28], ecx
add eax, 0x97233c89
mov ecx, dword [0x49dba8]
sub ecx, eax
mov dword [0x49dba8], ecx
mov eax, esp
lea ecx, [esp + 0x12b]
mov dword [eax], ecx
mov dword [esp + 0xd0], ecx
call fcn.0044d520
mov dx, word [0x4a03be]
mov cx, dx
dec ecx
mov si, cx
mov word [0x4a03be], si
movsx ecx, dx
mov edi, dword [0x49f124]
add edi, ecx
mov dword [0x49f124], edi
mov byte [esp + 0x12e], 0
mov ecx, dword [0x49ebc4]
or ecx, 0xca6dc76a
mov dword [0x49ebc4], ecx
mov ecx, dword [0x4a1408]
mov edi, esp
mov dword [edi + 4], ecx
mov ecx, dword [esp + 0xd0]
mov dword [edi], ecx
mov dword [esp + 0xcc], eax
call fcn.004552a0
mov ecx, dword [0x49f608]
dec ecx
mov dword [0x49f608], ecx
and ecx, 0xe0de
mov edi, dword [0x49de14]
xor ecx, edi
mov dx, cx
mov word [0x49fffc], dx
mov ecx, dword [0x49d908]
mov edi, esp
mov ebx, dword [esp + 0xd0]
mov dword [edi], ebx
mov dword [edi + 4], 0
mov dword [esp + 0xc8], eax
call ecx
sub esp, 8
mov dx, word [0x4a00f8]
mov cx, dx
xor ecx, 0xe080
mov dx, cx
mov word [0x4a00f8], dx
mov ecx, esp
mov edi, dword [esp + 0xd0]
mov dword [ecx + 4], edi
mov dword [ecx], 0x4a0bf8
mov dword [esp + 0xc4], eax
call fcn.00455290
mov ecx, dword [0x49e288]
shr ecx, 4
and ecx, 0xcb08
mov dx, word [0x4a0062]
mov di, dx
xor edi, ecx
mov dx, di
mov word [0x4a0062], dx
cmp dword [esp + 0x118], 0
mov dword [esp + 0xc0], eax
jne 0x44997f
mov eax, 0xf475bbea
mov ecx, dword [0x49e064]
mov edx, ecx
dec edx
mov dword [0x49e064], edx
mov edx, dword [0x49e828]
xor edx, ecx
mov dword [0x49e828], edx
mov dword [0x4a13c0], 0
mov ecx, dword [0x49dd7c]
imul ecx, ecx, 0x7fa8fd21
sub eax, ecx
cmp eax, 0x21a2fae2
jle 0x449959
mov eax, dword [0x49ddec]
or eax, 0x7a48f34f
mov dword [0x49ddec], eax
jmp 0x44997a
mov eax, dword [0x49f4b8]
mov ecx, eax
inc ecx
mov dword [0x49f4b8], ecx
and eax, 0x7433d5c2
mov ecx, dword [0x49f6a8]
sub ecx, eax
mov dword [0x49f6a8], ecx
jmp 0x44997f
mov ax, word [0x49fb32]
movsx ecx, ax
sar ecx, 6
imul ecx, ecx, 0x10adb2b3
mov edx, dword [0x49da88]
shl edx, 6
xor ecx, edx
mov edx, dword [0x49f30c]
or edx, ecx
mov dword [0x49f30c], edx
mov ecx, esp
lea edx, [esp + 0x12b]
mov dword [ecx], edx
call fcn.00425a10
mov dword [esp + 0x124], eax
mov eax, dword [0x49ea78]
xor eax, 0x97320d7f
cmp eax, 0xefbcf327
je 0x4499ee
mov eax, dword [0x49ebd8]
or eax, 0xa7564d95
mov ecx, dword [0x49f4d0]
add ecx, eax
mov dword [0x49f4d0], ecx
mov eax, 0x3b17f601
mov ecx, dword [0x49d908]
mov edx, esp
lea esi, [esp + 0x12b]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0xbc], eax
call ecx
sub esp, 8
mov ecx, dword [0x49e2f0]
mov edx, dword [0x49e0e0]
sar edx, 8
sub ecx, edx
mov edx, dword [esp + 0xbc]
cmp edx, ecx
mov dword [esp + 0xb8], eax
jl 0x449ac5
mov eax, 0xa7195a7c
mov ecx, dword [0x49f66c]
mov edx, ecx
dec edx
mov dword [0x49f66c], edx
sub ecx, 0x13aab6dd
sub ecx, 0xabc73c3b
cmp eax, ecx
je 0x449aaa
mov eax, dword [0x49ef88]
mov cx, word [0x4a04f6]
mov dx, cx
dec edx
mov si, dx
mov word [0x4a04f6], si
movsx edx, cx
and eax, edx
mov edx, dword [0x49f634]
dec edx
mov dword [0x49f634], edx
xor edx, 0xea50b46e
cmp eax, edx
jle 0x449aa5
jmp 0x449aa5
jmp 0x449ac0
mov eax, dword [0x49ef8c]
shl eax, 4
mov ecx, dword [0x49e358]
add ecx, eax
mov dword [0x49e358], ecx
jmp 0x449ae7
mov eax, dword [0x49db30]
not eax
add eax, 0x3889638c
mov cx, word [0x4a059c]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x4a059c], cx
mov eax, 0x7b5d0dca
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x5214
mov dword [esp + 0xb4], eax
call fcn.00448630
mov dword [esp + 0x5dc], eax
mov eax, dword [0x49ea88]
add eax, 0xf573026
mov ecx, dword [esp + 0xb4]
cmp ecx, eax
jg 0x449b36
mov eax, dword [0x49ed0c]
add eax, 0xe80f75f9
mov dword [0x49ed0c], eax
mov eax, 0x5db5f433
mov ecx, dword [esp + 0x5dc]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x12b]
mov dword [edx], ecx
mov dword [esp + 0xb0], eax
call fcn.004552a0
mov ecx, dword [0x49f830]
and ecx, 0xf667a7e
mov dword [0x49f830], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x6aa8
mov dword [esp + 0xac], eax
call fcn.00448630
mov dword [esp + 0x5d8], eax
mov eax, dword [0x49f198]
add eax, 0x47e9100a
mov ecx, dword [esp + 0xb0]
cmp ecx, eax
jle 0x449be8
mov ax, word [0x49fe12]
movsx ecx, ax
and ecx, 0xa09593b7
mov edx, dword [0x49f4ac]
or edx, 0x4c8be2a2
cmp ecx, edx
jge 0x449be3
mov eax, dword [0x49f6d4]
mov ecx, dword [0x49eadc]
xor eax, ecx
xor eax, 0x1e6c9505
mov dword [0x49eadc], eax
jmp 0x449be8
mov eax, dword [esp + 0x5dc]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.0041ee00
mov eax, dword [0x49e220]
add eax, 0x633db95a
mov ecx, dword [0x49dbc8]
xor ecx, 0x5b7c2c8a
cmp eax, ecx
je 0x449c41
mov ax, word [0x4a06f6]
mov cx, ax
mov edx, ecx
inc edx
mov ax, dx
mov word [0x4a06f6], ax
add ecx, 0xdb468136
mov ax, cx
mov word [0x49fac8], ax
lea eax, [esp + 0x5a8]
lea ecx, [esp + 0x12b]
mov edx, dword [esp + 0x5d8]
mov esi, esp
mov dword [esi], edx
lea edx, [esp + 0x5a8]
mov dword [esp + 0xa8], ecx
mov ecx, edx
mov dword [esp + 0xa4], eax
call fcn.00423f60
sub esp, 4
mov ecx, dword [0x49f0f4]
and ecx, 0xbb3a6701
mov dword [0x49f0f4], ecx
mov ecx, dword [esp + 0x5d8]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xa0], eax
call fcn.0041ee00
mov di, word [0x4a0550]
mov ax, di
add eax, 0x4f48f5af
mov di, ax
mov word [0x4a0550], di
mov eax, dword [esp + 0xa4]
mov ecx, eax
call fcn.0041bdd0
lea ecx, [esp + 0x5a8]
mov dword [esp + 0x9c], eax
call fcn.0040c450
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0x98], ecx
call fcn.0042d360
cmp eax, 0
jne 0x44a9c1
mov eax, dword [0x49da18]
shl eax, 5
mov cx, word [0x49fd70]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x49fd70], cx
cmp dword [0x4a09c4], 6
jb 0x449e92
mov eax, 0x4e6c1ee4
mov ecx, dword [0x49d9f0]
sar ecx, 3
mov edx, dword [0x49f8f0]
shl edx, 7
and ecx, edx
mov edx, dword [0x49f418]
or ecx, edx
cmp eax, ecx
jge 0x449da7
mov ax, word [0x4a065a]
movsx ecx, ax
or ecx, 0x5fcb3de5
mov edx, dword [0x49f26c]
shl edx, 2
or edx, 0xaabc7fe5
cmp ecx, edx
je 0x449da2
mov dword [0x49e6d8], 0x37bfe3a6
jmp 0x449da7
mov eax, esp
mov dword [eax + 4], 0x12
mov dword [eax], 0x5cea
call fcn.00448630
mov dword [esp + 0x5d4], eax
mov eax, dword [0x49e800]
sar eax, 5
or eax, 0xc8a77653
mov ecx, dword [0x49ec0c]
xor ecx, eax
mov dword [0x49ec0c], ecx
mov eax, dword [esp + 0x5d4]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12b]
mov dword [ecx], eax
mov dword [ecx + 8], 0x4a0a54
call fcn.0045548b
mov ecx, dword [0x49dfe4]
xor ecx, 0xffffffff
or ecx, 0x4ceeaaab
cmp ecx, 0xe901dfc7
mov dword [esp + 0x94], eax
jl 0x449e3b
mov eax, dword [0x49ee60]
mov cx, word [0x49fd1a]
mov dx, cx
or edx, eax
mov cx, dx
mov word [0x49fd1a], cx
mov eax, 0x2c70628b
mov ecx, dword [esp + 0x5d4]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x12
mov dword [esp + 0x90], eax
call fcn.0041ee00
mov eax, dword [0x49dd8c]
imul eax, eax, 0xb246fa44
imul eax, eax, 0x13f1ad70
mov ecx, dword [esp + 0x90]
cmp ecx, eax
jg 0x449e8d
mov eax, dword [0x49ddcc]
add eax, 0x82012088
mov dword [0x49ddcc], eax
jmp 0x449f6f
mov ax, word [0x49fdfc]
movsx ecx, ax
imul ecx, ecx, 0xb76de2ce
mov edx, dword [0x49e41c]
or edx, ecx
mov dword [0x49e41c], edx
mov ecx, esp
mov dword [ecx + 4], 0x24
mov dword [ecx], 0xb17
call fcn.00448630
mov dword [esp + 0x5d0], eax
mov eax, dword [0x49e678]
mov ecx, eax
dec ecx
mov dword [0x49e678], ecx
mov ecx, dword [0x49ef1c]
mov edx, ecx
inc edx
mov dword [0x49ef1c], edx
sub ecx, 0xe426838b
or ecx, 0xcc780b43
cmp eax, ecx
jne 0x449f05
mov dword [0x49f4c4], 0xeecff9fc
mov eax, dword [esp + 0x5d0]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12b]
mov dword [ecx], eax
mov dword [ecx + 8], 0x4a0a54
call fcn.0045548b
mov ecx, dword [0x49df34]
or ecx, 0x623f6d77
mov dword [0x49df34], ecx
mov ecx, dword [esp + 0x5d0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x24
mov dword [esp + 0x8c], eax
call fcn.0041ee00
mov si, word [0x49fc62]
mov ax, si
or eax, 0xfbc3
mov si, ax
mov word [0x49fc62], si
mov eax, dword [0x49f8a4]
add eax, 0xa11958da
mov dword [0x49f8a4], eax
mov byte [esp + 0x5a7], 0
mov eax, dword [0x49e124]
mov ecx, 0x1c401ddc
sub ecx, eax
mov eax, dword [0x49da74]
sub eax, ecx
mov dword [0x49da74], eax
mov eax, dword [0x4a1408]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12b]
mov dword [ecx], eax
mov dword [esp + 0x88], eax
call fcn.004552a0
mov dword [0x49df98], 0x6310bb8d
mov ecx, dword [0x49d908]
mov edx, esp
mov esi, dword [esp + 0x88]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0x84], eax
call ecx
sub esp, 8
mov ecx, dword [0x49eddc]
add ecx, 0x951e32f2
or ecx, 0x92eb972a
cmp ecx, 0xde3c7317
mov dword [esp + 0x80], eax
je 0x44a020
mov eax, dword [0x49dab8]
imul eax, eax, 0x7af6d1e0
mov dword [0x49dab8], eax
mov eax, esp
lea ecx, [esp + 0x12b]
mov dword [eax + 4], ecx
mov dword [eax], 0x4a0bf8
call fcn.00455290
mov ecx, dword [0x49decc]
cmp ecx, 0xbd251d40
mov dword [esp + 0x7c], eax
jl 0x44a06d
mov eax, dword [0x49f338]
xor eax, 0x692d
mov cx, word [0x49fcb2]
mov dx, cx
add edx, eax
mov cx, dx
mov word [0x49fcb2], cx
mov eax, esp
lea ecx, [esp + 0x12b]
mov dword [eax], ecx
call fcn.00425a10
mov dword [esp + 0x124], eax
mov eax, dword [0x49f164]
or eax, 0x34842dca
cmp eax, 0x410ef64d
jg 0x44a0a3
mov dword [0x49f450], 0xff460717
lea eax, [esp + 0x5a8]
lea ecx, [esp + 0x12b]
mov edx, dword [0x49d908]
mov esi, esp
lea edi, [esp + 0x12b]
mov dword [esi], edi
mov dword [esi + 4], 0
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], ecx
mov dword [esp + 0x70], edi
call edx
sub esp, 8
mov ecx, dword [0x49f5dc]
imul ecx, ecx, 0x652e9667
mov dword [0x49f5dc], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x5214
mov dword [esp + 0x6c], eax
call fcn.00448630
mov dword [esp + 0x5cc], eax
mov eax, dword [0x49ea9c]
add eax, 0xa0832710
mov dword [0x49ea9c], eax
mov eax, dword [esp + 0x5cc]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x70]
mov dword [ecx], eax
call fcn.004552a0
mov ecx, dword [0x49e0dc]
mov edx, ecx
inc edx
mov dword [0x49e0dc], edx
mov edx, dword [0x49f808]
not edx
neg edx
lea ecx, [ecx + edx + 0x2dc2e9a2]
mov bx, word [0x4a0564]
mov dx, bx
add edx, ecx
mov bx, dx
mov word [0x4a0564], bx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x6aa8
mov dword [esp + 0x68], eax
call fcn.00448630
mov dword [esp + 0x5c8], eax
mov eax, dword [0x49f978]
mov ecx, dword [0x49f098]
xor ecx, eax
mov dword [0x49f098], ecx
mov eax, dword [esp + 0x5cc]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.0041ee00
mov eax, dword [0x49f6ec]
or eax, 0x1d135d96
mov dword [0x49f6ec], eax
mov eax, dword [esp + 0x5c8]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x5a8]
call fcn.00423f60
sub esp, 4
mov ecx, dword [0x49f874]
dec ecx
mov dword [0x49f874], ecx
or ecx, 0x76978dd
mov edx, dword [0x49ef2c]
xor edx, ecx
mov dword [0x49ef2c], edx
mov ecx, dword [esp + 0x5c8]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x64], eax
call fcn.0041ee00
mov bx, word [0x49fc32]
mov ax, bx
xor eax, 0x6a92
mov bx, ax
mov word [0x49fc32], bx
mov eax, dword [esp + 0x78]
mov ecx, eax
call fcn.0041bdd0
lea ecx, [esp + 0x5a8]
mov dword [esp + 0x60], eax
call fcn.0040c450
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0x5c], ecx
call fcn.0042d360
cmp eax, 0
jne 0x44a9a9
mov eax, 0x8fa46d0a
mov ecx, dword [0x49f8d0]
add ecx, 0xc2cd6b69
mov edx, dword [0x49e290]
or edx, ecx
mov dword [0x49e290], edx
mov ecx, dword [0x49d8b0]
mov edx, esp
lea esi, [esp + 0x12b]
mov dword [edx + 4], esi
mov dword [edx], 0x104
mov dword [esp + 0x58], eax
call ecx
sub esp, 8
mov di, word [0x49fafa]
movsx ecx, di
mov di, word [0x49fdc6]
mov dx, di
dec edx
mov di, dx
mov word [0x49fdc6], di
movsx edx, di
add ecx, edx
mov edx, dword [esp + 0x58]
cmp edx, ecx
mov dword [esp + 0x54], eax
jne 0x44a30f
mov eax, dword [0x49eda4]
add eax, 0x319ef330
mov cx, word [0x49fb3c]
mov dx, cx
and edx, eax
mov cx, dx
mov word [0x49fb3c], cx
mov eax, esp
lea ecx, [esp + 0x12b]
mov dword [eax], ecx
call fcn.00452000
mov dword [esp + 0x124], eax
mov eax, dword [0x49ee64]
add eax, 0xd215d7a9
mov dword [0x49ee64], eax
mov eax, dword [esp + 0x124]
add eax, 0xfffffffe
mov dword [esp + 0x124], eax
mov eax, dword [0x49f818]
add eax, 0x96d9999c
mov dword [0x49f818], eax
mov eax, dword [esp + 0x124]
mov dword [esp + 0x120], eax
cmp dword [esp + 0x120], 0
jle 0x44a4f3
mov eax, dword [0x49f49c]
add eax, 0x1302219e
cmp eax, 0x44a3adab
je 0x44a3c2
mov ax, word [0x49fa26]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x49fa26], ax
movsx ecx, ax
xor ecx, 0x28ba177c
cmp ecx, 0x4ed1bcd7
je 0x44a3bd
mov eax, dword [0x49f684]
add eax, 0xcff02e80
mov dword [0x49f684], eax
jmp 0x44a3c2
mov eax, dword [esp + 0x120]
movsx eax, byte [esp + eax + 0x12b]
cmp eax, 0x5c
jne 0x44a4bc
mov ax, word [0x4a0850]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x4a0850], dx
movsx ecx, ax
mov esi, dword [0x49f87c]
mov edi, esi
inc edi
mov dword [0x49f87c], edi
xor ecx, esi
mov esi, dword [0x49f50c]
and esi, ecx
mov dword [0x49f50c], esi
mov ecx, dword [esp + 0x120]
inc ecx
mov dword [esp + 0x120], ecx
mov ax, word [0x49fe6c]
mov cx, ax
mov esi, ecx
dec esi
mov ax, si
mov word [0x49fe6c], ax
mov ax, word [0x49fb2e]
mov si, ax
or esi, ecx
mov ax, si
mov word [0x49fb2e], ax
mov ecx, dword [esp + 0x120]
mov byte [esp + ecx + 0x12b], 0
mov ax, word [0x4a0692]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x4a0692], dx
movsx ecx, ax
mov esi, dword [0x49e5a4]
and esi, 0xdcc3ce0f
or ecx, esi
cmp ecx, 0x36f88050
jle 0x44a4a0
mov ax, word [0x4a0792]
mov cx, ax
xor ecx, 0x9928
mov ax, cx
mov word [0x4a0792], ax
mov eax, dword [esp + 0x120]
mov dword [esp + 0x124], eax
mov word [0x49ffae], 0x8e6a
jmp 0x44a4f3
mov eax, dword [0x49f4c0]
dec eax
mov dword [0x49f4c0], eax
mov ecx, dword [0x49e758]
or eax, ecx
mov ecx, dword [0x49f644]
sub ecx, eax
mov dword [0x49f644], ecx
mov eax, dword [esp + 0x120]
add eax, 0xffffffff
mov dword [esp + 0x120], eax
jmp 0x44a363
mov eax, 0x428a32bb
mov word [0x49fbbe], 0xdc5c
mov ecx, esp
lea edx, [esp + 0x12b]
mov dword [ecx + 4], edx
mov dword [ecx], 0x4a0bf8
mov dword [esp + 0x50], eax
call fcn.00455290
mov ecx, dword [0x49f500]
xor ecx, 0x937cc1bf
mov edx, dword [esp + 0x50]
cmp edx, ecx
mov dword [esp + 0x4c], eax
jl 0x44a570
mov eax, 0xc9b95ad5
mov ecx, dword [0x49da74]
and ecx, 0xe6d0b116
mov edx, dword [0x49f3fc]
xor edx, 0xffffffff
sub eax, edx
cmp ecx, eax
jne 0x44a56b
mov eax, dword [0x49edf4]
or eax, 0x43ddfa9e
mov dword [0x49edf4], eax
jmp 0x44a570
mov eax, esp
lea ecx, [esp + 0x12b]
mov dword [eax], ecx
mov dword [esp + 0x48], ecx
call fcn.00425a10
mov dword [esp + 0x124], eax
mov dx, word [0x49fc52]
mov ax, dx
or eax, 0xb47d
mov dx, ax
mov word [0x49fc52], dx
mov eax, dword [0x49d908]
mov ecx, esp
mov esi, dword [esp + 0x48]
mov dword [ecx], esi
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov dx, word [0x4a048a]
mov cx, dx
imul ecx, ecx, 0xd576b31c
mov dx, cx
mov word [0x4a048a], dx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x5214
mov dword [esp + 0x44], eax
call fcn.00448630
mov dword [esp + 0x5c4], eax
mov dx, word [0x4a07cc]
movsx eax, dx
imul eax, eax, 0x4cdd61ce
xor eax, 0x7a78f364
cmp eax, 0x6a572104
jne 0x44a657
mov eax, 0x9d31bc3c
mov ecx, dword [0x49f1d8]
dec ecx
mov dword [0x49f1d8], ecx
cmp eax, ecx
jle 0x44a652
mov eax, 0x35064a4f
mov ecx, dword [0x49d9dc]
cmp eax, ecx
je 0x44a648
jmp 0x44a64d
jmp 0x44a64d
jmp 0x44a652
jmp 0x44a69c
mov ax, word [0x49fc22]
movsx ecx, ax
cmp ecx, 0xc2a5361f
jg 0x44a680
mov eax, dword [0x49e2cc]
or eax, 0x9d1de9b0
mov dword [0x49e2cc], eax
jmp 0x44a697
mov eax, dword [0x49f0b4]
mov ecx, dword [0x49f820]
or eax, ecx
or eax, 0x30771344
mov dword [0x49f820], eax
jmp 0x44a69c
lea eax, [esp + 0x5a8]
lea ecx, [esp + 0x12b]
mov edx, dword [esp + 0x5c4]
mov esi, esp
mov dword [esi + 4], edx
lea edx, [esp + 0x12b]
mov dword [esi], edx
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], ecx
call fcn.004552a0
mov di, word [0x49fd66]
mov cx, di
xor ecx, 0x2556
mov di, cx
mov word [0x49fd66], di
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x6aa8
mov dword [esp + 0x38], eax
call fcn.00448630
mov dword [esp + 0x5c0], eax
mov di, word [0x4a034e]
movsx eax, di
not eax
and eax, 0x681d80e1
mov ecx, dword [0x49dc64]
sub ecx, eax
mov dword [0x49dc64], ecx
mov eax, dword [esp + 0x5c4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.0041ee00
mov eax, dword [0x49e0f0]
not eax
mov ecx, dword [0x49e4d0]
add ecx, eax
mov dword [0x49e4d0], ecx
mov eax, dword [esp + 0x5c0]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x5a8]
call fcn.00423f60
sub esp, 4
mov di, word [0x49fe90]
mov cx, di
mov di, word [0x49ff02]
mov dx, di
lea ecx, [ecx + edx - 0x2cd435e4]
mov di, cx
mov word [0x49ff02], di
mov ecx, dword [esp + 0x5c0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x34], eax
call fcn.0041ee00
mov eax, dword [0x49edd4]
or eax, 0xdbeeeeae
mov dword [0x49edd4], eax
mov eax, dword [esp + 0x40]
mov ecx, eax
call fcn.0041bdd0
lea ecx, [esp + 0x5a8]
mov dword [esp + 0x30], eax
call fcn.0040c450
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0x2c], ecx
call fcn.0042d360
cmp eax, 0
jne 0x44a993
mov eax, dword [0x49eb88]
add eax, eax
mov ecx, 0x1b032592
sub ecx, eax
and ecx, 0xfcc6
mov dx, word [0x4a0582]
mov ax, dx
add eax, ecx
mov dx, ax
mov word [0x4a0582], dx
mov eax, dword [0x49d8b0]
mov ecx, esp
lea esi, [esp + 0x12b]
mov dword [ecx + 4], esi
mov dword [ecx], 0x104
mov dword [esp + 0x28], esi
call eax
sub esp, 8
mov ecx, dword [0x49e788]
xor ecx, 0xa1b10001
mov dword [0x49e788], ecx
mov ecx, esp
mov esi, dword [esp + 0x28]
mov dword [ecx + 4], esi
mov dword [ecx], 0x4a0bf8
mov dword [esp + 0x24], eax
call fcn.00455290
mov dword [0x49ec1c], 0xe54b9bc5
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x5214
mov dword [esp + 0x20], eax
call fcn.00448630
mov dword [esp + 0x5bc], eax
mov dx, word [0x49fe34]
mov ax, dx
add eax, 0xf7dfefb6
mov dx, ax
mov word [0x49fe34], dx
mov eax, dword [esp + 0x5bc]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x28]
mov dword [ecx], eax
call fcn.004552a0
mov dx, word [0x4a0830]
mov cx, dx
dec ecx
mov di, cx
mov word [0x4a0830], di
movsx ecx, dx
imul ecx, ecx, 0x6c5c2870
xor ecx, 0xd3659954
mov esi, dword [0x49e868]
dec esi
mov dword [0x49e868], esi
imul esi, esi, 0xf875d600
mov ebx, dword [0x49e238]
xor esi, ebx
cmp ecx, esi
mov dword [esp + 0x1c], eax
jge 0x44a96d
mov eax, dword [0x49d9fc]
mov ecx, dword [0x49e9f4]
not ecx
or eax, ecx
or eax, 0x79b35875
mov ecx, dword [0x49ed34]
or ecx, 0x86e04abc
cmp eax, ecx
jg 0x44a968
mov ax, word [0x4a0436]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x4a0436], ax
movsx ecx, ax
add ecx, 0x294bb759
mov dword [0x49f91c], ecx
jmp 0x44a96d
mov eax, dword [esp + 0x5bc]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.0041ee00
mov eax, dword [0x49f930]
add eax, 0xcdd0ac6
mov dword [0x49f930], eax
mov eax, dword [0x49e884]
dec eax
mov dword [0x49e884], eax
imul eax, eax, 0x4461aa0e
mov dword [0x49f08c], eax
mov ax, word [0x4a08ca]
mov cx, ax
add ecx, 0xefdbf900
mov ax, cx
mov word [0x4a08ca], ax
mov eax, 0x426d7a4e
mov ecx, dword [0x49e968]
inc ecx
mov dword [0x49e968], ecx
cmp eax, ecx
jge 0x44a9f7
mov eax, dword [0x49e93c]
mov ecx, eax
dec ecx
mov dword [0x49e93c], ecx
mov ecx, dword [0x49e67c]
and ecx, eax
mov dword [0x49e67c], ecx
mov eax, esp
lea ecx, [esp + 0x12b]
mov dword [eax], ecx
mov dword [esp + 0x18], ecx
call fcn.00425a10
mov ecx, dword [0x49f64c]
and ecx, 0x28c9
mov dx, word [0x4a08f2]
mov si, dx
xor esi, ecx
mov dx, si
mov word [0x4a08f2], dx
mov ecx, dword [0x49d8bc]
mov esi, esp
mov edi, dword [esp + 0x18]
mov dword [esi], edi
mov dword [esi + 4], 2
mov dword [esp + 0x14], eax
call ecx
sub esp, 8
mov dx, word [0x4a0508]
mov cx, dx
dec ecx
mov bx, cx
mov word [0x4a0508], bx
movsx ecx, dx
add ecx, 0x38638c7f
mov esi, dword [0x49f5c0]
and esi, 0xc05f68f8
mov dx, word [0x49fb2e]
mov di, dx
dec edi
mov bx, di
mov word [0x49fb2e], bx
movsx edi, dx
and esi, edi
cmp ecx, esi
mov dword [esp + 0x10], eax
jne 0x44aab9
mov eax, dword [0x49f188]
or eax, 0x79cc0cc5
mov ecx, dword [0x49e5e0]
imul ecx, eax
mov dword [0x49e5e0], ecx
jmp 0x44aac9
mov eax, dword [0x49ef04]
imul eax, eax, 0x7ff36ffb
mov dword [0x49ef04], eax
mov eax, esp
lea ecx, [esp + 0x12b]
mov dword [eax], ecx
mov dword [eax + 4], 0x47d
call fcn.0040dc50
mov eax, dword [0x49ee0c]
not eax
or eax, 0x8a32af85
mov ecx, dword [0x49e9b4]
xor ecx, eax
mov dword [0x49e9b4], ecx
lea ecx, [esp + 0x5a8]
call fcn.0043f9b0
add esp, 0x5e8
pop esi
pop edi
pop ebx
ret