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

Disassembly:
push edi
push esi
sub esp, 0x5c0
mov eax, dword [0x48c148]
imul eax, eax, 0xffcefdfb
mov dword [0x48c148], eax
lea ecx, [esp + 0x580]
call fcn.00401450
mov ecx, dword [0x495bf0]
sub ecx, 0x3264922f
add ecx, 0x95aadbc9
cmp ecx, 0x5bdf3c66
mov dword [esp + 0x118], eax
jge 0x44ef01
mov ax, word [0x49d1be]
mov cx, ax
or ecx, 0x2bb4
mov ax, cx
mov word [0x49d1be], ax
mov eax, 0x48b58650
mov ecx, dword [0x48f180]
not ecx
mov edx, dword [0x48aaf8]
sar edx, 0xa
sub ecx, edx
mov edx, dword [0x492a78]
and edx, ecx
mov dword [0x492a78], edx
mov ecx, dword [0x48c814]
sar ecx, 6
or ecx, 0xc9820211
cmp eax, ecx
jg 0x44ef5f
mov eax, dword [0x494b00]
mov ecx, eax
inc ecx
mov dword [0x494b00], ecx
add eax, 0xf11fd850
mov ecx, dword [0x491954]
or ecx, eax
mov dword [0x491954], ecx
mov eax, dword [0x4927d8]
mov ecx, eax
dec ecx
mov dword [0x4927d8], ecx
mov dx, word [0x49a444]
movsx ecx, dx
imul eax, ecx
mov ecx, dword [0x48eed8]
or ecx, eax
mov dword [0x48eed8], ecx
mov dword [esp + 0x11c], 0
mov eax, dword [0x48d044]
xor eax, 0x3ee67d96
mov ecx, dword [0x4912e0]
cmp eax, ecx
jge 0x44efba
mov eax, dword [0x48dff8]
add eax, 0x8a9b092a
mov dword [0x48dff8], eax
mov eax, 0xacfe353f
mov dword [0x49d3a0], 0x94
mov ecx, dword [0x48bd04]
and ecx, 0xed3e41ef
mov dword [0x48bd04], ecx
mov ecx, dword [0x48a9a0]
mov edx, esp
mov dword [edx], 0x49d3a0
mov dword [esp + 0x114], eax
call ecx
sub esp, 4
mov si, word [0x4974d4]
movsx ecx, si
mov si, word [0x499746]
movsx edx, si
shl edx, 2
xor ecx, edx
mov edx, dword [esp + 0x114]
cmp edx, ecx
mov dword [esp + 0x110], eax
jge 0x44f087
mov eax, 0x8910c36b
mov ecx, dword [0x48f670]
inc ecx
mov dword [0x48f670], ecx
and ecx, 0xefdbe2a4
cmp eax, ecx
jl 0x44f082
mov eax, 0x19a73d9
mov ecx, dword [0x48cfb8]
mov edx, ecx
inc edx
mov dword [0x48cfb8], edx
add ecx, 0x2e9cf499
mov edx, dword [0x493164]
sub eax, edx
xor eax, 0xb6a129df
cmp ecx, eax
jle 0x44f078
jmp 0x44f07d
jmp 0x44f07d
jmp 0x44f082
jmp 0x44f087
mov eax, 0x440134a2
mov dword [esp + 0x10c], eax
call fcn.00443e00
mov dword [0x49dd00], eax
mov eax, dword [0x48bbd8]
or eax, 0xa8b6353d
mov ecx, dword [esp + 0x10c]
cmp ecx, eax
jle 0x44f0e6
mov ax, word [0x498b9c]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x498b9c], ax
movsx ecx, ax
imul ecx, ecx, 0x2bd3c1d4
xor ecx, 0x2ea091b9
mov edx, dword [0x492850]
or edx, ecx
mov dword [0x492850], edx
call fcn.004513a0
mov dword [0x49dd04], eax
mov eax, dword [0x4941e0]
and eax, 0xedaeda9c
mov dword [0x4941e0], eax
mov eax, dword [0x49dd00]
cmp eax, 0
je 0x44f425
mov eax, dword [0x4957e8]
add eax, 0xeaffd79f
mov dword [0x4957e8], eax
mov eax, esp
lea ecx, [esp + 0x12d]
mov dword [eax], ecx
call fcn.00451100
mov dword [esp + 0x128], eax
mov eax, dword [0x48b224]
xor eax, 0x4a78dbe0
mov dword [0x48b224], eax
mov eax, dword [esp + 0x128]
mov byte [esp + eax + 0x12d], 0x5c
mov eax, dword [0x48e7f4]
mov dx, word [0x49d0f4]
movsx ecx, dx
mov dx, word [0x499ef0]
movsx esi, dx
imul ecx, esi
add eax, ecx
cmp eax, 0x7570851c
jl 0x44f19d
mov ax, word [0x498662]
movsx ecx, ax
add ecx, 0x915f4b5e
mov edx, dword [0x492570]
imul edx, ecx
mov dword [0x492570], edx
jmp 0x44f1ad
mov eax, dword [0x495048]
imul eax, eax, 0x24f021cb
mov dword [0x495048], eax
mov eax, 0x710c4f35
mov ecx, dword [esp + 0x128]
inc ecx
mov dword [esp + 0x128], ecx
mov ecx, dword [0x493b28]
add ecx, 0x66721614
mov dword [0x493b28], ecx
mov ecx, dword [esp + 0x128]
mov byte [esp + ecx + 0x12d], 0
mov dx, word [0x498f6c]
mov cx, dx
dec ecx
mov dx, cx
mov word [0x498f6c], dx
movsx ecx, dx
or ecx, 0x465d2769
cmp eax, ecx
jge 0x44f212
mov dword [0x48b844], 0x7ca15b8e
mov eax, 0x90868d16
mov ecx, dword [0x49dd40]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x12d]
mov dword [edx], ecx
mov dword [esp + 0x108], eax
call fcn.00455cb0
mov si, word [0x49a392]
movsx ecx, si
imul ecx, ecx, 0xc694face
mov edx, dword [esp + 0x108]
cmp edx, ecx
mov dword [esp + 0x104], eax
jg 0x44f2b8
mov eax, 0xdde01567
mov ecx, dword [0x48b078]
mov edx, ecx
inc edx
mov dword [0x48b078], edx
mov edx, dword [0x491444]
imul edx, edx, 0x3ac6f1ea
add ecx, edx
cmp eax, ecx
jl 0x44f2a4
mov eax, 0x820008
mov ecx, dword [0x48eea0]
cmp eax, ecx
jne 0x44f29f
jmp 0x44f29f
jmp 0x44f2b3
mov eax, dword [0x48bf04]
add eax, 0xc675ddf1
mov dword [0x48bf04], eax
jmp 0x44f2b8
mov eax, 0x1ace58ec
mov ecx, dword [0x48a9e8]
mov edx, esp
lea esi, [esp + 0x12d]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0x100], eax
call ecx
sub esp, 8
mov di, word [0x499190]
movsx ecx, di
mov edx, dword [esp + 0x100]
cmp edx, ecx
mov dword [esp + 0xfc], eax
jle 0x44f347
mov eax, 0x5dca2050
mov ecx, dword [0x4913b4]
mov edx, ecx
dec edx
mov dword [0x4913b4], edx
mov edx, dword [0x492a1c]
imul ecx, edx
mov si, word [0x49b872]
movsx edx, si
and ecx, edx
cmp eax, ecx
jge 0x44f342
mov eax, dword [0x48fa84]
imul eax, eax, 0x6cffefef
mov dword [0x48fa84], eax
jmp 0x44f356
mov eax, dword [0x48ae10]
xor eax, 0x2820c080
mov dword [0x48ae10], eax
mov eax, 0xa39ca83b
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3ccd
mov dword [esp + 0xf8], eax
call fcn.00440380
mov dword [esp + 0x5bc], eax
mov eax, dword [0x48e3b0]
mov dx, word [0x49a8ce]
mov cx, dx
or ecx, eax
mov dx, cx
mov word [0x49a8ce], dx
mov eax, dword [esp + 0x5bc]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12d]
mov dword [ecx], eax
call fcn.00455cb0
mov dx, word [0x497474]
movsx ecx, dx
mov esi, dword [0x491018]
shl esi, 6
add ecx, esi
mov esi, dword [esp + 0xf8]
cmp esi, ecx
mov dword [esp + 0xf4], eax
jge 0x44f3fa
mov eax, dword [0x48edd0]
add eax, 0xfa9fd714
xor eax, 0xd7632dc0
mov ecx, dword [0x491090]
and ecx, eax
mov dword [0x491090], ecx
mov eax, dword [esp + 0x5bc]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00436780
mov eax, dword [0x491284]
xor eax, 0x1969fd6b
mov dword [0x491284], eax
jmp 0x44f51e
mov ax, word [0x498fc0]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x498fc0], ax
movsx ecx, ax
and ecx, 0xad16567b
mov edx, dword [0x490ad4]
mov esi, edx
inc esi
mov dword [0x490ad4], esi
cmp ecx, edx
je 0x44f468
mov eax, dword [0x492f78]
imul eax, eax, 0x94831abe
mov dword [0x492f78], eax
mov byte [esp + 0x12d], 0
mov eax, dword [0x4934c0]
mov cx, word [0x49c278]
movsx edx, cx
or eax, edx
mov cx, word [0x498690]
movsx edx, cx
sar edx, 4
imul edx, edx, 0xf197793
and edx, 0xfeb9fb39
cmp eax, edx
jle 0x44f50a
mov eax, 0xa638a7b1
mov ecx, dword [0x48b380]
mov edx, ecx
dec edx
mov dword [0x48b380], edx
sub ecx, 0xdb516f4f
sub ecx, 0x7e2b71ae
cmp eax, ecx
je 0x44f505
mov eax, 0x37d893f4
mov cx, word [0x49b9e0]
movsx edx, cx
mov cx, word [0x4984ee]
movsx esi, cx
shl esi, 4
add edx, esi
sub edx, 0x5f389d21
cmp eax, edx
jle 0x44f4fb
jmp 0x44f500
jmp 0x44f500
jmp 0x44f505
jmp 0x44f519
mov eax, dword [0x494d24]
and eax, 0x93025ceb
mov dword [0x494d24], eax
jmp 0x44f51e
mov eax, 0xc9e9a67
mov ecx, dword [0x495df8]
cmp eax, ecx
jge 0x44f549
mov eax, dword [0x48b8ac]
xor eax, 0x640445a
mov ecx, dword [0x492fc4]
and ecx, eax
mov dword [0x492fc4], ecx
lea eax, [esp + 0x580]
lea ecx, [esp + 0x12d]
mov edx, esp
mov dword [edx + 4], 0x1f
mov dword [edx], 0x3e3d
mov dword [esp + 0xf0], eax
mov dword [esp + 0xec], ecx
call fcn.00440380
mov dword [esp + 0x5b8], eax
mov eax, dword [0x494640]
imul eax, eax, 0x798cc62f
mov dword [0x494640], eax
mov eax, dword [esp + 0x5b8]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x580]
call fcn.00407750
sub esp, 4
mov ecx, dword [0x48ede4]
imul ecx, ecx, 0xcb0c1ea6
mov dword [0x48ede4], ecx
mov ecx, dword [esp + 0x5b8]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xe8], eax
call fcn.00436780
mov eax, dword [0x494214]
add eax, 0x60004
mov dword [0x494214], eax
mov eax, dword [esp + 0xf0]
mov ecx, eax
call fcn.0040a200
lea ecx, [esp + 0x580]
mov dword [esp + 0xe4], eax
call fcn.004188b0
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.0042c7f0
cmp eax, 0
je 0x44f7be
mov eax, dword [0x48d568]
mov ecx, eax
dec ecx
mov dword [0x48d568], ecx
add eax, 0x9c40d212
mov ecx, dword [0x494f5c]
sar ecx, 1
and ecx, 0xc0e089d4
and ecx, 0x4cdd55d1
cmp eax, ecx
jge 0x44f6ab
mov eax, 0x20a193d1
mov ecx, dword [0x48d47c]
or ecx, 0xf4f30fe8
cmp eax, ecx
jl 0x44f6a6
mov ax, word [0x49cae2]
mov cx, ax
imul ecx, ecx, 0x3ff6bebe
mov ax, cx
mov word [0x49cae2], ax
jmp 0x44f6ab
mov dword [esp + 0x11c], 1
mov eax, dword [0x48ab34]
sar eax, 8
or eax, 0x95564ecb
cmp eax, 0x26d66cb
jl 0x44f6dd
mov eax, dword [0x494294]
add eax, 0xa5e5275
mov dword [0x494294], eax
mov eax, dword [0x48a974]
mov ecx, esp
lea edx, [esp + 0x12d]
mov dword [ecx], edx
call eax
sub esp, 4
mov si, word [0x49a712]
mov cx, si
inc ecx
mov di, cx
mov word [0x49a712], di
movsx ecx, si
imul ecx, ecx, 0x6eb608d3
mov si, word [0x4981b0]
movsx edx, si
sar edx, 9
and edx, 0xb0e325e0
cmp ecx, edx
mov dword [esp + 0xdc], eax
jg 0x44f753
mov eax, dword [0x490adc]
dec eax
mov dword [0x490adc], eax
mov cx, word [0x49baf4]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x49baf4], cx
mov eax, dword [esp + 0x128]
mov byte [esp + eax + 0x12d], 0
mov eax, dword [0x48f6c0]
mov ecx, eax
dec ecx
mov dword [0x48f6c0], ecx
mov ecx, dword [0x48c7dc]
mov edx, ecx
dec edx
mov dword [0x48c7dc], edx
or eax, ecx
mov ecx, dword [0x4929a0]
imul ecx, eax
mov dword [0x4929a0], ecx
mov eax, dword [0x48a9ec]
mov ecx, esp
lea edx, [esp + 0x12d]
mov dword [ecx], edx
call eax
sub esp, 4
mov ecx, dword [0x4943ac]
add ecx, 0xf7879678
mov dword [0x4943ac], ecx
mov dword [esp + 0xd8], eax
mov eax, 0xfaf4e077
mov ecx, dword [0x493348]
add ecx, 0x15e425f4
mov dword [0x493348], ecx
mov ecx, esp
lea edx, [esp + 0x12d]
mov dword [ecx], edx
mov dword [esp + 0xd4], eax
call fcn.00451100
mov si, word [0x49986c]
movsx ecx, si
mov edx, dword [esp + 0xd4]
cmp edx, ecx
mov dword [esp + 0xd0], eax
je 0x44f81c
mov eax, dword [0x4965e4]
imul eax, eax, 0xdcfffff6
mov dword [0x4965e4], eax
mov byte [esp + 0x130], 0
mov ax, word [0x49b692]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x49b692], dx
movsx ecx, ax
mov esi, dword [0x48d988]
or esi, ecx
mov dword [0x48d988], esi
mov ecx, dword [0x49dd40]
mov esi, esp
mov dword [esi + 4], ecx
lea ecx, [esp + 0x12d]
mov dword [esi], ecx
mov dword [esp + 0xcc], ecx
call fcn.00455cb0
mov ecx, dword [0x493a90]
xor ecx, 0x1e2cb5f3
mov dword [0x493a90], ecx
mov ecx, dword [0x48a9e8]
mov esi, esp
mov edi, dword [esp + 0xcc]
mov dword [esi], edi
mov dword [esi + 4], 0
mov dword [esp + 0xc8], eax
call ecx
sub esp, 8
mov ecx, dword [0x4919c0]
add ecx, 0x8bae264c
mov esi, dword [0x490cc8]
or esi, ecx
mov dword [0x490cc8], esi
mov ecx, esp
mov esi, dword [esp + 0xcc]
mov dword [ecx + 4], esi
mov dword [ecx], 0x49d5b0
mov dword [esp + 0xc4], eax
call fcn.00455ca0
mov ecx, dword [0x490ca8]
mov esi, dword [0x494b30]
dec esi
mov dword [0x494b30], esi
cmp ecx, esi
mov dword [esp + 0xc0], eax
jg 0x44f911
mov ax, word [0x497f1a]
mov cx, ax
imul ecx, ecx, 0x2aaadad1
mov ax, cx
mov word [0x497f1a], ax
cmp dword [esp + 0x11c], 0
jne 0x44f988
mov eax, 0x651121fc
mov ecx, dword [0x494bd0]
xor ecx, 0x3f1d5862
mov dword [0x494bd0], ecx
mov dword [0x49dcfc], 0
mov dx, word [0x499ee6]
mov cx, dx
inc ecx
mov dx, cx
mov word [0x499ee6], dx
movsx ecx, dx
cmp eax, ecx
je 0x44f974
mov eax, dword [0x49277c]
or eax, 0x762b6000
mov dword [0x49277c], eax
jmp 0x44f983
mov eax, dword [0x49016c]
add eax, 0x36f21f68
mov dword [0x49016c], eax
jmp 0x44f988
mov eax, 0xb4afee89
mov ecx, dword [0x496408]
shl ecx, 7
mov edx, 0x4baf3669
sub edx, ecx
mov si, word [0x497966]
mov cx, si
sub ecx, edx
mov si, cx
mov word [0x497966], si
mov ecx, esp
lea edx, [esp + 0x12d]
mov dword [ecx], edx
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb8], edx
call fcn.0044ac70
mov dword [esp + 0x128], eax
mov eax, dword [0x48b8c0]
mov ecx, dword [0x48b2ec]
or ecx, eax
mov dword [0x48b2ec], ecx
mov eax, dword [0x48a9e8]
mov ecx, esp
mov edx, dword [esp + 0xb8]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov ecx, dword [0x48fe18]
shl ecx, 2
sub ecx, 0x54a17ca3
mov edx, dword [esp + 0xbc]
cmp edx, ecx
mov dword [esp + 0xb4], eax
jl 0x44fa3f
mov eax, dword [0x496704]
mov ecx, dword [0x4944c0]
sub ecx, eax
mov dword [0x4944c0], ecx
lea eax, [esp + 0x580]
lea ecx, [esp + 0x12d]
mov edx, esp
mov dword [edx + 4], 0x1f
mov dword [edx], 0x3ccd
mov dword [esp + 0xb0], eax
mov dword [esp + 0xac], ecx
call fcn.00440380
mov dword [esp + 0x5b4], eax
mov eax, dword [0x490174]
mov ecx, eax
inc ecx
mov dword [0x490174], ecx
mov ecx, dword [0x490294]
add eax, ecx
or eax, 0x6ad3c368
mov dword [0x493178], eax
mov eax, dword [esp + 0x5b4]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12d]
mov dword [ecx], eax
call fcn.00455cb0
mov ecx, dword [0x48de28]
xor ecx, 0x7bcffef7
mov dword [0x48de28], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3e3d
mov dword [esp + 0xa8], eax
call fcn.00440380
mov dword [esp + 0x5b0], eax
mov eax, dword [0x48ee04]
imul eax, eax, 0xe0271d5d
mov si, word [0x49863c]
mov cx, si
sub ecx, eax
mov si, cx
mov word [0x49863c], si
mov eax, dword [esp + 0x5b4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00436780
mov eax, dword [0x48c3b8]
or eax, 0xfb12e633
mov dword [0x48c3b8], eax
mov eax, dword [esp + 0x5b0]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x580]
call fcn.00407750
sub esp, 4
mov ecx, dword [0x48f388]
or ecx, 0x8c129309
mov dword [0x48f388], ecx
mov ecx, dword [esp + 0x5b0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xa4], eax
call fcn.00436780
mov eax, dword [0x494d94]
sar eax, 1
add eax, 0xa206ff86
xor eax, 0xd4ddd768
mov ecx, dword [0x49205c]
imul ecx, eax
mov dword [0x49205c], ecx
mov eax, dword [esp + 0xb0]
mov ecx, eax
call fcn.0040a200
lea ecx, [esp + 0x580]
mov dword [esp + 0xa0], eax
call fcn.004188b0
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0x9c], ecx
call fcn.0042c7f0
cmp eax, 0
jne 0x450a02
mov ax, word [0x49ce3a]
movsx ecx, ax
shr ecx, 3
add ecx, 0xcf3f1564
mov ax, word [0x49b596]
mov dx, ax
imul edx, ecx
mov ax, dx
mov word [0x49b596], ax
cmp dword [0x49d3a4], 6
jb 0x44fdc1
mov eax, 0x96a4a0cc
mov ecx, dword [0x48bdb8]
mov edx, ecx
dec edx
mov dword [0x48bdb8], edx
cmp eax, ecx
jge 0x44fce0
mov ax, word [0x49a7d0]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x49a7d0], dx
movsx ecx, ax
imul ecx, ecx, 0x5f0c1515
mov esi, 0xba97cb1b
sub esi, ecx
mov ecx, dword [0x490940]
imul ecx, ecx, 0xcdb89c15
and ecx, 0x5fd625fb
cmp esi, ecx
jge 0x44fc9c
mov ax, word [0x498132]
mov cx, ax
imul ecx, ecx, 0x1821f1ef
mov ax, cx
mov word [0x498132], ax
jmp 0x44fcdb
mov eax, 0x9f6c4a0c
mov ecx, dword [0x4927cc]
sar ecx, 7
mov dx, word [0x4995f0]
mov si, dx
dec esi
mov dx, si
mov word [0x4995f0], dx
movsx esi, dx
add ecx, esi
cmp eax, ecx
jg 0x44fcd1
jmp 0x44fcd6
jmp 0x44fcd6
jmp 0x44fcdb
jmp 0x44fce0
mov eax, 0x102528
mov ecx, esp
mov dword [ecx + 4], 0x12
mov dword [ecx], 0xb2b
mov dword [esp + 0x98], eax
call fcn.00440380
mov dword [esp + 0x5ac], eax
mov eax, dword [0x495a90]
imul eax, eax, 0x2eb90f1e
mov dword [0x495a90], eax
mov eax, dword [esp + 0x5ac]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12d]
mov dword [ecx], eax
mov dword [ecx + 8], 0x49d434
call fcn.00455f46
mov ecx, dword [0x493af4]
imul ecx, ecx, 0xba87ec
mov edx, dword [esp + 0x98]
cmp edx, ecx
mov dword [esp + 0x94], eax
jl 0x44fd69
mov eax, dword [0x48f2a8]
or eax, 0x58a5e596
mov dword [0x48f2a8], eax
mov eax, dword [esp + 0x5ac]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x12
call fcn.00436780
mov dx, word [0x49adfc]
mov ax, dx
dec eax
mov dx, ax
mov word [0x49adfc], dx
movsx eax, dx
and eax, 0xfc44bf8c
mov ecx, dword [0x491950]
mov esi, ecx
inc esi
mov dword [0x491950], esi
or eax, ecx
mov ecx, dword [0x48d920]
xor ecx, eax
mov dword [0x48d920], ecx
jmp 0x44fe89
mov eax, dword [0x4930a8]
add eax, eax
mov ecx, 0x221b86bd
sub ecx, eax
mov eax, dword [0x48f95c]
and eax, ecx
mov dword [0x48f95c], eax
mov eax, esp
mov dword [eax + 4], 0x24
mov dword [eax], 0x3c26
call fcn.00440380
mov dword [esp + 0x5a8], eax
mov eax, dword [0x48b2b8]
mov ecx, dword [0x4904a4]
lea eax, [eax + ecx + 0x3a3c8ebb]
mov dword [0x4904a4], eax
mov eax, dword [esp + 0x5a8]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12d]
mov dword [ecx], eax
mov dword [ecx + 8], 0x49d434
call fcn.00455f46
mov dx, word [0x499e82]
mov cx, dx
add ecx, 0xcc50286e
mov dx, cx
mov word [0x499e82], dx
mov ecx, dword [esp + 0x5a8]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], 0x24
mov dword [esp + 0x90], eax
call fcn.00436780
mov eax, dword [0x48e2b0]
shl eax, 7
add eax, 0xdab88276
mov dx, word [0x49a522]
mov cx, dx
sub ecx, eax
mov dx, cx
mov word [0x49a522], dx
mov eax, 0x81e0dc34
mov ecx, dword [0x491d18]
and ecx, 0x73bfd155
mov dword [0x491d18], ecx
mov byte [esp + 0x57f], 0
mov dx, word [0x49a470]
movsx ecx, dx
imul ecx, ecx, 0xe2a6109a
cmp eax, ecx
jle 0x44fed8
mov eax, dword [0x491eb0]
and eax, 0x5b968243
mov ecx, dword [0x4953e0]
xor ecx, eax
mov dword [0x4953e0], ecx
mov eax, dword [0x49dd40]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12d]
mov dword [ecx], eax
mov dword [esp + 0x8c], eax
call fcn.00455cb0
mov ecx, dword [0x495f6c]
dec ecx
mov dword [0x495f6c], ecx
mov edx, dword [0x492514]
add edx, 0xe804e7df
or ecx, edx
mov si, word [0x497478]
mov dx, si
or edx, ecx
mov si, dx
mov word [0x497478], si
mov ecx, dword [0x48a9e8]
mov edx, esp
mov edi, dword [esp + 0x8c]
mov dword [edx], edi
mov dword [edx + 4], 0
mov dword [esp + 0x88], eax
call ecx
sub esp, 8
mov si, word [0x49a4b0]
mov cx, si
add ecx, 0x619358ab
mov si, cx
mov word [0x49a4b0], si
mov ecx, esp
mov edx, dword [esp + 0x8c]
mov dword [ecx + 4], edx
mov dword [ecx], 0x49d5b0
mov dword [esp + 0x84], eax
call fcn.00455ca0
mov si, word [0x49c94a]
mov cx, si
and ecx, 0x2357
mov si, cx
mov word [0x49c94a], si
mov ecx, esp
mov edx, dword [esp + 0x8c]
mov dword [ecx], edx
mov dword [esp + 0x80], eax
call fcn.0044ac70
mov dword [esp + 0x128], eax
mov si, word [0x49cba0]
movsx eax, si
xor eax, 0xffffffff
or eax, 0x975214aa
cmp eax, 0x27f5a6db
jg 0x44ffe3
mov dword [0x4950fc], 0xe7f3ce77
mov eax, 0x28019961
mov ecx, dword [0x48a9e8]
mov edx, esp
lea esi, [esp + 0x12d]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0x7c], eax
call ecx
sub esp, 8
mov di, word [0x49d2c8]
mov cx, di
inc ecx
mov di, cx
mov word [0x49d2c8], di
movsx ecx, di
add ecx, 0xa4ad7d40
sub ecx, 0xce71f939
mov edx, dword [esp + 0x7c]
cmp edx, ecx
mov dword [esp + 0x78], eax
jge 0x450051
mov eax, dword [0x493c10]
xor eax, 0x4f04bbf
mov dword [0x493c10], eax
jmp 0x450066
mov eax, dword [0x49338c]
inc eax
mov dword [0x49338c], eax
or eax, 0x2973a5a1
mov dword [0x495054], eax
mov eax, 0x875f59b0
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3ccd
mov dword [esp + 0x74], eax
call fcn.00440380
mov dword [esp + 0x5a4], eax
mov dx, word [0x49d03a]
mov ax, dx
add eax, 0xb6f7d734
mov dx, word [0x499e3c]
mov cx, dx
or ecx, eax
mov dx, cx
mov word [0x499e3c], dx
mov eax, dword [esp + 0x5a4]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12d]
mov dword [ecx], eax
call fcn.00455cb0
mov ecx, dword [0x493c50]
and ecx, 0x7f0dfe82
mov dword [0x493c50], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3e3d
mov dword [esp + 0x70], eax
call fcn.00440380
mov dword [esp + 0x5a0], eax
mov eax, dword [0x48e06c]
sar eax, 2
add eax, 0x1fe06c5a
and eax, 0x5d23b15b
mov ecx, dword [0x490f74]
imul ecx, eax
mov dword [0x490f74], ecx
mov eax, dword [esp + 0x5a4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00436780
mov eax, dword [0x48d6b4]
mov ecx, eax
dec ecx
mov dword [0x48d6b4], ecx
xor eax, 0xbecfaeb1
mov ecx, dword [esp + 0x74]
cmp ecx, eax
jle 0x4501cb
mov eax, dword [0x494d14]
sar eax, 0xa
xor eax, 0x49191efe
mov ecx, dword [0x48ad14]
dec ecx
mov dword [0x48ad14], ecx
mov edx, dword [0x4948f8]
imul edx, edx, 0x4d95731c
or ecx, edx
cmp eax, ecx
jg 0x4501c6
mov eax, dword [0x4949d4]
mov ecx, dword [0x4928cc]
not ecx
and eax, ecx
mov dx, word [0x49774c]
mov cx, dx
dec ecx
mov dx, cx
mov word [0x49774c], dx
movsx ecx, dx
add ecx, 0x7526eb3a
xor ecx, 0x29721155
cmp eax, ecx
jle 0x4501c1
jmp 0x4501c1
jmp 0x4501c6
jmp 0x4501da
mov eax, dword [0x48bc94]
add eax, 0x6e2b267
mov dword [0x48bc94], eax
mov eax, dword [esp + 0x5a0]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x580]
call fcn.00407750
sub esp, 4
mov ecx, dword [0x48ef20]
imul ecx, ecx, 0xe9aa84ad
mov edx, dword [0x48f8c8]
mov esi, edx
inc esi
mov dword [0x48f8c8], esi
or edx, 0xc4176bc6
cmp ecx, edx
mov dword [esp + 0x6c], eax
jne 0x450230
mov eax, dword [0x48ae10]
and eax, 0xca577e5c
mov dword [0x48ae10], eax
mov eax, dword [esp + 0x5a0]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00436780
mov eax, dword [0x496b84]
imul eax, eax, 0x84ceeebf
or eax, 0x18f46c5a
cmp eax, 0x7d9190ce
je 0x45027f
mov eax, dword [0x492a30]
add eax, 0x447de73e
mov ecx, dword [0x48b168]
sub ecx, eax
mov dword [0x48b168], ecx
jmp 0x450297
mov eax, dword [0x494764]
or eax, 0xbac67e71
mov ecx, dword [0x494a10]
xor ecx, eax
mov dword [0x494a10], ecx
lea eax, [esp + 0x580]
lea ecx, [esp + 0x12d]
mov dword [esp + 0x68], ecx
mov ecx, eax
call fcn.0040a200
lea ecx, [esp + 0x580]
mov dword [esp + 0x64], eax
call fcn.004188b0
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0x60], ecx
call fcn.0042c7f0
cmp eax, 0
jne 0x4509f3
mov eax, dword [0x493e74]
or eax, 0xc45aa73b
mov dword [0x493e74], eax
mov eax, dword [0x48a990]
mov ecx, esp
lea edx, [esp + 0x12d]
mov dword [ecx + 4], edx
mov dword [ecx], 0x104
mov dword [esp + 0x5c], edx
call eax
sub esp, 8
mov ecx, dword [0x49562c]
imul ecx, ecx, 0x6b4dc0a0
mov dword [0x49562c], ecx
mov ecx, esp
mov edx, dword [esp + 0x5c]
mov dword [ecx], edx
mov dword [esp + 0x58], eax
call fcn.00452ac0
mov dword [esp + 0x128], eax
mov eax, dword [0x48e88c]
and eax, 0x4a9a4b51
mov ecx, dword [0x491284]
mov edx, dword [0x48d734]
dec edx
mov dword [0x48d734], edx
add ecx, edx
cmp eax, ecx
jge 0x4503c8
mov eax, dword [0x495520]
dec eax
mov dword [0x495520], eax
add eax, 0xfa3982f
and eax, 0x1d68a0b4
cmp eax, 0x15c4690
jle 0x4503a6
mov eax, dword [0x490044]
or eax, 0xe402008
mov dword [0x490044], eax
jmp 0x4503c3
mov eax, dword [0x496d88]
xor eax, 0x80001252
or eax, 0x7fdf40ad
mov ecx, dword [0x496e68]
and ecx, eax
mov dword [0x496e68], ecx
jmp 0x4503c8
mov eax, dword [esp + 0x128]
add eax, 0xfffffffe
mov dword [esp + 0x128], eax
mov eax, dword [0x48dc98]
imul eax, eax, 0x8f46317d
mov dword [0x48dc98], eax
mov eax, dword [esp + 0x128]
mov dword [esp + 0x124], eax
cmp dword [esp + 0x124], 0
jle 0x450587
mov eax, dword [0x48ee30]
and eax, 0x61f4d8fc
mov dword [0x48ee30], eax
mov eax, dword [esp + 0x124]
movsx eax, byte [esp + eax + 0x12d]
cmp eax, 0x5c
jne 0x450554
mov eax, dword [0x4903a0]
mov ecx, eax
dec ecx
mov dword [0x4903a0], ecx
or eax, 0x3d5f5c71
mov ecx, dword [0x48e2ac]
xor ecx, 0xffffffff
imul ecx, ecx, 0x2ae5078e
cmp eax, ecx
jl 0x450473
mov eax, dword [0x48ee40]
add eax, 0xc25a3323
mov ecx, dword [0x496b94]
sub ecx, eax
mov dword [0x496b94], ecx
jmp 0x45049c
mov eax, dword [0x496438]
sar eax, 8
mov ecx, dword [0x48e0cc]
mov edx, ecx
dec edx
mov dword [0x48e0cc], edx
lea eax, [eax + ecx - 1]
mov ecx, dword [0x493c10]
and ecx, eax
mov dword [0x493c10], ecx
mov eax, dword [esp + 0x124]
inc eax
mov dword [esp + 0x124], eax
mov eax, dword [0x497008]
add eax, 0xc9458c41
mov dword [0x497008], eax
mov eax, dword [esp + 0x124]
mov byte [esp + eax + 0x12d], 0
mov eax, dword [0x48eb64]
add eax, 0x5d925800
mov dword [0x48eb64], eax
mov eax, dword [esp + 0x124]
mov dword [esp + 0x128], eax
mov eax, dword [0x493ed0]
mov ecx, dword [0x48e2f4]
inc ecx
mov dword [0x48e2f4], ecx
or ecx, 0xd1c33eb8
cmp eax, ecx
jl 0x45054f
mov eax, 0x4e3ce6b6
mov cx, word [0x499b32]
movsx edx, cx
shl edx, 2
cmp eax, edx
jge 0x45054a
mov ax, word [0x49cb66]
movsx ecx, ax
imul ecx, ecx, 0x82abeda5
cmp ecx, 0x1f8a90ff
jne 0x450540
jmp 0x450545
jmp 0x450545
jmp 0x45054a
jmp 0x45054f
jmp 0x450587
mov eax, dword [0x495a94]
add eax, 0x183b4411
or eax, 0xf01593cf
mov ecx, dword [0x4958c4]
xor ecx, eax
mov dword [0x4958c4], ecx
mov eax, dword [esp + 0x124]
add eax, 0xffffffff
mov dword [esp + 0x124], eax
jmp 0x4503f7
mov eax, 0x391a0c20
mov cx, word [0x49cb5c]
movsx edx, cx
cmp eax, edx
jne 0x4505c1
mov ax, word [0x49bb38]
mov cx, ax
imul ecx, ecx, 0x4052eeaf
mov ax, word [0x49aa6a]
mov dx, ax
add edx, ecx
mov ax, dx
mov word [0x49aa6a], ax
mov eax, 0x780184
mov ecx, esp
lea edx, [esp + 0x12d]
mov dword [ecx + 4], edx
mov dword [ecx], 0x49d5b0
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], edx
call fcn.00455ca0
mov si, word [0x499c12]
mov cx, si
or ecx, 0xefff
mov si, cx
mov word [0x499c12], si
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [esp + 0x4c], eax
call fcn.0044ac70
mov dword [esp + 0x128], eax
mov eax, dword [0x48ab1c]
mov ecx, eax
inc ecx
mov dword [0x48ab1c], ecx
mov ecx, dword [0x491054]
sub ecx, eax
mov dword [0x491054], ecx
mov eax, dword [0x48a9e8]
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov ecx, dword [0x49140c]
add ecx, 0xa8197e81
mov dword [0x49140c], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3ccd
mov dword [esp + 0x48], eax
call fcn.00440380
mov dword [esp + 0x59c], eax
mov eax, dword [0x48fe14]
and eax, 0x32215d79
mov dword [0x48fe14], eax
mov eax, dword [esp + 0x59c]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x50]
mov dword [ecx], eax
call fcn.00455cb0
mov ecx, dword [0x496f80]
imul ecx, ecx, 0xcf9e3757
mov dword [0x496f80], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3e3d
mov dword [esp + 0x44], eax
call fcn.00440380
mov dword [esp + 0x598], eax
mov eax, dword [0x495300]
mov ecx, eax
dec ecx
mov dword [0x495300], ecx
imul eax, eax, 0x24b1d815
mov ecx, dword [0x48f464]
mov edx, ecx
dec edx
mov dword [0x48f464], edx
and eax, ecx
mov ecx, dword [esp + 0x54]
cmp ecx, eax
jl 0x450723
mov eax, dword [0x495e9c]
inc eax
mov dword [0x495e9c], eax
or eax, 0x6d4cff8f
mov ecx, dword [0x496e9c]
and ecx, eax
mov dword [0x496e9c], ecx
lea eax, [esp + 0x580]
lea ecx, [esp + 0x12d]
mov edx, dword [esp + 0x59c]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0x1f
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], ecx
call fcn.00436780
mov di, word [0x49adda]
movsx eax, di
imul eax, eax, 0x8c22a595
mov ecx, dword [0x48ab30]
sub ecx, eax
mov dword [0x48ab30], ecx
mov eax, dword [esp + 0x598]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x580]
call fcn.00407750
sub esp, 4
mov ecx, dword [0x491d08]
or ecx, 0x31f26083
mov dword [0x491d08], ecx
mov ecx, dword [esp + 0x598]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x38], eax
call fcn.00436780
mov eax, dword [0x48de58]
add eax, 0xf54b562d
mov dword [0x48de58], eax
mov eax, dword [esp + 0x40]
mov ecx, eax
call fcn.0040a200
lea ecx, [esp + 0x580]
mov dword [esp + 0x34], eax
call fcn.004188b0
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0x30], ecx
call fcn.0042c7f0
cmp eax, 0
jne 0x4509e4
mov eax, 0xf2e7dfde
mov ecx, dword [0x490e64]
sub eax, ecx
cmp eax, 0x7f6c4439
jle 0x45086e
mov eax, 0x49ee2dcd
mov cx, word [0x49a470]
movsx edx, cx
and edx, 0x624f1765
cmp eax, edx
jge 0x450869
mov eax, dword [0x48fe6c]
dec eax
mov dword [0x48fe6c], eax
mov ecx, dword [0x48ac70]
cmp eax, ecx
jg 0x450864
jmp 0x450864
jmp 0x450869
jmp 0x45086e
mov eax, dword [0x48a990]
mov ecx, esp
lea edx, [esp + 0x12d]
mov dword [ecx + 4], edx
mov dword [ecx], 0x104
mov dword [esp + 0x2c], edx
call eax
sub esp, 8
mov ecx, dword [0x493938]
add ecx, 0x74e459a4
mov dword [0x493938], ecx
mov ecx, esp
mov edx, dword [esp + 0x2c]
mov dword [ecx + 4], edx
mov dword [ecx], 0x49d5b0
mov dword [esp + 0x28], eax
call fcn.00455ca0
mov ecx, dword [0x493510]
xor ecx, 0x857cd9f4
mov dword [0x493510], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3ccd
mov dword [esp + 0x24], eax
call fcn.00440380
mov dword [esp + 0x594], eax
mov eax, dword [0x48ea78]
xor eax, 0x1db9d905
mov ecx, dword [0x48ac7c]
or eax, ecx
mov ecx, dword [0x48b5b8]
sub ecx, eax
mov dword [0x48b5b8], ecx
mov eax, dword [esp + 0x594]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x2c]
mov dword [ecx], eax
call fcn.00455cb0
mov ecx, dword [0x495450]
or ecx, 0xf83f53c5
mov si, word [0x498918]
movsx edx, si
shl edx, 7
or edx, 0xcbbe7f32
cmp ecx, edx
mov dword [esp + 0x20], eax
jg 0x45096e
mov eax, dword [0x48e9fc]
shr eax, 9
add eax, 0x9049e84d
mov cx, word [0x4989d2]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x4989d2], cx
mov eax, 0x4d7767b1
mov ecx, dword [esp + 0x594]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x1c], eax
call fcn.00436780
mov eax, dword [0x48cedc]
xor eax, 0xffffffff
sub eax, 0x8449793c
add eax, 0x40494ed
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
jle 0x4509d5
mov eax, dword [0x48d1b8]
mov ecx, eax
dec ecx
mov dword [0x48d1b8], ecx
and eax, 0x26
or eax, 0x7c6ffe58
mov ecx, dword [0x48f02c]
xor ecx, eax
mov dword [0x48f02c], ecx
jmp 0x4509df
mov eax, dword [0x48e2e8]
mov dword [0x494e10], eax
jmp 0x4509e4
mov eax, dword [0x496940]
or eax, 0x7055cf09
mov dword [0x496940], eax
mov eax, dword [0x48c590]
add eax, 0x8ad8e471
mov dword [0x48c590], eax
mov eax, dword [0x48eff8]
shl eax, 7
xor eax, 0x4008c0
or eax, 0x7a0c741f
mov ecx, dword [0x48cd48]
imul ecx, eax
mov dword [0x48cd48], ecx
mov eax, esp
lea ecx, [esp + 0x12d]
mov dword [eax], ecx
mov dword [esp + 0x18], ecx
call fcn.0044ac70
mov ecx, dword [0x4932e0]
add ecx, 0xf43a98fa
mov dword [0x4932e0], ecx
mov ecx, dword [0x48a99c]
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 ecx, dword [0x48ff7c]
mov edx, 0x2f48a2dc
sub edx, ecx
or edx, 0xa76a360d
mov ecx, dword [0x496b28]
and ecx, edx
mov dword [0x496b28], ecx
mov ecx, esp
mov edx, dword [esp + 0x18]
mov dword [ecx], edx
mov dword [ecx + 4], 0x453
mov dword [esp + 0x10], eax
call fcn.0044a860
mov di, word [0x49c19a]
mov ax, di
or eax, 0xd17c
mov di, ax
mov word [0x49c19a], di
lea ecx, [esp + 0x580]
call fcn.0043a120
add esp, 0x5c0
pop esi
pop edi
ret