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

Disassembly:
mov eax, dword [0x4844ac]
mov ecx, 0xa820c4b1
sub ecx, eax
cmp ecx, 0xf9400e81
jl 0x44549e
mov dword [0x4855f0], 0x7f77fffd
mov ax, word [0x4801ae]
add eax, 0x290b
mov word [0x4801ae], ax
add dword [0x481c38], 0x18658416
mov eax, dword [0x481a80]
dec eax
mov dword [0x481a80], eax
cmp eax, 0xe5d2ecc6
jne 0x4454d5
and dword [0x48346c], 0xc2b81fde
mov eax, dword [0x482a34]
imul eax, eax, 0xe4272330
xor eax, 0xdfa116f7
add dword [0x485480], eax
mov eax, dword [0x48246c]
and eax, 0x5838
mov cx, word [0x480da6]
add ecx, eax
mov word [0x480da6], cx
mov eax, dword [0x4820a0]
shl eax, 8
or eax, 0xb1aa8710
cmp eax, 0xd2ec0e88
jb 0x445525
or dword [0x482ab4], 0x208f8cc8
jmp 0x44553c
inc dword [0x48341c]
mov ax, word [0x47f78c]
xor eax, 0xa009
mov word [0x47f78c], ax
mov eax, dword [0x48480c]
lea ecx, [eax + 1]
mov dword [0x48480c], ecx
or eax, 0x5445254d
xor eax, 0x2a985880
mov ecx, dword [0x4839d0]
imul ecx, eax
mov dword [0x4839d0], ecx
mov eax, dword [0x4817a0]
inc eax
mov dword [0x4817a0], eax
or eax, 0xb0e0
mov word [0x480222], ax
mov eax, dword [0x483d48]
mov ecx, dword [0x4827e0]
lea edx, [ecx + 1]
mov dword [0x4827e0], edx
xor ecx, 0xb6e01a0e
or ecx, eax
cmp ecx, 0x79ab0551
jg 0x4455ce
mov eax, dword [0x4833f0]
mov cx, word [0x4812f4]
movsx ecx, cx
or ecx, eax
cmp ecx, 0x2b86d1f9
jg 0x445604
mov eax, dword [0x4847a4]
sar eax, 4
mov ecx, dword [0x485a3c]
sub ecx, eax
mov dword [0x485a3c], ecx
jmp 0x44560e
mov eax, dword [0x4842f8]
inc eax
mov dword [0x4842f8], eax
mov ecx, dword [0x485218]
lea edx, [ecx - 1]
mov dword [0x485218], edx
and ecx, 0x9b6148e9
xor ecx, 0xfde70e72
cmp eax, ecx
je 0x44560e
add dword [0x484208], 0x675874ed
jmp 0x44560e
add dword [0x484ea4], 0xeb8d70a
push ebp
push ebx
push edi
push esi
sub esp, 0xa8
mov edi, dword [esp + 0xbc]
mov eax, dword [0x482808]
lea ecx, [eax - 1]
mov dword [0x482808], ecx
imul eax, eax, 0xfa8f7762
mov ecx, dword [0x482034]
lea edx, [ecx + 1]
mov dword [0x482034], edx
xor ecx, 0xe3f7051c
cmp eax, ecx
jg 0x445656
add dword [0x4841dc], 0xe4028e7c
add dword [0x483068], 0xf2dff8ed
mov dword [esp + 4], 0xe
mov dword [esp], 0x1fb4
call fcn.00432040
mov esi, eax
mov eax, dword [0x484a3c]
lea ecx, [eax + 1]
mov dword [0x484a3c], ecx
or eax, 0x90172434
mov ecx, dword [0x481854]
sub ecx, eax
mov dword [0x481854], ecx
mov dword [esp + 4], esi
mov dword [esp], edi
call fcn.00452cb0
mov eax, dword [0x481d70]
lea ecx, [eax + 1]
mov dword [0x481d70], ecx
xor eax, 0x9d83a88a
cmp eax, 0xd31a6778
jl 0x4456c7
add dword [0x482174], 0x9ecff768
mov eax, dword [0x485190]
sar eax, 1
mov ecx, 0x5aec9b20
sub ecx, eax
or dword [0x483704], ecx
mov eax, dword [0x48233c]
mov eax, dword [0x485240]
dec dword [0x48464c]
mov eax, dword [0x4821dc]
lea ecx, [eax - 1]
mov dword [0x4821dc], ecx
cmp eax, 0x86420c
jg 0x445723
mov ax, word [0x480116]
lea ecx, [eax - 1]
mov word [0x480116], cx
cwde
mov ecx, dword [0x483928]
lea eax, [eax + ecx + 0x168b802c]
mov dword [0x483928], eax
mov byte [esi], 0
mov byte [esi + 1], 0
mov byte [esi + 2], 0
mov byte [esi + 3], 0
mov byte [esi + 4], 0
mov byte [esi + 5], 0
mov byte [esi + 6], 0
mov byte [esi + 7], 0
mov byte [esi + 8], 0
mov byte [esi + 9], 0
mov byte [esi + 0xa], 0
mov byte [esi + 0xb], 0
mov byte [esi + 0xc], 0
mov byte [esi + 0xd], 0
mov byte [esi + 0xe], 0
mov byte [esi + 0xf], 0
mov byte [esi + 0x10], 0
mov byte [esi + 0x11], 0
mov eax, dword [0x4855e0]
not eax
mov ecx, dword [0x483d3c]
and ecx, eax
and ecx, 0x2e746748
mov dword [0x483d3c], ecx
mov dword [esp], esi
call fcn.0044fae0
or dword [0x482c3c], 0x14b97935
and dword [0x48265c], 0x43bd6c71
call dword [0x47f4a8]
and dword [0x4817a8], 0x1513e08
test eax, eax
je 0x4459cd
mov edi, eax
mov ax, word [0x480c74]
xor eax, 0x210a
mov cx, word [0x4803d4]
add ecx, eax
mov word [0x4803d4], cx
mov dword [esp + 4], 0xd
mov dword [esp], 0x6ab5
call fcn.00432040
mov ebx, eax
mov ax, word [0x47ff8e]
dec eax
mov word [0x47ff8e], ax
cwde
mov ecx, 0xb1f704d8
sub ecx, eax
add dword [0x485684], ecx
mov dword [esp], ebx
call dword [0x47f4e8]
sub esp, 4
mov esi, eax
mov eax, dword [0x482e90]
lea ecx, [eax - 1]
mov dword [0x482e90], ecx
mov ecx, 0xe42508a7
sub ecx, eax
or dword [0x4858b8], ecx
mov eax, dword [0x485190]
sar eax, 1
mov ecx, 0x5aec9b20
sub ecx, eax
or dword [0x483704], ecx
mov eax, dword [0x48233c]
mov eax, dword [0x485240]
dec dword [0x48464c]
mov eax, dword [0x4821dc]
lea ecx, [eax - 1]
mov dword [0x4821dc], ecx
cmp eax, 0x86420c
jg 0x44588c
mov ax, word [0x480116]
lea ecx, [eax - 1]
mov word [0x480116], cx
cwde
mov ecx, dword [0x483928]
lea eax, [eax + ecx + 0x168b802c]
mov dword [0x483928], eax
mov byte [ebx], 0
mov byte [ebx + 1], 0
mov byte [ebx + 2], 0
mov byte [ebx + 3], 0
mov byte [ebx + 4], 0
mov byte [ebx + 5], 0
mov byte [ebx + 6], 0
mov byte [ebx + 7], 0
mov byte [ebx + 8], 0
mov byte [ebx + 9], 0
mov byte [ebx + 0xa], 0
mov byte [ebx + 0xb], 0
mov byte [ebx + 0xc], 0
mov byte [ebx + 0xd], 0
mov byte [ebx + 0xe], 0
mov byte [ebx + 0xf], 0
mov byte [ebx + 0x10], 0
mov eax, dword [0x4855e0]
not eax
mov ecx, dword [0x483d3c]
and ecx, eax
and ecx, 0x2e746748
mov dword [0x483d3c], ecx
mov dword [esp], ebx
call fcn.0044fae0
or dword [0x482c3c], 0x14b97935
mov eax, dword [0x481864]
mov ecx, dword [0x484370]
inc ecx
mov dword [0x484370], ecx
xor ecx, eax
xor ecx, 0x3639686a
mov dword [0x4856e4], ecx
test esi, esi
je 0x4459fb
and dword [0x481e5c], 0x9cc7230b
mov dword [esp + 4], 0x10
mov dword [esp], 0x2171
call fcn.00432040
mov ebx, eax
mov ax, word [0x48059e]
cwde
mov ecx, dword [0x48375c]
shl ecx, 0xa
mov edx, 0x1f7ed516
sub edx, ecx
or edx, eax
cmp edx, 0x3daef4e9
jg 0x445983
mov eax, dword [0x481d84]
add eax, 0x7d055ab1
xor eax, 0x6c6615af
mov ecx, dword [0x4842b8]
imul ecx, eax
mov dword [0x4842b8], ecx
mov dword [esp + 4], ebx
mov dword [esp], esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 8
mov ebp, eax
mov eax, dword [0x482a7c]
lea ecx, [eax - 1]
mov dword [0x482a7c], ecx
xor eax, 0x470d0448
mov ecx, dword [0x482540]
add ecx, ecx
or ecx, 0xd51429cf
cmp eax, ecx
jle 0x445a16
mov eax, dword [0x482500]
imul eax, eax, 0x4c03b808
xor dword [0x482124], eax
jmp 0x445a20
mov eax, dword [0x4819c4]
lea ecx, [eax - 1]
mov dword [0x4819c4], ecx
add eax, 0xbac355cc
mov ecx, dword [0x482e80]
and ecx, eax
mov eax, dword [0x484eac]
sub eax, ecx
mov dword [0x484eac], eax
xor ebp, ebp
jmp 0x44695e
mov eax, dword [0x485244]
sar eax, 9
imul eax, eax, 0x13ed58a8
or dword [0x483f14], eax
xor ebp, ebp
jmp 0x44695e
and dword [0x4829cc], 0xbff4a367
mov eax, dword [0x485190]
sar eax, 1
mov ecx, 0x5aec9b20
sub ecx, eax
or dword [0x483704], ecx
mov eax, dword [0x48233c]
mov eax, dword [0x485240]
dec dword [0x48464c]
mov eax, dword [0x4821dc]
lea ecx, [eax - 1]
mov dword [0x4821dc], ecx
cmp eax, 0x86420c
jg 0x445a7c
mov ax, word [0x480116]
lea ecx, [eax - 1]
mov word [0x480116], cx
cwde
mov ecx, dword [0x483928]
lea eax, [eax + ecx + 0x168b802c]
mov dword [0x483928], eax
mov byte [ebx], 0
mov byte [ebx + 1], 0
mov byte [ebx + 2], 0
mov byte [ebx + 3], 0
mov byte [ebx + 4], 0
mov byte [ebx + 5], 0
mov byte [ebx + 6], 0
mov byte [ebx + 7], 0
mov byte [ebx + 8], 0
mov byte [ebx + 9], 0
mov byte [ebx + 0xa], 0
mov byte [ebx + 0xb], 0
mov byte [ebx + 0xc], 0
mov byte [ebx + 0xd], 0
mov byte [ebx + 0xe], 0
mov byte [ebx + 0xf], 0
mov byte [ebx + 0x10], 0
mov byte [ebx + 0x11], 0
mov byte [ebx + 0x12], 0
mov byte [ebx + 0x13], 0
mov eax, dword [0x4855e0]
not eax
mov ecx, dword [0x483d3c]
and ecx, eax
and ecx, 0x2e746748
mov dword [0x483d3c], ecx
mov dword [esp], ebx
call fcn.0044fae0
or dword [0x482c3c], 0x14b97935
and dword [0x48191c], 0xdc8c89b3
test ebp, ebp
je 0x445caf
mov eax, dword [0x484dc0]
not eax
mov ecx, dword [0x483fe4]
and ecx, eax
mov eax, dword [0x4820ac]
sub eax, ecx
mov dword [0x4820ac], eax
mov dword [esp + 0xa4], 0x288
or dword [0x483428], 0x57b931de
mov dword [esp], edi
mov dword [esp + 8], 0x288
mov dword [esp + 4], 0
call dword [0x47f4ac]
sub esp, 0xc
mov ebx, eax
mov ax, word [0x47f9e4]
add eax, 0x110b
mov word [0x47f9e4], ax
test ebx, ebx
je 0x445cdd
mov dword [esp + 0x14], esi
mov ax, word [0x47fe00]
imul eax, eax, 0x690
mov word [0x47fe00], ax
lea esi, [esp + 0xa4]
mov dword [esp + 4], esi
mov dword [esp], ebx
call ebp
sub esp, 8
mov cx, word [0x48001e]
lea edx, [ecx + 1]
mov word [0x48001e], dx
movsx ecx, cx
mov edx, 0x7e8bc3fc
sub edx, ecx
or dword [0x4855f8], edx
cmp eax, 0x6f
jne 0x445c62
mov eax, dword [0x481788]
inc eax
mov dword [0x481788], eax
mov ecx, dword [0x481f30]
imul eax, eax, 0x29b39f10
lea eax, [eax + ecx + 0x6bb2d7ab]
mov dword [0x481f30], eax
mov dword [esp + 8], ebx
mov dword [esp], edi
mov dword [esp + 4], 0
call dword [0x47f4b0]
sub esp, 0xc
mov ax, word [0x48081e]
cwde
imul eax, eax, 0x61981e7d
xor eax, 0x1d92bb64
mov ecx, dword [0x483440]
sub ecx, eax
mov dword [0x483440], ecx
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
mov dword [esp], edi
mov dword [esp + 4], 0
call dword [0x47f4ac]
sub esp, 0xc
mov ebx, eax
mov eax, dword [0x482080]
imul eax, eax, 0x6c8e0725
mov dword [0x482080], eax
test ebx, ebx
je 0x445ffc
or dword [0x48333c], 0xe0e428ba
mov eax, dword [0x483538]
not eax
imul eax, eax, 0x44b52e1d
mov cx, word [0x47fc76]
xor ecx, eax
mov word [0x47fc76], cx
mov dword [esp + 4], esi
mov dword [esp], ebx
call ebp
sub esp, 8
add dword [0x483838], 0xc26fb005
test eax, eax
je 0x445d0b
mov eax, dword [0x4817a0]
xor dword [0x4857dc], eax
xor ebp, ebp
mov esi, dword [esp + 0x14]
jmp 0x446870
mov ax, word [0x4809d8]
and eax, 0xd07
mov word [0x4809d8], ax
mov dword [esp], esi
call dword [0x47f4e4]
sub esp, 4
or dword [0x4823dc], 0x14a0a004
xor ebp, ebp
jmp 0x44695e
mov ax, word [0x47fbf4]
add eax, 0x1b06
mov word [0x47fbf4], ax
mov dword [esp], esi
call dword [0x47f4e4]
sub esp, 4
or dword [0x482d0c], 0xc1d5be47
xor ebp, ebp
jmp 0x44695e
and dword [0x4856e0], 0x634cadeb
mov eax, dword [0x483738]
lea ecx, [eax + 1]
mov dword [0x483738], ecx
and eax, 0x569bd264
mov ecx, dword [0x482008]
imul ecx, eax
mov dword [0x482008], ecx
mov dword [esp + 4], 8
mov dword [esp], 0x1fd6
call fcn.00432040
mov ebp, eax
and dword [0x4856f8], 0xf88e578c
mov dword [esp + 4], ebp
lea esi, [esp + 0x5e]
mov dword [esp], esi
call fcn.00452cb0
mov eax, dword [0x4829c8]
and eax, 0xec039892
or dword [0x482cbc], eax
mov eax, dword [0x485190]
sar eax, 1
mov ecx, 0x5aec9b20
sub ecx, eax
or dword [0x483704], ecx
mov eax, dword [0x48233c]
mov eax, dword [0x485240]
dec dword [0x48464c]
mov eax, dword [0x4821dc]
lea ecx, [eax - 1]
mov dword [0x4821dc], ecx
cmp eax, 0x86420c
jg 0x445dd3
mov ax, word [0x480116]
lea ecx, [eax - 1]
mov word [0x480116], cx
cwde
mov ecx, dword [0x483928]
lea eax, [eax + ecx + 0x168b802c]
mov dword [0x483928], eax
mov byte [ebp], 0
mov byte [ebp + 1], 0
mov byte [ebp + 2], 0
mov byte [ebp + 3], 0
mov byte [ebp + 4], 0
mov byte [ebp + 5], 0
mov byte [ebp + 6], 0
mov byte [ebp + 7], 0
mov byte [ebp + 8], 0
mov byte [ebp + 9], 0
mov byte [ebp + 0xa], 0
mov byte [ebp + 0xb], 0
mov eax, dword [0x4855e0]
not eax
mov ecx, dword [0x483d3c]
and ecx, eax
and ecx, 0x2e746748
mov dword [0x483d3c], ecx
mov dword [esp], ebp
call fcn.0044fae0
or dword [0x482c3c], 0x14b97935
mov eax, dword [0x481e1c]
lea ecx, [eax + 1]
mov dword [0x481e1c], ecx
add eax, 0xcc89b9a0
mov cx, word [0x480780]
movsx ecx, cx
cmp eax, ecx
jge 0x445e5b
mov dword [0x4858e8], 0x200e2cf7
mov ax, word [0x47f5e6]
cwde
xor eax, 0x9283804f
and dword [0x482244], eax
xor ebp, ebp
test ebx, ebx
je 0x4465e2
mov ebp, esi
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], ebx
lea edi, [ebx + 0x1d8]
lea esi, [ebx + 0x1b0]
jmp 0x445eab
mov ax, word [0x480514]
add eax, 0x39bf
mov cx, word [0x47fa7a]
xor ecx, eax
mov word [0x47fa7a], cx
mov eax, dword [0x483c44]
inc eax
mov dword [0x483c44], eax
mov ecx, dword [0x482a74]
dec ecx
and eax, ecx
mov dword [0x482a74], ecx
and eax, 0x87ed
mov cx, word [0x47fca2]
imul ecx, eax
mov word [0x47fca2], cx
mov dword [esp + 4], ebp
mov dword [esp], edi
call fcn.00452db0
mov ecx, dword [0x48346c]
mov dx, word [0x480e6e]
imul edx, ecx
shl edx, 7
mov word [0x480e6e], dx
test eax, eax
je 0x445fc5
xor dword [0x481758], 0x4ac2cfab
mov dword [esp + 4], ebp
mov dword [esp], esi
call fcn.00452db0
add dword [0x482d24], 0x14e2b91b
test eax, eax
je 0x445f95
mov dword [0x483a0c], 0xe9d216de
mov eax, dword [0x4823f0]
cmp eax, 0x61fd57df
jne 0x445f6d
mov eax, dword [0x483040]
lea ecx, [eax + 1]
mov dword [0x483040], ecx
mov ecx, dword [0x485688]
shl ecx, 6
add eax, 0x30520196
cmp eax, ecx
je 0x445f6d
add dword [0x483ec8], 0xf28f35b1
mov ax, word [0x4810ae]
cwde
mov dword [0x482cfc], eax
add dword [0x4847ac], 0x3e744827
cmp dword [ebx + 0x190], 8
ja 0x445e90
jmp 0x446036
mov ax, word [0x4802de]
cwde
and eax, 0xffffff80
cmp eax, 0xf75cfb00
jne 0x445fc5
mov eax, dword [0x4837a4]
mov ecx, 0x764bf769
sub ecx, eax
cmp ecx, 0x4aa7435
jl 0x445fc5
mov eax, dword [0x4846b8]
mov ax, word [0x48108e]
or dword [0x481b24], 0xdb3e28db
mov ebx, dword [ebx]
mov eax, dword [0x483954]
imul eax, eax, 0xdd32d2a8
mov dword [0x483954], eax
test ebx, ebx
jne 0x445e81
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
xor ebp, ebp
jmp 0x446639
mov eax, dword [0x4825dc]
shr eax, 2
mov cx, word [0x47fa38]
imul ecx, eax
mov word [0x47fa38], cx
mov eax, dword [esp + 0x14]
mov dword [esp], eax
call dword [0x47f4e4]
sub esp, 4
or dword [0x482648], 0x4e169452
xor ebp, ebp
jmp 0x44695e
mov eax, dword [0x4845f0]
imul eax, eax, 0xe0fd5c9b
mov dword [0x4845f0], eax
mov dword [esp + 4], 0x11
mov dword [esp], 0x1534
call fcn.00432040
mov ebp, eax
mov ax, word [0x48106c]
cwde
not eax
mov ecx, dword [0x483094]
and ecx, eax
mov eax, dword [0x48564c]
sub eax, ecx
mov dword [0x48564c], eax
mov dword [esp + 4], ebp
lea eax, [esp + 0x18]
mov dword [esp], eax
call fcn.00452cb0
mov ax, word [0x480f94]
not eax
imul eax, eax, 0x254b2dd9
mov ecx, dword [0x4846dc]
lea edx, [ecx - 1]
mov dword [0x4846dc], edx
xor eax, ecx
mov cx, word [0x47ffa6]
and ecx, eax
mov word [0x47ffa6], cx
mov eax, dword [0x485190]
sar eax, 1
mov ecx, 0x5aec9b20
sub ecx, eax
or dword [0x483704], ecx
mov eax, dword [0x48233c]
mov eax, dword [0x485240]
dec dword [0x48464c]
mov eax, dword [0x4821dc]
lea ecx, [eax - 1]
mov dword [0x4821dc], ecx
cmp eax, 0x86420c
jg 0x446114
mov ax, word [0x480116]
lea ecx, [eax - 1]
mov word [0x480116], cx
cwde
mov ecx, dword [0x483928]
lea eax, [eax + ecx + 0x168b802c]
mov dword [0x483928], eax
mov byte [ebp], 0
mov byte [ebp + 1], 0
mov byte [ebp + 2], 0
mov byte [ebp + 3], 0
mov byte [ebp + 4], 0
mov byte [ebp + 5], 0
mov byte [ebp + 6], 0
mov byte [ebp + 7], 0
mov byte [ebp + 8], 0
mov byte [ebp + 9], 0
mov byte [ebp + 0xa], 0
mov byte [ebp + 0xb], 0
mov byte [ebp + 0xc], 0
mov byte [ebp + 0xd], 0
mov byte [ebp + 0xe], 0
mov byte [ebp + 0xf], 0
mov byte [ebp + 0x10], 0
mov byte [ebp + 0x11], 0
mov byte [ebp + 0x12], 0
mov byte [ebp + 0x13], 0
mov byte [ebp + 0x14], 0
mov eax, dword [0x4855e0]
not eax
mov ecx, dword [0x483d3c]
and ecx, eax
and ecx, 0x2e746748
mov dword [0x483d3c], ecx
mov dword [esp], ebp
call fcn.0044fae0
or dword [0x482c3c], 0x14b97935
mov ax, word [0x4813f8]
imul eax, eax, 0x680a
mov word [0x4813f8], ax
mov eax, dword [0x483648]
lea ecx, [eax + 1]
mov dword [0x483648], ecx
or eax, 0xf77d9ccf
mov dword [0x483dc8], eax
cmp dword [ebx + 0x190], 0
mov ebp, dword [esp + 0xbc]
je 0x4463bb
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov cx, word [0x4813ac]
movsx ecx, cx
sar ecx, 5
imul ecx, ecx, 0xd6758106
or ecx, 0x13755d2c
and dword [0x481878], ecx
mov cx, word [0x4808d0]
movsx ecx, cx
not ecx
mov edx, dword [0x485500]
lea esi, [edx + 1]
mov dword [0x485500], esi
imul ecx, edx
xor ecx, 0x777888e3
mov edx, dword [0x4852ec]
sub edx, ecx
mov dword [0x4852ec], edx
mov cx, word [0x47fdec]
movsx ecx, cx
mov edx, dword [0x4849d0]
sar edx, 9
and edx, 0x693e03d3
xor edx, ecx
cmp edx, 0x49fa85fb
je 0x446268
mov cx, word [0x480e9c]
add ecx, 0xffffa002
mov word [0x480e9c], cx
movzx ecx, byte [ebx + eax + 0x194]
mov edx, dword [0x482f08]
imul edx, edx, 0x9af4b90d
mov dword [0x482f08], edx
mov dx, word [0x48123e]
lea esi, [edx + 1]
mov word [0x48123e], si
mov si, word [0x481462]
lea edi, [esi + 1]
mov word [0x481462], di
xor esi, edx
or esi, 0xffffef5a
mov dx, word [0x4808a8]
xor edx, esi
mov word [0x4808a8], dx
mov dl, cl
shr dl, 4
mov si, word [0x480e36]
movsx esi, si
and esi, 0x68f3fab2
mov edi, dword [0x485128]
sub edi, esi
mov dword [0x485128], edi
movzx edx, dl
mov dl, byte [esp + edx + 0x18]
mov byte [ebp + eax*2], dl
mov edx, dword [0x48281c]
shl edx, 9
mov si, word [0x480d6a]
or esi, edx
or esi, 0x35e9
mov word [0x480d6a], si
mov edx, dword [0x484004]
mov esi, dword [0x481988]
inc esi
mov dword [0x481988], esi
imul esi, esi, 0xedd6d883
or esi, edx
add dword [0x4853f4], esi
mov edx, dword [0x481dbc]
or dword [0x4834a8], edx
and ecx, 0xf
mov cl, byte [esp + ecx + 0x18]
mov byte [ebp + eax*2 + 1], cl
mov cx, word [0x47fb96]
add ecx, 0x366a
mov word [0x47fb96], cx
inc eax
mov ecx, dword [0x483658]
mov edx, dword [0x4853f4]
shl edx, 0xa
sub ecx, edx
cmp ecx, 0x14d7250
jne 0x4463a0
mov ecx, dword [0x485918]
mov edx, dword [0x48558c]
lea esi, [edx + 1]
mov dword [0x48558c], esi
not edx
lea ecx, [ecx + edx + 0xa2d1]
mov dx, word [0x481554]
xor edx, ecx
mov word [0x481554], dx
jmp 0x4463af
mov cx, word [0x47fb48]
inc ecx
mov word [0x47fb48], cx
cmp eax, dword [ebx + 0x190]
jne 0x4461e0
mov eax, dword [0x481eec]
or eax, 0xd3a392f4
add dword [0x485450], eax
mov eax, dword [ebx + 0x190]
mov byte [ebp + eax*2], 0
inc dword [0x482c3c]
inc dword [0x483c10]
or dword [0x483ab0], 0xdfb952e0
mov eax, dword [0x48233c]
mov eax, dword [0x485240]
dec dword [0x48464c]
mov eax, dword [0x4821dc]
lea ecx, [eax - 1]
mov dword [0x4821dc], ecx
cmp eax, 0x86420c
jg 0x446434
mov ax, word [0x480116]
lea ecx, [eax - 1]
mov word [0x480116], cx
cwde
mov ecx, dword [0x483928]
lea eax, [eax + ecx + 0x168b802c]
mov dword [0x483928], eax
mov byte [esp + 0x18], 0
mov byte [esp + 0x19], 0
mov byte [esp + 0x1a], 0
mov byte [esp + 0x1b], 0
mov byte [esp + 0x1c], 0
mov byte [esp + 0x1d], 0
mov byte [esp + 0x1e], 0
mov byte [esp + 0x1f], 0
mov byte [esp + 0x20], 0
mov byte [esp + 0x21], 0
mov byte [esp + 0x22], 0
mov byte [esp + 0x23], 0
mov byte [esp + 0x24], 0
mov byte [esp + 0x25], 0
mov byte [esp + 0x26], 0
mov byte [esp + 0x27], 0
mov byte [esp + 0x28], 0
mov byte [esp + 0x29], 0
mov byte [esp + 0x2a], 0
mov byte [esp + 0x2b], 0
mov byte [esp + 0x2c], 0
mov byte [esp + 0x2d], 0
mov byte [esp + 0x2e], 0
mov byte [esp + 0x2f], 0
mov byte [esp + 0x30], 0
mov byte [esp + 0x31], 0
mov byte [esp + 0x32], 0
mov byte [esp + 0x33], 0
mov byte [esp + 0x34], 0
mov byte [esp + 0x35], 0
mov byte [esp + 0x36], 0
mov byte [esp + 0x37], 0
mov byte [esp + 0x38], 0
mov byte [esp + 0x39], 0
mov byte [esp + 0x3a], 0
mov byte [esp + 0x3b], 0
mov byte [esp + 0x3c], 0
mov byte [esp + 0x3d], 0
mov byte [esp + 0x3e], 0
mov byte [esp + 0x3f], 0
mov byte [esp + 0x40], 0
mov byte [esp + 0x41], 0
mov byte [esp + 0x42], 0
mov byte [esp + 0x43], 0
mov byte [esp + 0x44], 0
mov byte [esp + 0x45], 0
mov byte [esp + 0x46], 0
mov byte [esp + 0x47], 0
mov byte [esp + 0x48], 0
mov byte [esp + 0x49], 0
mov byte [esp + 0x4a], 0
mov byte [esp + 0x4b], 0
mov byte [esp + 0x4c], 0
mov byte [esp + 0x4d], 0
mov byte [esp + 0x4e], 0
mov byte [esp + 0x4f], 0
mov byte [esp + 0x50], 0
mov byte [esp + 0x51], 0
mov byte [esp + 0x52], 0
mov byte [esp + 0x53], 0
mov byte [esp + 0x54], 0
mov byte [esp + 0x55], 0
mov byte [esp + 0x56], 0
mov byte [esp + 0x57], 0
mov byte [esp + 0x58], 0
mov byte [esp + 0x59], 0
mov byte [esp + 0x5a], 0
mov byte [esp + 0x5b], 0
mov byte [esp + 0x5c], 0
mov byte [esp + 0x5d], 0
mov eax, dword [0x48229c]
cmp eax, 0xb1fe857c
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
jne 0x4465e8
mov eax, dword [0x4849d8]
lea ecx, [eax - 1]
mov dword [0x4849d8], ecx
add eax, 0xfb94f50e
cmp eax, 0xe96fbab1
jl 0x4465ee
mov eax, dword [0x482a70]
lea ecx, [eax - 1]
mov dword [0x482a70], ecx
mov ecx, dword [0x4857f0]
sub ecx, eax
mov dword [0x4857f0], ecx
jmp 0x4465ee
mov esi, dword [esp + 0x14]
jmp 0x446639
mov ax, word [0x4814b2]
mov eax, dword [0x4854d4]
imul eax, eax, 0x5a116a48
add eax, 0x59b1ec66
cmp eax, 0xaab11fd4
jg 0x446634
mov eax, dword [0x481dcc]
mov ecx, dword [0x482d58]
imul ecx, eax
cmp ecx, 0x4d53b10a
jg 0x446634
mov eax, dword [0x4838d0]
mov ecx, dword [0x48343c]
or ecx, eax
or ecx, 0xa6c2d6b3
mov dword [0x48343c], ecx
mov ebp, 1
mov eax, dword [0x484414]
mov eax, dword [0x4821d4]
mov ax, word [0x47f76a]
or eax, 0x8040
mov word [0x47f76a], ax
mov eax, dword [0x48233c]
mov eax, dword [0x485240]
dec dword [0x48464c]
mov eax, dword [0x4821dc]
lea ecx, [eax - 1]
mov dword [0x4821dc], ecx
cmp eax, 0x86420c
jg 0x44669c
mov ax, word [0x480116]
lea ecx, [eax - 1]
mov word [0x480116], cx
cwde
mov ecx, dword [0x483928]
lea eax, [eax + ecx + 0x168b802c]
mov dword [0x483928], eax
mov byte [esp + 0x5e], 0
mov byte [esp + 0x5f], 0
mov byte [esp + 0x60], 0
mov byte [esp + 0x61], 0
mov byte [esp + 0x62], 0
mov byte [esp + 0x63], 0
mov byte [esp + 0x64], 0
mov byte [esp + 0x65], 0
mov byte [esp + 0x66], 0
mov byte [esp + 0x67], 0
mov byte [esp + 0x68], 0
mov byte [esp + 0x69], 0
mov byte [esp + 0x6a], 0
mov byte [esp + 0x6b], 0
mov byte [esp + 0x6c], 0
mov byte [esp + 0x6d], 0
mov byte [esp + 0x6e], 0
mov byte [esp + 0x6f], 0
mov byte [esp + 0x70], 0
mov byte [esp + 0x71], 0
mov byte [esp + 0x72], 0
mov byte [esp + 0x73], 0
mov byte [esp + 0x74], 0
mov byte [esp + 0x75], 0
mov byte [esp + 0x76], 0
mov byte [esp + 0x77], 0
mov byte [esp + 0x78], 0
mov byte [esp + 0x79], 0
mov byte [esp + 0x7a], 0
mov byte [esp + 0x7b], 0
mov byte [esp + 0x7c], 0
mov byte [esp + 0x7d], 0
mov byte [esp + 0x7e], 0
mov byte [esp + 0x7f], 0
mov byte [esp + 0x80], 0
mov byte [esp + 0x81], 0
mov byte [esp + 0x82], 0
mov byte [esp + 0x83], 0
mov byte [esp + 0x84], 0
mov byte [esp + 0x85], 0
mov byte [esp + 0x86], 0
mov byte [esp + 0x87], 0
mov byte [esp + 0x88], 0
mov byte [esp + 0x89], 0
mov byte [esp + 0x8a], 0
mov byte [esp + 0x8b], 0
mov byte [esp + 0x8c], 0
mov byte [esp + 0x8d], 0
mov byte [esp + 0x8e], 0
mov byte [esp + 0x8f], 0
mov byte [esp + 0x90], 0
mov byte [esp + 0x91], 0
mov byte [esp + 0x92], 0
mov byte [esp + 0x93], 0
mov byte [esp + 0x94], 0
mov byte [esp + 0x95], 0
mov byte [esp + 0x96], 0
mov byte [esp + 0x97], 0
mov byte [esp + 0x98], 0
mov byte [esp + 0x99], 0
mov byte [esp + 0x9a], 0
mov byte [esp + 0x9b], 0
mov byte [esp + 0x9c], 0
mov byte [esp + 0x9d], 0
mov byte [esp + 0x9e], 0
mov byte [esp + 0x9f], 0
mov byte [esp + 0xa0], 0
mov byte [esp + 0xa1], 0
mov byte [esp + 0xa2], 0
mov byte [esp + 0xa3], 0
add dword [0x48415c], 0x78b5c2e8
mov eax, dword [0x4825a8]
lea ecx, [eax + 1]
mov dword [0x4825a8], ecx
mov cx, word [0x481570]
lea eax, [eax + ecx + 0x695e]
mov word [0x481570], ax
test ebx, ebx
je 0x446927
mov ax, word [0x47fab0]
cwde
mov ecx, dword [0x4854dc]
lea eax, [eax + ecx + 0x696ec75e]
mov dword [0x4854dc], eax
mov dword [esp + 8], ebx
mov dword [esp], edi
mov dword [esp + 4], 0
call dword [0x47f4b0]
sub esp, 0xc
mov eax, dword [0x484d60]
lea ecx, [eax + 1]
mov dword [0x484d60], ecx
xor eax, 0xf0117801
mov cx, word [0x480f4c]
inc ecx
mov word [0x480f4c], cx
movsx ecx, cx
xor ecx, 0x9bc9279
cmp eax, ecx
jg 0x446927
mov eax, dword [0x48208c]
cmp eax, 0xe62ae791
jg 0x446927
mov ax, word [0x480306]
lea ecx, [eax + 1]
mov word [0x480306], cx
cwde
imul eax, eax, 0x567791c9
add eax, 0x18b2f478
mov dword [0x481d7c], eax
add dword [0x482cbc], 0x14d2b9a0
mov dword [esp], esi
call dword [0x47f4e4]
sub esp, 4
mov ax, word [0x47fd28]
cwde
mov ecx, 0xa385b4aa
sub ecx, eax
and ecx, 0xb11eabab
mov eax, dword [0x484f54]
imul eax, ecx
mov dword [0x484f54], eax
mov eax, ebp
add esp, 0xa8
pop esi
pop edi
pop ebx
pop ebp
ret