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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x388
push ebx
push esi
push edi
lea edi, [ebp - 0x208]
mov ecx, 0x82
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov ecx, 0x4f592f
call fcn.0044a38c
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
and ecx, 0x80000
je 0x4aa05d
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 8]
mov ecx, dword [edx + 0x1c]
sub ecx, dword [eax + 0x40]
mov edx, dword [ebp + 8]
cmp ecx, dword [edx + 0x24]
ja 0x4aa05d
mov dword [ebp - 0x388], 1
jmp 0x4aa067
mov dword [ebp - 0x388], 0
mov eax, dword [ebp - 0x388]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jne 0x4aa0a8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x7c]
mov eax, dword [ebp + 8]
mov ecx, dword [edx]
sub ecx, dword [eax + 0x8c]
cmp ecx, 0x14ccc
jb 0x4aa0a8
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x74]
mov ecx, dword [ebp + 8]
add eax, dword [ecx + 0x8c]
mov dword [ebp - 0x388], eax
jmp 0x4aa0b7
mov edx, dword [ebp + 8]
add edx, 0x39272
mov dword [ebp - 0x388], edx
mov eax, dword [ebp - 0x388]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x50]
mov dword [eax + 0x30], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
add ecx, 0x14cbc
mov edx, dword [ebp + 8]
mov dword [edx + 0x34], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x5c], 0
je 0x4aa10a
mov ecx, dword [0x4f0074]
add ecx, 0xa
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str._d__m_output_flush_remaining
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov dword [eax + 0x58], 0
mov eax, dword [ebp + 8]
mov dword [eax + 0x5c], 0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x2c]
movzx edx, byte [ecx]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x38]
sar edx, cl
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x2c]
mov byte [eax], dl
mov eax, dword [ebp + 8]
cmp dword [eax + 0x38], 8
jne 0x4aa14c
mov dword [ebp - 0x388], 1
jmp 0x4aa156
mov dword [ebp - 0x388], 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x28]
sub edx, dword [ebp - 0x388]
mov eax, dword [ebp + 8]
mov dword [eax + 0x28], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
and ecx, 0x1000
je 0x4aa3f7
mov eax, dword [ebp + 8]
cmp dword [eax + 0x64], 0
jne 0x4aa3f7
mov byte [ebp - 0x59], 0x78
mov byte [ebp - 0x71], 3
mov dword [ebp - 0x98], 0xb
mov dword [ebp - 0x8c], 0
jmp 0x4aa1b4
mov eax, dword [ebp - 0x8c]
add eax, 1
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0x98]
jae 0x4aa1e1
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
and ecx, 0xfff
mov edx, dword [ebp - 0x8c]
cmp dword [edx*4 + 0x4e72e4], ecx
jne 0x4aa1df
jmp 0x4aa1e1
jmp 0x4aa1a5
cmp dword [ebp - 0x8c], 2
jae 0x4aa1f0
mov byte [ebp - 0x71], 0
jmp 0x4aa20c
cmp dword [ebp - 0x8c], 6
jae 0x4aa1ff
mov byte [ebp - 0x71], 1
jmp 0x4aa20c
cmp dword [ebp - 0x8c], 6
jne 0x4aa20c
mov byte [ebp - 0x71], 2
movzx eax, byte [ebp - 0x59]
shl eax, 8
movzx ecx, byte [ebp - 0x71]
shl ecx, 6
or eax, ecx
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
xor edx, edx
mov ecx, 0x1f
div ecx
mov eax, 0x1f
sub eax, edx
add eax, dword [ebp - 0x80]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
and eax, 0xff
mov byte [ebp - 0x65], al
movzx eax, byte [ebp - 0x59]
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xb0], 8
mov eax, 1
mov ecx, dword [ebp - 0xb0]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0xa4], eax
jbe 0x4aa295
mov ecx, dword [0x4f0074]
add ecx, 0x26
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0xb0]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aa315
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aa2f5
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aa2c1
xor eax, eax
jne 0x4aa243
movzx eax, byte [ebp - 0x65]
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xc8], 8
mov eax, 1
mov ecx, dword [ebp - 0xc8]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0xbc], eax
jbe 0x4aa36f
mov ecx, dword [0x4f0074]
add ecx, 0x27
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0xbc]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0xc8]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aa3ef
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aa3cf
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aa39b
xor eax, eax
jne 0x4aa31d
cmp dword [ebp + 0xc], 4
jne 0x4aa409
mov dword [ebp - 0x388], 1
jmp 0x4aa413
mov dword [ebp - 0x388], 0
mov eax, dword [ebp - 0x388]
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xe0], 1
mov eax, 1
mov ecx, dword [ebp - 0xe0]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0xd4], eax
jbe 0x4aa467
mov ecx, dword [0x4f0074]
add ecx, 0x2a
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0xe0]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aa4e7
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aa4c7
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aa493
xor eax, eax
jne 0x4aa3f7
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
mov dword [ebp - 8], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x44], 0
jne 0x4aa553
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
and ecx, 0x40000
jne 0x4aa533
mov edx, dword [ebp + 8]
cmp dword [edx + 0x3c], 0x30
jb 0x4aa533
mov dword [ebp - 0x388], 0
jmp 0x4aa53d
mov dword [ebp - 0x388], 1
mov eax, dword [ebp - 0x388]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.004a80b0
add esp, 8
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x44], 0
jne 0x4aa57e
mov eax, dword [ebp + 8]
cmp dword [eax + 0x3c], 0
je 0x4aa9c1
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
sub ecx, dword [ebp - 0x20]
add ecx, 1
mov edx, dword [ebp + 8]
cmp ecx, dword [edx + 0x3c]
jb 0x4aa9c1
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x1c]
sub edx, dword [ecx + 0x40]
mov eax, dword [ebp + 8]
cmp edx, dword [eax + 0x24]
ja 0x4aa9c1
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x20]
mov dword [eax + 0x30], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 8]
mov dword [eax + 0x48], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x14]
mov dword [edx + 0x44], eax
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0x104], 2
mov eax, 1
mov ecx, dword [ebp - 0x104]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0xf8], eax
jbe 0x4aa603
mov ecx, dword [0x4f0074]
add ecx, 0x3a
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0xf8]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0x104]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aa683
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aa663
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aa62f
xor eax, eax
jne 0x4aa5b1
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 0
je 0x4aa779
mov dword [ebp - 0x110], 0
mov eax, dword [ebp + 8]
mov ecx, 8
sub ecx, dword [eax + 0x44]
mov dword [ebp - 0x11c], ecx
mov eax, 1
mov ecx, dword [ebp - 0x11c]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0x110], eax
jbe 0x4aa6f1
mov ecx, dword [0x4f0074]
add ecx, 0x3d
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x110]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0x11c]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aa771
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aa751
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aa71d
xor eax, eax
jne 0x4aa698
mov dword [ebp - 0xec], 2
jmp 0x4aa7a6
mov eax, dword [ebp - 0xec]
sub eax, 1
mov dword [ebp - 0xec], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x3c]
xor edx, 0xffff
mov eax, dword [ebp + 8]
mov dword [eax + 0x3c], edx
cmp dword [ebp - 0xec], 0
je 0x4aa89a
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x3c]
and ecx, 0xffff
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0x134], 0x10
mov eax, 1
mov ecx, dword [ebp - 0x134]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0x128], eax
jbe 0x4aa80d
mov ecx, dword [0x4f0074]
add ecx, 0x41
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x128]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0x134]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aa88d
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aa86d
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aa839
xor eax, eax
jne 0x4aa7b3
jmp 0x4aa785
mov dword [ebp - 0xec], 0
jmp 0x4aa8b5
mov eax, dword [ebp - 0xec]
add eax, 1
mov dword [ebp - 0xec], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xec]
cmp ecx, dword [eax + 0x3c]
jae 0x4aa9bf
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x40]
add ecx, dword [ebp - 0xec]
and ecx, 0x7fff
mov edx, dword [ebp + 8]
movzx eax, byte [edx + ecx + 0x90]
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x14c], 8
mov eax, 1
mov ecx, dword [ebp - 0x14c]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0x140], eax
jbe 0x4aa932
mov ecx, dword [0x4f0074]
add ecx, 0x45
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x140]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0x14c]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aa9b2
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aa992
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aa95e
xor eax, eax
jne 0x4aa8c7
jmp 0x4aa8a6
jmp 0x4aa9f0
cmp dword [ebp - 0x2c], 0
jne 0x4aa9f0
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x20]
mov dword [eax + 0x30], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 8]
mov dword [eax + 0x48], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x14]
mov dword [edx + 0x44], eax
push 1
mov eax, dword [ebp + 8]
push eax
call fcn.004a80b0
add esp, 8
cmp dword [ebp + 0xc], 0
je 0x4aaf27
cmp dword [ebp + 0xc], 4
jne 0x4aac35
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 0
je 0x4aaaf2
mov dword [ebp - 0x158], 0
mov eax, dword [ebp + 8]
mov ecx, 8
sub ecx, dword [eax + 0x44]
mov dword [ebp - 0x164], ecx
mov eax, 1
mov ecx, dword [ebp - 0x164]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0x158], eax
jbe 0x4aaa6a
mov ecx, dword [0x4f0074]
add ecx, 0x56
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x158]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0x164]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aaaea
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aaaca
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aaa96
xor eax, eax
jne 0x4aaa11
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
and ecx, 0x1000
je 0x4aac30
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x17c], ecx
mov dword [ebp - 0x170], 0
jmp 0x4aab2b
mov eax, dword [ebp - 0x170]
add eax, 1
mov dword [ebp - 0x170], eax
cmp dword [ebp - 0x170], 4
jae 0x4aac30
mov eax, dword [ebp - 0x17c]
shr eax, 0x18
and eax, 0xff
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x194], 8
mov eax, 1
mov ecx, dword [ebp - 0x194]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0x188], eax
jbe 0x4aab94
mov ecx, dword [0x4f0074]
add ecx, 0x5d
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x188]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0x194]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aac14
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aabf4
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aabc0
xor eax, eax
jne 0x4aab38
mov eax, dword [ebp - 0x17c]
shl eax, 8
mov dword [ebp - 0x17c], eax
jmp 0x4aab1c
jmp 0x4aaf27
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1b8], 0
mov dword [ebp - 0x1c4], 3
mov eax, 1
mov ecx, dword [ebp - 0x1c4]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0x1b8], eax
jbe 0x4aac91
mov ecx, dword [0x4f0074]
add ecx, 0x65
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x1b8]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0x1c4]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aad11
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aacf1
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aacbd
xor eax, eax
jne 0x4aac3f
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 0
je 0x4aae07
mov dword [ebp - 0x1d0], 0
mov eax, dword [ebp + 8]
mov ecx, 8
sub ecx, dword [eax + 0x44]
mov dword [ebp - 0x1dc], ecx
mov eax, 1
mov ecx, dword [ebp - 0x1dc]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0x1d0], eax
jbe 0x4aad7f
mov ecx, dword [0x4f0074]
add ecx, 0x68
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x1d0]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0x1dc]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aadff
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aaddf
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aadab
xor eax, eax
jne 0x4aad26
mov dword [ebp - 0x1a0], 2
jmp 0x4aae34
mov eax, dword [ebp - 0x1a0]
sub eax, 1
mov dword [ebp - 0x1a0], eax
mov ecx, dword [ebp - 0x1ac]
xor ecx, 0xffff
mov dword [ebp - 0x1ac], ecx
cmp dword [ebp - 0x1a0], 0
je 0x4aaf27
mov eax, dword [ebp - 0x1ac]
and eax, 0xffff
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x1f4], 0x10
mov eax, 1
mov ecx, dword [ebp - 0x1f4]
shl eax, cl
sub eax, 1
cmp dword [ebp - 0x1e8], eax
jbe 0x4aae9a
mov ecx, dword [0x4f0074]
add ecx, 0x6c
mov esi, esp
push ecx
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.bits_____1U____len____1U_
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x1e8]
mov ecx, dword [eax + 0x44]
shl edx, cl
mov eax, dword [ebp + 8]
or edx, dword [eax + 0x48]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
add ecx, dword [ebp - 0x1f4]
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x44], 8
jb 0x4aaf1a
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jae 0x4aaefa
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x48]
mov byte [ecx], al
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
add edx, 1
mov eax, dword [ebp + 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
shr ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x48], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
sub ecx, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], ecx
jmp 0x4aaec6
xor eax, eax
jne 0x4aae41
jmp 0x4aae13
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x34]
jb 0x4aaf5a
mov eax, dword [0x4f0074]
add eax, 0x71
mov esi, esp
push eax
push str.C:Users_notnameDownloadsSimpleSSTool_mainSimpleSSTool_mainminizminiz.c
push str.d__m_pOutput_buf___d__m_pOutput_buf_end
call dword [sym.imp.ucrtbased.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.004499b4
push 0x240
push 0
mov eax, 0x240
imul ecx, eax, 0
mov edx, dword [ebp + 8]
lea eax, [edx + ecx + 0x8192]
mov ecx, 2
imul edx, ecx, 0
add eax, edx
push eax
call fcn.00449004
add esp, 0xc
push 0x40
push 0
mov eax, 0x240
shl eax, 0
mov ecx, dword [ebp + 8]
lea edx, [ecx + eax + 0x8192]
mov eax, 2
imul ecx, eax, 0
add edx, ecx
push edx
call fcn.00449004
add esp, 0xc
mov eax, dword [ebp + 8]
add eax, 0x9273
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x28], eax
mov eax, dword [ebp + 8]
add eax, 0x9272
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x2c], eax
mov eax, dword [ebp + 8]
mov dword [eax + 0x38], 8
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x40]
mov edx, dword [ebp + 8]
add ecx, dword [edx + 0x3c]
mov eax, dword [ebp + 8]
mov dword [eax + 0x40], ecx
mov eax, dword [ebp + 8]
mov dword [eax + 0x3c], 0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x64]
add ecx, 1
mov edx, dword [ebp + 8]
mov dword [edx + 0x64], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x30]
sub ecx, dword [ebp - 0x50]
mov dword [ebp - 0x38], ecx
je 0x4ab143
mov eax, dword [ebp + 8]
cmp dword [eax], 0
je 0x4ab073
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 0x84]
sub edx, dword [ecx + 0x70]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x78]
mov dword [ecx], edx
mov esi, esp
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [ebp - 0x38]
push edx
mov eax, dword [ebp + 8]
add eax, 0x39272
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
call edx
add esp, 0xc
cmp esi, esp
call fcn.004499b4
test eax, eax
jne 0x4ab06e
mov eax, dword [ebp + 8]
mov dword [eax + 0x6c], 0xffffffff
or eax, 0xffffffff
jmp 0x4ab149
jmp 0x4ab143
mov eax, dword [ebp + 8]
add eax, 0x39272
cmp dword [ebp - 0x50], eax
jne 0x4ab12e
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x7c]
mov edx, dword [ebp + 8]
mov eax, dword [ecx]
sub eax, dword [edx + 0x8c]
cmp dword [ebp - 0x38], eax
jae 0x4ab0a5
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x388], ecx
jmp 0x4ab0bc
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x7c]
mov ecx, dword [ebp + 8]
mov edx, dword [eax]
sub edx, dword [ecx + 0x8c]
mov dword [ebp - 0x388], edx
mov eax, dword [ebp - 0x388]
mov dword [ebp - 0x200], eax
mov eax, dword [ebp - 0x200]
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x39272
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x74]
mov ecx, dword [ebp + 8]
add eax, dword [ecx + 0x8c]
push eax
call fcn.0044a1e3
add esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x8c]
add ecx, dword [ebp - 0x200]
mov edx, dword [ebp + 8]
mov dword [edx + 0x8c], ecx
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x200]
mov dword [ebp - 0x38], eax
je 0x4ab12c
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x200]
mov dword [eax + 0x58], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x38]
mov dword [eax + 0x5c], ecx
jmp 0x4ab143
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x8c]
add ecx, dword [ebp - 0x38]
mov edx, dword [ebp + 8]
mov dword [edx + 0x8c], ecx
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x5c]
pop edi
pop esi
pop ebx
add esp, 0x388
cmp ebp, esp
call fcn.004499b4
mov esp, ebp
pop ebp
ret