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

Disassembly:
push edi
push esi
sub esp, 0x5e8
mov eax, dword [0x490f64]
lea eax, [eax*4 - 0xe1aaf7a]
mov ecx, dword [0x491f4c]
imul ecx, eax
mov dword [0x491f4c], ecx
lea ecx, [esp + 0x5a8]
call fcn.00433db0
mov ecx, dword [0x48ce94]
or ecx, 0x2922a410
mov dword [0x48ce94], ecx
mov dx, word [0x498bd4]
mov cx, dx
add ecx, 0xbab80a68
mov dx, cx
mov word [0x498bd4], dx
mov word [0x49ab82], 0xd4d8
mov ecx, dword [0x494384]
add ecx, 0x158ad74d
mov dword [0x494384], ecx
mov dword [esp + 0x11c], 0
mov ecx, dword [0x48dbf4]
imul ecx, ecx, 0xefabdedd
mov dword [0x48dbf4], ecx
mov dword [0x49b424], 0x94
mov ecx, dword [0x48e5a0]
add ecx, 0x8ad16a4e
mov dword [0x48e5a0], ecx
mov ecx, dword [0x48abc0]
mov esi, esp
mov dword [esi], 0x49b424
mov dword [esp + 0x118], eax
call ecx
sub esp, 4
mov dx, word [0x4960da]
movsx ecx, dx
add ecx, 0x9138a659
xor ecx, 0x89144ae5
mov esi, dword [0x48b700]
and esi, ecx
mov dword [0x48b700], esi
mov dword [esp + 0x114], eax
call fcn.004168c0
mov dword [0x49be20], eax
mov eax, dword [0x491d54]
mov ecx, eax
dec ecx
mov dword [0x491d54], ecx
xor eax, 0x8866a412
or eax, 0x639953e1
mov ecx, dword [0x492bf8]
sub ecx, 0x9f6cf39a
cmp eax, ecx
jg 0x444d98
mov eax, dword [0x49475c]
mov ecx, eax
dec ecx
mov dword [0x49475c], ecx
add eax, 0xc1e8bac3
mov dx, word [0x499062]
mov cx, dx
xor ecx, eax
mov dx, cx
mov word [0x499062], dx
jmp 0x444df7
mov eax, 0x4e004
mov cx, word [0x49845a]
mov dx, cx
dec edx
mov si, dx
mov word [0x49845a], si
movsx edx, cx
cmp eax, edx
jne 0x444df2
mov ax, word [0x49992c]
movsx ecx, ax
imul ecx, ecx, 0xe3cc5515
mov edx, dword [0x491420]
shl edx, 1
add edx, 0x49a1a313
cmp ecx, edx
jge 0x444de8
jmp 0x444ded
jmp 0x444ded
jmp 0x444df2
jmp 0x444df7
call fcn.00438040
mov dword [0x49be24], eax
mov cx, word [0x497c72]
movsx eax, cx
mov edx, dword [0x492770]
add edx, eax
mov dword [0x492770], edx
mov eax, dword [0x49be20]
cmp eax, 0
je 0x445101
mov eax, 0xccaa00cd
mov ecx, dword [0x4919c4]
mov edx, ecx
dec edx
mov dword [0x4919c4], edx
add ecx, 0xc939f0be
cmp eax, ecx
jge 0x444e9c
mov eax, 0x7eeaa187
mov ecx, dword [0x48ba0c]
mov edx, ecx
inc edx
mov dword [0x48ba0c], edx
mov edx, dword [0x48d32c]
mov esi, edx
inc esi
mov dword [0x48d32c], esi
xor ecx, edx
cmp eax, ecx
jge 0x444e97
mov eax, dword [0x4924dc]
mov ecx, eax
dec ecx
mov dword [0x4924dc], ecx
add eax, 0x3019d08d
mov ecx, dword [0x490770]
and ecx, eax
mov dword [0x490770], ecx
jmp 0x444e9c
mov eax, 0x3465fb8d
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx], edx
mov dword [esp + 0x110], eax
mov dword [esp + 0x10c], edx
call fcn.004184f0
mov dword [esp + 0x128], eax
mov si, word [0x4978d4]
mov ax, si
and eax, 0x6168
mov si, ax
mov word [0x4978d4], si
mov eax, dword [esp + 0x128]
mov byte [esp + eax + 0x12e], 0x5c
mov eax, dword [0x494d34]
mov ecx, dword [0x4958f8]
sub eax, ecx
mov ecx, dword [0x48de78]
xor ecx, eax
mov dword [0x48de78], ecx
mov eax, dword [esp + 0x128]
inc eax
mov dword [esp + 0x128], eax
mov eax, dword [0x48c5cc]
imul eax, eax, 0xa05f8bed
mov dword [0x48c5cc], eax
mov eax, dword [esp + 0x128]
mov byte [esp + eax + 0x12e], 0
mov eax, dword [0x48b6c8]
mov ecx, eax
inc ecx
mov dword [0x48b6c8], ecx
imul eax, eax, 0xbf2c0c74
or eax, 0xb44a2eef
mov dword [0x48fec0], eax
mov eax, dword [0x49be60]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x10c]
mov dword [ecx], eax
call fcn.00455f50
mov si, word [0x49862c]
mov cx, si
add ecx, 0xc2ffeb9b
xor ecx, 0x42ef
mov si, cx
mov word [0x496d02], si
mov ecx, dword [0x48ac08]
mov edx, esp
mov edi, dword [esp + 0x10c]
mov dword [edx], edi
mov dword [edx + 4], 0
mov dword [esp + 0x108], eax
call ecx
sub esp, 8
mov ecx, dword [0x490ee0]
sub ecx, 0x4fa8db67
and ecx, 0x9614eb28
mov edx, dword [esp + 0x110]
cmp edx, ecx
mov dword [esp + 0x104], eax
jg 0x444ff1
mov ax, word [0x497d56]
mov cx, ax
add ecx, 0x3da85137
mov ax, cx
mov word [0x497d56], ax
mov eax, 0xde72dbc1
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x26a5
mov dword [esp + 0x100], eax
call fcn.00447ef0
mov dword [esp + 0x5e4], eax
mov eax, dword [0x48f004]
mov ecx, dword [esp + 0x100]
cmp ecx, eax
jl 0x445036
mov dword [0x4908cc], 0x64014690
mov eax, 0x86ec740d
mov ecx, dword [esp + 0x5e4]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x12e]
mov dword [edx], ecx
mov dword [esp + 0xfc], eax
call fcn.00455f50
mov ecx, dword [0x494edc]
sub ecx, 0x4bc4e5be
mov edx, dword [esp + 0xfc]
cmp edx, ecx
mov dword [esp + 0xf8], eax
jl 0x445097
mov eax, dword [0x490888]
imul eax, eax, 0xd197bd99
mov ecx, dword [0x48ad14]
add ecx, eax
mov dword [0x48ad14], ecx
mov eax, 0x26466037
mov ecx, dword [esp + 0x5e4]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xf4], eax
call fcn.00437960
mov eax, dword [0x490dbc]
and eax, 0x3d427767
mov ecx, dword [0x4902f4]
mov edx, dword [esp + 0xf4]
sub edx, ecx
or edx, 0xddbaa2f1
cmp eax, edx
jle 0x4450fc
mov eax, dword [0x4937bc]
shl eax, 6
and eax, 0x5fdec7c0
mov ecx, dword [0x4953e0]
add ecx, eax
mov dword [0x4953e0], ecx
jmp 0x445123
mov eax, dword [0x491e3c]
imul eax, eax, 0xb4fae78d
mov dword [0x491e3c], eax
mov byte [esp + 0x12e], 0
mov dword [0x492ac0], 0xf7fdf3fc
lea eax, [esp + 0x5a8]
lea ecx, [esp + 0x12e]
mov word [0x499910], 0xf7e7
mov edx, esp
mov dword [edx + 4], 0x1f
mov dword [edx], 0x1661
mov dword [esp + 0xf0], eax
mov dword [esp + 0xec], ecx
call fcn.00447ef0
mov dword [esp + 0x5e0], eax
mov si, word [0x497b76]
mov ax, si
add eax, 0xb1d0f68f
mov si, ax
mov word [0x497b76], si
mov eax, dword [esp + 0x5e0]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x5a8]
call fcn.0040f810
sub esp, 4
mov ecx, dword [0x4948dc]
mov edx, ecx
inc edx
mov dword [0x4948dc], edx
mov edx, dword [0x48c3d8]
lea ecx, [ecx + edx + 0x7d88cb80]
mov dword [0x48c3d8], ecx
mov ecx, dword [esp + 0x5e0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xe8], eax
call fcn.00437960
mov si, word [0x49a852]
movsx eax, si
sar eax, 2
mov ecx, dword [0x48c450]
mov edx, ecx
inc edx
mov dword [0x48c450], edx
mov si, word [0x498bd6]
movsx edx, si
sar edx, 6
and ecx, edx
xor eax, ecx
mov ecx, dword [0x48ca58]
and ecx, eax
mov dword [0x48ca58], ecx
mov eax, dword [esp + 0xf0]
mov ecx, eax
call fcn.00435a70
lea ecx, [esp + 0x5a8]
mov dword [esp + 0xe4], eax
call fcn.00431410
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xec]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0xe0], ecx
call fcn.0041f420
cmp eax, 0
je 0x4453a4
mov eax, 0xf10aaabd
mov ecx, dword [0x48d4a0]
and ecx, 0xdfc7061c
cmp eax, ecx
jne 0x44529a
mov eax, dword [0x491ea4]
add eax, 0x7f749700
mov dword [0x491ea4], eax
jmp 0x4452ad
mov eax, dword [0x49064c]
mov ecx, dword [0x490ad8]
and ecx, eax
mov dword [0x490ad8], ecx
mov eax, 0xe5e1a35e
mov dword [esp + 0x11c], 1
mov cx, word [0x495fe4]
mov dx, cx
add edx, 0xad99e573
mov cx, dx
mov word [0x495fe4], cx
mov edx, dword [0x48ab94]
mov esi, esp
lea edi, [esp + 0x12e]
mov dword [esi], edi
mov dword [esp + 0xdc], eax
call edx
sub esp, 4
mov edx, dword [0x48cfd8]
mov esi, dword [esp + 0xdc]
sub esi, edx
xor esi, 0xa19c1a73
cmp esi, 0xd03972c2
mov dword [esp + 0xd8], eax
jne 0x445351
mov eax, dword [0x494ab0]
imul eax, eax, 0x44f35f9b
mov ecx, dword [0x48cf80]
inc ecx
mov dword [0x48cf80], ecx
add ecx, 0x6331b15f
cmp eax, ecx
jle 0x44534c
mov dword [0x490abc], 0xc99ffeef
jmp 0x445351
mov eax, dword [esp + 0x128]
mov byte [esp + eax + 0x12e], 0
mov eax, dword [0x48b310]
and eax, 0xdad62b0b
mov dword [0x48b310], eax
mov eax, dword [0x48ac0c]
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx], edx
call eax
sub esp, 4
mov ecx, dword [0x48b94c]
mov edx, ecx
inc edx
mov dword [0x48b94c], edx
mov si, cx
mov word [0x4979f2], si
mov dword [esp + 0xd4], eax
mov eax, dword [0x48e5a4]
add eax, 0x8a6c782d
mov dword [0x48e5a4], eax
mov eax, esp
lea ecx, [esp + 0x12e]
mov dword [eax], ecx
mov dword [esp + 0xd0], ecx
call fcn.004184f0
mov dword [0x493b2c], 0xf15a079e
mov byte [esp + 0x131], 0
mov ecx, dword [0x48f6e8]
xor ecx, 0x7fee7b56
mov dword [0x48f6e8], ecx
mov ecx, dword [0x49be60]
mov edx, esp
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0xd0]
mov dword [edx], ecx
mov dword [esp + 0xcc], eax
call fcn.00455f50
mov si, word [0x499656]
mov cx, si
dec ecx
mov di, cx
mov word [0x499656], di
movsx ecx, si
mov edx, dword [0x48effc]
cmp ecx, edx
mov dword [esp + 0xc8], eax
jle 0x44545f
mov ax, word [0x4964a2]
movsx ecx, ax
lea ecx, [ecx*4 - 0x28c7285b]
or ecx, 0x9b1a90c7
mov edx, dword [0x48e630]
add edx, ecx
mov dword [0x48e630], edx
mov eax, dword [0x48ac08]
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov dword [esp + 0xc4], edx
call eax
sub esp, 8
mov ecx, dword [0x4946a0]
dec ecx
mov dword [0x4946a0], ecx
mov edx, dword [0x48d9dc]
or edx, ecx
mov dword [0x48d9dc], edx
mov ecx, esp
mov edx, dword [esp + 0xc4]
mov dword [ecx + 4], edx
mov dword [ecx], 0x49b65c
mov dword [esp + 0xc0], eax
call fcn.00455f40
mov si, word [0x499ce6]
mov cx, si
and ecx, 0x6e56
mov si, word [0x49a544]
mov dx, si
xor edx, ecx
mov si, dx
mov word [0x49a544], si
cmp dword [esp + 0x11c], 0
mov dword [esp + 0xbc], eax
jne 0x445551
mov eax, dword [0x48e7dc]
mov ecx, eax
dec ecx
mov dword [0x48e7dc], ecx
add eax, 0xb1a9cde1
or eax, 0x9fa8316
mov ecx, dword [0x48cc5c]
add ecx, eax
mov dword [0x48cc5c], ecx
mov dword [0x49be1c], 0
mov dx, word [0x4994bc]
mov ax, dx
dec eax
mov dx, ax
mov word [0x4994bc], dx
mov dx, word [0x495f68]
mov cx, dx
sub ecx, eax
mov dx, cx
mov word [0x495f68], dx
mov ax, word [0x497f64]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x497f64], dx
movsx ecx, ax
add ecx, 0x20dba929
mov ax, word [0x497ef8]
movsx esi, ax
shl esi, 0xa
and ecx, esi
mov esi, dword [0x49284c]
and esi, ecx
mov dword [0x49284c], esi
mov ecx, esp
lea esi, [esp + 0x12e]
mov dword [ecx], esi
mov dword [esp + 0xb8], esi
call fcn.004290d0
mov dword [esp + 0x128], eax
mov eax, dword [0x48ebe4]
imul eax, eax, 0xc7ca3761
mov dword [0x48ebe4], eax
mov eax, dword [0x48ac08]
mov ecx, esp
mov esi, dword [esp + 0xb8]
mov dword [ecx], esi
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov ecx, dword [0x492280]
dec ecx
mov dword [0x492280], ecx
xor ecx, 0xe5930ecf
mov esi, dword [0x48f91c]
or esi, ecx
mov dword [0x48f91c], esi
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x26a5
mov dword [esp + 0xb4], eax
call fcn.00447ef0
mov dword [esp + 0x5dc], eax
mov eax, dword [0x493ddc]
xor eax, 0x78d12143
mov dword [0x493ddc], eax
mov eax, dword [esp + 0x5dc]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0xb8]
mov dword [ecx], eax
call fcn.00455f50
mov dword [0x492558], 0xf16afc60
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x1661
mov dword [esp + 0xb0], eax
call fcn.00447ef0
mov dword [esp + 0x5d8], eax
mov eax, dword [0x48bbd8]
imul eax, eax, 0xcfbf4bb0
mov dword [0x48bbd8], eax
mov eax, dword [esp + 0x5dc]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00437960
mov eax, dword [0x49378c]
add eax, 0x2610088
mov dword [0x49378c], eax
mov eax, dword [esp + 0x5d8]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x5a8]
call fcn.0040f810
sub esp, 4
mov ecx, dword [0x48e810]
mov esi, ecx
inc esi
mov dword [0x48e810], esi
add ecx, 0xe45bd07a
mov esi, dword [0x48f1f4]
or ecx, esi
mov dx, word [0x4981ac]
mov si, dx
inc esi
mov di, si
mov word [0x4981ac], di
movsx esi, dx
cmp ecx, esi
mov dword [esp + 0xac], eax
je 0x44570f
mov eax, dword [0x48ca0c]
xor eax, 0x244a4ef5
mov dword [0x48ca0c], eax
lea eax, [esp + 0x5a8]
lea ecx, [esp + 0x12e]
mov edx, dword [esp + 0x5d8]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0x1f
mov dword [esp + 0xa8], eax
mov dword [esp + 0xa4], ecx
call fcn.00437960
mov di, word [0x495dce]
movsx eax, di
add eax, 0xc7881a8a
mov ecx, dword [0x48db7c]
sub ecx, eax
mov dword [0x48db7c], ecx
mov eax, dword [esp + 0xa8]
mov ecx, eax
call fcn.00435a70
lea ecx, [esp + 0x5a8]
mov dword [esp + 0xa0], eax
call fcn.00431410
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0x9c], ecx
call fcn.0041f420
cmp eax, 0
jne 0x44644a
mov eax, dword [0x48be1c]
cmp eax, 0xb7501a3f
jne 0x4457da
mov eax, dword [0x494a08]
or eax, 0x411fbda
mov dword [0x494a08], eax
cmp dword [0x49b428], 6
jb 0x44590a
mov eax, 0xc68e3490
mov ecx, dword [0x491848]
dec ecx
mov dword [0x491848], ecx
cmp eax, ecx
jg 0x445819
mov ax, word [0x49af48]
mov cx, ax
and ecx, 0xf549
mov ax, cx
mov word [0x49af48], ax
mov eax, 0xb32b0d0b
mov ecx, esp
mov dword [ecx + 4], 0x12
mov dword [ecx], 0x12a6
mov dword [esp + 0x98], eax
call fcn.00447ef0
mov dword [esp + 0x5d4], eax
mov eax, dword [0x495838]
add eax, 0xa8fe70d7
mov dword [0x495838], eax
mov eax, dword [esp + 0x5d4]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12e]
mov dword [ecx], eax
mov dword [ecx + 8], 0x49b4b8
call fcn.004561ce
mov dx, word [0x4988aa]
mov cx, dx
dec ecx
mov dx, cx
mov word [0x4988aa], dx
movsx ecx, dx
mov esi, dword [esp + 0x98]
cmp esi, ecx
mov dword [esp + 0x94], eax
jge 0x4458c3
mov ax, word [0x497b44]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x497b44], dx
movsx ecx, ax
mov esi, dword [0x48e5f4]
add esi, ecx
mov dword [0x48e5f4], esi
mov eax, dword [esp + 0x5d4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x12
call fcn.00437960
mov eax, dword [0x48d0dc]
sar eax, 5
mov dx, word [0x4981c4]
movsx ecx, dx
not ecx
imul eax, ecx
mov ecx, dword [0x4947ec]
imul eax, ecx
imul eax, eax, 0xa741f2cc
mov dword [0x4947ec], eax
jmp 0x445a01
mov eax, 0x8af379c3
mov ecx, dword [0x48fc44]
dec ecx
mov dword [0x48fc44], ecx
cmp eax, ecx
jle 0x44594e
mov eax, dword [0x4925a8]
and eax, 0x503e
xor eax, 0x1bea
mov cx, word [0x499c26]
mov dx, cx
add edx, eax
mov cx, dx
mov word [0x499c26], cx
jmp 0x44595e
mov eax, dword [0x48c844]
imul eax, eax, 0xfa3a8c31
mov dword [0x48c844], eax
mov eax, esp
mov dword [eax + 4], 0x24
mov dword [eax], 0x31e7
call fcn.00447ef0
mov dword [esp + 0x5d0], eax
mov eax, dword [0x48fac4]
add eax, 0x7dedd1ff
mov dword [0x48fac4], eax
mov eax, dword [esp + 0x5d0]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12e]
mov dword [ecx], eax
mov dword [ecx + 8], 0x49b4b8
call fcn.004561ce
mov ecx, dword [0x48dbcc]
mov edx, ecx
dec edx
mov dword [0x48dbcc], edx
add ecx, 0x1c2922bb
mov si, word [0x499fe8]
mov dx, si
xor edx, ecx
mov si, dx
mov word [0x499fe8], si
mov ecx, dword [esp + 0x5d0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x24
mov dword [esp + 0x90], eax
call fcn.00437960
mov eax, dword [0x4952d8]
xor eax, 0xfc7d5861
mov dword [0x4952d8], eax
mov eax, 0x61399dd5
mov ecx, dword [0x48fea4]
mov dx, word [0x4964a0]
mov si, dx
xor esi, ecx
mov dx, si
mov word [0x4964a0], dx
mov byte [esp + 0x5a7], 0
mov ecx, dword [0x490098]
or ecx, 0xf708af13
mov dword [0x490098], ecx
mov ecx, dword [0x49be60]
mov esi, esp
mov dword [esi + 4], ecx
lea ecx, [esp + 0x12e]
mov dword [esi], ecx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], ecx
call fcn.00455f50
mov ecx, dword [0x48d7cc]
add ecx, 0xdaa8273f
mov dword [0x493614], ecx
mov ecx, dword [0x48ac08]
mov esi, esp
mov edi, dword [esp + 0x88]
mov dword [esi], edi
mov dword [esi + 4], 0
mov dword [esp + 0x84], eax
call ecx
sub esp, 8
mov dx, word [0x499078]
mov cx, dx
xor ecx, 0x98fd
mov dx, word [0x499cd8]
mov si, dx
sub esi, ecx
mov dx, si
mov word [0x499cd8], dx
mov ecx, esp
mov esi, dword [esp + 0x88]
mov dword [ecx + 4], esi
mov dword [ecx], 0x49b65c
mov dword [esp + 0x80], eax
call fcn.00455f40
mov ecx, dword [0x495770]
imul ecx, ecx, 0x16aaf000
mov dword [0x495228], ecx
mov ecx, esp
mov esi, dword [esp + 0x88]
mov dword [ecx], esi
mov dword [esp + 0x7c], eax
call fcn.004290d0
mov dword [esp + 0x128], eax
mov dx, word [0x4972d2]
mov ax, dx
add eax, 0x2b7f7205
mov dx, ax
mov word [0x4972d2], dx
mov eax, dword [0x48ac08]
mov ecx, esp
mov esi, dword [esp + 0x88]
mov dword [ecx], esi
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov ecx, dword [0x490a18]
and ecx, 0x1eb55247
mov dword [0x48b544], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x26a5
mov dword [esp + 0x78], eax
call fcn.00447ef0
mov dword [esp + 0x5cc], eax
mov dword [0x48fe20], 0xae5f1d6f
mov eax, dword [esp + 0x5cc]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x88]
mov dword [ecx], eax
call fcn.00455f50
mov ecx, dword [0x48dcf4]
add ecx, 0xae9b16f7
mov esi, dword [0x495094]
xor ecx, esi
xor ecx, 0x2208eb14
mov dword [0x495094], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x1661
mov dword [esp + 0x74], eax
call fcn.00447ef0
mov dword [esp + 0x5c8], eax
mov eax, dword [0x49091c]
not eax
or eax, 0x78bef961
mov ecx, dword [0x48d9b0]
xor ecx, eax
mov dword [0x48d9b0], ecx
mov eax, dword [esp + 0x5cc]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00437960
mov eax, dword [0x48de18]
xor eax, 0xffffffff
mov ecx, dword [esp + 0x8c]
cmp ecx, eax
jge 0x445c2f
mov eax, dword [0x494eac]
add eax, 0x4c22916e
mov dword [0x494eac], eax
jmp 0x445c47
mov ax, word [0x496824]
mov cx, ax
add ecx, 0xca78834c
mov ax, cx
mov word [0x496824], ax
mov eax, dword [esp + 0x5c8]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x5a8]
call fcn.0040f810
sub esp, 4
mov dx, word [0x4995f6]
mov cx, dx
add ecx, 0xc82259c2
mov dx, cx
mov word [0x4995f6], dx
mov ecx, dword [esp + 0x5c8]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], 0x1f
mov dword [esp + 0x70], eax
call fcn.00437960
mov dx, word [0x497900]
movsx eax, dx
cmp eax, 0x8d3260d3
jne 0x445cc3
mov ax, word [0x498e0c]
mov cx, ax
imul ecx, ecx, 0x98f67f2c
mov ax, cx
mov word [0x498e0c], ax
lea eax, [esp + 0x5a8]
lea ecx, [esp + 0x12e]
mov dword [esp + 0x6c], ecx
mov ecx, eax
call fcn.00435a70
lea ecx, [esp + 0x5a8]
mov dword [esp + 0x68], eax
call fcn.00431410
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0x64], ecx
call fcn.0041f420
cmp eax, 0
jne 0x446426
mov eax, 0xa0046243
mov cx, word [0x496458]
mov dx, cx
or edx, 0x424
mov cx, dx
mov word [0x496458], cx
mov edx, dword [0x48abb0]
mov esi, esp
lea edi, [esp + 0x12e]
mov dword [esi + 4], edi
mov dword [esi], 0x104
mov dword [esp + 0x60], eax
call edx
sub esp, 8
mov edx, dword [0x491088]
shl edx, 3
xor edx, 0xb7649a06
mov esi, dword [esp + 0x60]
cmp esi, edx
mov dword [esp + 0x5c], eax
jne 0x445da0
mov eax, dword [0x48badc]
mov ecx, 0xe33dfdf7
sub ecx, eax
or ecx, 0xa24269f5
mov eax, dword [0x4940e8]
sub eax, ecx
mov dword [0x4940e8], eax
jmp 0x445e14
mov eax, 0x534038a3
mov cx, word [0x4961c8]
movsx edx, cx
imul edx, edx, 0xd4be32d4
mov esi, dword [0x493d10]
mov edi, esi
dec edi
mov dword [0x493d10], edi
add edx, esi
cmp eax, edx
jg 0x445ddd
mov dword [0x4944f0], 0xd8f5ceff
jmp 0x445e0f
mov eax, dword [0x4956e0]
not eax
mov ecx, dword [0x48c6c8]
dec ecx
mov dword [0x48c6c8], ecx
imul eax, ecx
add eax, 0x922ece60
mov dx, word [0x49875e]
mov cx, dx
xor ecx, eax
mov dx, cx
mov word [0x49875e], dx
jmp 0x445e14
mov eax, 0xf6eb4adc
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx], edx
mov dword [esp + 0x58], eax
call fcn.00452df0
mov dword [esp + 0x128], eax
mov eax, dword [0x48cfb0]
mov ecx, eax
dec ecx
mov dword [0x48cfb0], ecx
mov ecx, dword [esp + 0x58]
cmp ecx, eax
jg 0x445e65
mov ax, word [0x49837c]
movsx ecx, ax
mov edx, dword [0x48e420]
and edx, ecx
mov dword [0x48e420], edx
mov eax, 0x9722756
mov ecx, dword [esp + 0x128]
add ecx, 0xfffffffe
mov dword [esp + 0x128], ecx
mov ecx, dword [0x490748]
and ecx, 0x1afc1d86
cmp eax, ecx
jg 0x445ecb
mov eax, 0xf4cd0419
mov ecx, dword [0x48b9ac]
inc ecx
mov dword [0x48b9ac], ecx
cmp eax, ecx
jge 0x445ec6
mov eax, 0xd11d1ffa
mov ecx, dword [0x495278]
cmp eax, ecx
jne 0x445ec1
jmp 0x445ec1
jmp 0x445ec6
jmp 0x445ecb
mov eax, dword [esp + 0x128]
mov dword [esp + 0x124], eax
cmp dword [esp + 0x124], 0
jle 0x445ffb
mov eax, 0x9a24f282
mov ecx, dword [0x494bc4]
sar ecx, 9
imul ecx, ecx, 0xfced7977
imul ecx, ecx, 0xeb39b960
cmp eax, ecx
jle 0x445f24
mov eax, dword [0x4909b4]
mov cx, word [0x49a01e]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x49a01e], cx
mov eax, dword [esp + 0x124]
movsx eax, byte [esp + eax + 0x12e]
cmp eax, 0x5c
jne 0x445fcd
mov eax, dword [0x48c820]
add eax, 0x1d317f5e
mov dword [0x48c820], eax
mov eax, dword [esp + 0x124]
inc eax
mov dword [esp + 0x124], eax
mov eax, dword [0x4922c8]
shl eax, 2
xor eax, 0x44e1
mov cx, ax
mov word [0x4968fa], cx
mov eax, dword [esp + 0x124]
mov byte [esp + eax + 0x12e], 0
mov cx, word [0x499546]
mov ax, cx
or eax, 0x2948
mov cx, ax
mov word [0x499546], cx
mov eax, dword [esp + 0x124]
mov dword [esp + 0x128], eax
mov eax, dword [0x48f474]
mov edx, eax
dec edx
mov dword [0x48f474], edx
add eax, 0xd0b6daea
mov edx, dword [0x48d58c]
sub edx, eax
mov dword [0x48d58c], edx
jmp 0x445ffb
mov ax, word [0x4973b8]
mov cx, ax
add ecx, 0xfe45002f
mov ax, cx
mov word [0x4973b8], ax
mov eax, dword [esp + 0x124]
add eax, 0xffffffff
mov dword [esp + 0x124], eax
jmp 0x445ed9
mov eax, 0x974c2a68
mov ecx, dword [0x4907a8]
xor ecx, 0x2c558c9d
mov dword [0x4907a8], ecx
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx + 4], edx
mov dword [ecx], 0x49b65c
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], edx
call fcn.00455f40
mov ecx, dword [0x48b6bc]
and ecx, 0x8ccfe3bc
mov dword [0x48b6bc], ecx
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [esp + 0x4c], eax
call fcn.004290d0
mov dword [esp + 0x128], eax
mov eax, dword [0x490da0]
add eax, 0xc6902396
xor eax, 0x30a3bec
mov ecx, dword [0x491434]
or ecx, eax
mov dword [0x491434], ecx
mov eax, dword [0x48ac08]
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov si, word [0x4975dc]
mov cx, si
and ecx, 0x4636
mov si, cx
mov word [0x4975dc], si
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x26a5
mov dword [esp + 0x48], eax
call fcn.00447ef0
mov dword [esp + 0x5c4], eax
mov eax, dword [0x492d68]
imul eax, eax, 0x3cd5fdbf
mov dword [0x492d68], eax
mov eax, dword [esp + 0x5c4]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x50]
mov dword [ecx], eax
call fcn.00455f50
mov ecx, dword [0x48ce34]
dec ecx
mov dword [0x48ce34], ecx
xor ecx, 0x4a49
mov si, word [0x49a05a]
mov dx, si
add edx, ecx
mov si, dx
mov word [0x49a05a], si
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x1661
mov dword [esp + 0x44], eax
call fcn.00447ef0
mov dword [esp + 0x5c0], eax
mov eax, dword [0x48c844]
mov ecx, eax
dec ecx
mov dword [0x48c844], ecx
add eax, 0x28c9e788
mov ecx, dword [0x48cc8c]
and eax, ecx
mov ecx, dword [0x48b8d0]
sub ecx, eax
mov dword [0x48b8d0], ecx
mov eax, dword [esp + 0x5c4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00437960
mov eax, dword [0x48d89c]
sar eax, 0xa
mov ecx, dword [0x490d28]
add eax, ecx
mov ecx, dword [esp + 0x54]
cmp ecx, eax
jle 0x4461ff
mov eax, dword [0x491060]
not eax
imul eax, eax, 0x1023b01c
mov ecx, dword [0x48d1e0]
mov edx, ecx
inc edx
mov dword [0x48d1e0], edx
mov edx, dword [0x48d108]
mov esi, edx
dec esi
mov dword [0x48d108], esi
add edx, 0x475b529f
or ecx, edx
cmp eax, ecx
jne 0x4461fa
mov ax, word [0x498fe0]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x498fe0], ax
movsx ecx, ax
xor ecx, 0x32070fc6
mov edx, dword [0x48ecfc]
sub edx, ecx
mov dword [0x48ecfc], edx
jmp 0x4461ff
lea eax, [esp + 0x5a8]
lea ecx, [esp + 0x12e]
mov edx, dword [esp + 0x5c0]
mov esi, esp
mov dword [esi], edx
lea edx, [esp + 0x5a8]
mov dword [esp + 0x40], ecx
mov ecx, edx
mov dword [esp + 0x3c], eax
call fcn.0040f810
sub esp, 4
mov ecx, dword [0x48f488]
imul ecx, ecx, 0xdabd5c67
mov dword [0x48f488], ecx
mov ecx, dword [esp + 0x5c0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x38], eax
call fcn.00437960
mov eax, dword [0x4922b8]
and eax, 0xb2340a4b
mov dword [0x4922b8], eax
mov eax, dword [esp + 0x3c]
mov ecx, eax
call fcn.00435a70
lea ecx, [esp + 0x5a8]
mov dword [esp + 0x34], eax
call fcn.00431410
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0x30], ecx
call fcn.0041f420
cmp eax, 0
jne 0x4463fe
mov eax, 0x846a285
mov ecx, dword [0x48ae08]
add ecx, 0x29099019
xor ecx, 0xcf56bd58
mov edx, dword [0x48d278]
add edx, ecx
mov dword [0x48d278], edx
mov ecx, dword [0x48abb0]
mov edx, esp
lea esi, [esp + 0x12e]
mov dword [edx + 4], esi
mov dword [edx], 0x104
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], esi
call ecx
sub esp, 8
mov di, word [0x496046]
mov cx, di
and ecx, 0xbab6
mov di, cx
mov word [0x496046], di
mov ecx, esp
mov edx, dword [esp + 0x28]
mov dword [ecx + 4], edx
mov dword [ecx], 0x49b65c
mov dword [esp + 0x24], eax
call fcn.00455f40
mov di, word [0x4970f6]
mov cx, di
or ecx, 0x7eae
mov di, cx
mov word [0x4970f6], di
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x26a5
mov dword [esp + 0x20], eax
call fcn.00447ef0
mov dword [esp + 0x5bc], eax
mov di, word [0x499972]
movsx eax, di
shl eax, 0xa
sub eax, 0x37c3d128
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
jg 0x4463b1
mov eax, dword [0x48da58]
inc eax
mov dword [0x48da58], eax
imul eax, eax, 0xe4fd8248
and eax, 0xa081b940
mov ecx, dword [0x48eea0]
sub ecx, eax
mov dword [0x48eea0], ecx
mov eax, dword [esp + 0x5bc]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12e]
mov dword [ecx], eax
call fcn.00455f50
mov word [0x49997c], 0xe071
mov ecx, dword [esp + 0x5bc]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x1c], eax
call fcn.00437960
mov eax, dword [0x490f7c]
add eax, 0x2cf16a54
mov dword [0x490f7c], eax
mov eax, dword [0x48ed80]
mov ecx, dword [0x48d3c8]
or eax, ecx
or eax, 0xa474
mov dx, word [0x49a08a]
mov cx, dx
and ecx, eax
mov dx, cx
mov word [0x49a08a], dx
mov eax, dword [0x48d1c4]
mov ecx, eax
inc ecx
mov dword [0x48d1c4], ecx
mov dx, word [0x4988a4]
mov cx, dx
and ecx, eax
mov dx, cx
mov word [0x4988a4], dx
mov dword [0x492e50], 0xcff573af
mov eax, esp
lea ecx, [esp + 0x12e]
mov dword [eax], ecx
mov dword [esp + 0x18], ecx
call fcn.004290d0
mov ecx, dword [0x493154]
sar ecx, 8
xor ecx, 0xd8c450e3
mov edx, dword [0x48f450]
imul edx, ecx
mov dword [0x48f450], edx
mov ecx, dword [0x48abbc]
mov edx, esp
mov esi, dword [esp + 0x18]
mov dword [edx], esi
mov dword [edx + 4], 2
mov dword [esp + 0x14], eax
call ecx
sub esp, 8
mov di, word [0x4973b6]
movsx ecx, di
sar ecx, 1
or ecx, 0x38d16a83
mov edx, dword [0x493570]
and edx, ecx
mov dword [0x493570], edx
mov ecx, esp
mov edx, dword [esp + 0x18]
mov dword [ecx], edx
mov dword [ecx + 4], 0x47a
mov dword [esp + 0x10], eax
call fcn.0041c290
mov eax, dword [0x4931bc]
imul eax, eax, 0x9bbb39d7
mov dword [0x4931bc], eax
lea ecx, [esp + 0x5a8]
call fcn.00415f00
add esp, 0x5e8
pop esi
pop edi
ret