Function at 0x18001e7e0
Capabilities:
Accept command line arguments
Create directory
Query environment variable

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x678
mov eax, 0x8ed
mov word [rsp + 0x3f0], ax
movzx eax, word [0x1800a6364]
mov dword [rsp + 0x68], eax
mov qword [rsp + 0x78], 0x5419
mov byte [rsp + 0x41], 0x27
mov eax, dword [0x1800a6384]
mov byte [rsp + 0x40], al
movzx eax, word [0x1800a6364]
mov qword [rsp + 0xb0], rax
movabs rax, 0x65064226e0c44
mov qword [rsp + 0x90], rax
mov byte [rsp + 0x44], 0x34
mov qword [rsp + 0x80], 0xb9
movzx eax, word [0x1800a6330]
mov word [rsp + 0x58], ax
mov qword [rsp + 0xa8], 0x54
movsx eax, word [0x1800a6254]
mov dword [rsp + 0x64], eax
movabs rax, 0xa4ab50b5a9482
mov qword [rsp + 0x70], rax
movzx eax, word [0x1800a6244]
movsx rax, ax
mov qword [rsp + 0xa0], rax
mov rax, qword [0x1800a6308]
mov qword [rsp + 0xc0], rax
mov rax, qword [0x1800a62f8]
mov dword [rsp + 0x5c], eax
movzx eax, word [0x1800a62c4]
mov byte [rsp + 0x4c], al
mov eax, dword [0x1800a62dc]
cdqe
mov qword [rsp + 0xb8], rax
movzx eax, byte [0x1800a6284]
mov byte [rsp + 0x43], al
mov rax, qword [0x1800a6328]
mov qword [rsp + 0x98], rax
mov eax, dword [0x1800a6378]
mov dword [rsp + 0x60], eax
mov byte [rsp + 0x42], 0x4a
movzx eax, byte [0x1800a637c]
mov byte [rsp + 0x4d], al
mov rax, qword [0x1800a6338]
mov word [rsp + 0x54], ax
movzx eax, word [0x1800a6380]
mov word [rsp + 0x50], ax
movzx eax, word [0x1800a6358]
mov word [rsp + 0x3ec], ax
mov byte [rsp + 0x12c], 0xad
mov dword [rsp + 0x4f8], 0x2336b0c2
mov dword [rsp + 0x4fc], 7
mov qword [rsp + 0x578], 9
mov dword [rsp + 0x500], 0x9897
mov dword [rsp + 0x504], 0x3298
mov eax, 0xde
mov word [rsp + 0x3e8], ax
mov eax, dword [0x1800a6330]
mov dword [rsp + 0x508], eax
mov byte [rsp + 0x158], 0x2a
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x15c], eax
movsx rax, word [rsp + 0x58]
mov rcx, qword [rsp + 0xb0]
imul rax, rcx
movsx rcx, word [rsp + 0x58]
sub rcx, rax
mov rax, rcx
mov word [rsp + 0x58], ax
movabs rax, 0x2f767af38c5c4
mov rcx, qword [rsp + 0xc0]
xor rcx, rax
mov rax, rcx
mov byte [0x1800a622b], al
mov eax, dword [rsp + 0x15c]
add eax, 0x166
mov dword [rsp + 0x1d0], eax
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x18001ebd7
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov eax, eax
mov qword [0x1800a62e8], rax
cmp qword [rsp + 0x98], 0
jne 0x18001ea2d
mov qword [rsp + 0x400], 1
jmp 0x18001ea39
mov qword [rsp + 0x400], 0
mov rax, qword [0x1800a6310]
cmp qword [rsp + 0x400], rax
jb 0x18001eab6
movsx eax, word [rsp + 0x58]
movzx ecx, byte [0x1800a622b]
cmp eax, ecx
jge 0x18001ea67
mov dword [rsp + 0x2e8], 1
jmp 0x18001ea72
mov dword [rsp + 0x2e8], 0
movzx eax, byte [rsp + 0x4d]
mov ecx, dword [0x1800a6378]
cmp eax, ecx
jne 0x18001ea8e
mov dword [rsp + 0x2e4], 1
jmp 0x18001ea99
mov dword [rsp + 0x2e4], 0
mov eax, dword [rsp + 0x2e4]
cmp dword [rsp + 0x2e8], eax
jge 0x18001eab6
mov dword [rsp + 0x2ec], 0
jmp 0x18001eac1
mov dword [rsp + 0x2ec], 1
mov eax, dword [rsp + 0x2ec]
not eax
test eax, eax
je 0x18001eaea
lea rcx, [0x1800869dc]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov eax, eax
mov qword [rsp + 0xa8], rax
jmp 0x18001ebd7
cmp dword [0x1800a6368], 0
jne 0x18001eb00
mov dword [rsp + 0x2f0], 1
jmp 0x18001eb0b
mov dword [rsp + 0x2f0], 0
movzx eax, byte [rsp + 0x42]
movzx eax, al
cmp eax, dword [rsp + 0x2f0]
jne 0x18001eb61
mov rax, qword [rsp + 0xa0]
movabs rcx, 0xa65c372b778a4
add rax, rcx
mov word [0x1800a636c], ax
mov eax, 4
imul rax, rax, 0x57
lea rcx, [0x18044b160]
mov eax, dword [rcx + rax]
mov rcx, qword [0x1800a6358]
or rcx, rax
mov rax, rcx
mov qword [0x1800a6358], rax
jmp 0x18001ebd7
cmp qword [0x1800a6310], 0
je 0x18001eb95
movzx eax, byte [rsp + 0x43]
movsx rax, al
mov rcx, qword [0x1800a62e0]
sub rax, rcx
mov word [rsp + 0x58], ax
movzx eax, word [0x1800a6244]
movsx rax, ax
mov qword [rsp + 0x78], rax
jmp 0x18001ebd7
mov rax, qword [0x1800a6318]
test rax, rax
je 0x18001ebd7
mov rax, qword [0x1800a6300]
not rax
mov rcx, qword [0x1800a6370]
sub rax, rcx
mov rcx, qword [0x1800a6320]
imul rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0xc0]
mov qword [0x1800a6330], rax
mov eax, dword [rsp + 0x15c]
add eax, 0x1cd
mov dword [rsp + 0x100], eax
movzx eax, word [0x1800a6364]
test eax, eax
je 0x18001ebf7
jmp 0x18001ec0b
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x18001ec0b
mov qword [rsp + 0xa0], 0xfffffffffffffff8
mov eax, dword [rsp + 0x15c]
add eax, 0x17d
mov dword [rsp + 0x510], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x160], eax
mov eax, dword [0x1800a6384]
cdqe
mov rcx, qword [0x1800a6318]
cmp rax, rcx
jl 0x18001ec4c
mov dword [rsp + 0x2f8], 1
jmp 0x18001ec57
mov dword [rsp + 0x2f8], 0
mov eax, dword [0x1800a6384]
cmp eax, 0x48
jl 0x18001ec6f
mov dword [rsp + 0x2f4], 1
jmp 0x18001ec7a
mov dword [rsp + 0x2f4], 0
mov eax, dword [rsp + 0x2f4]
mov eax, dword [rsp + 0x160]
add eax, 0x321
mov dword [rsp + 0x234], eax
mov eax, dword [rsp + 0x160]
add eax, 0x111
mov dword [rsp + 0x230], eax
mov eax, dword [0x1800a62dc]
cdqe
sub rax, qword [0x1800a6310]
mov ecx, dword [0x1800a62dc]
movsxd rcx, ecx
sub rcx, rax
mov rax, rcx
mov dword [0x1800a62dc], eax
movzx eax, byte [0x1800a61fe]
add rax, qword [0x1800a62e8]
mov byte [0x1800a61fe], al
mov eax, dword [rsp + 0x160]
add eax, 0x1be
mov dword [rsp + 0x514], eax
mov rax, qword [rsp + 0x90]
cmp qword [0x1800a6328], rax
jg 0x18001ed10
mov dword [rsp + 0x300], 1
jmp 0x18001ed1b
mov dword [rsp + 0x300], 0
cmp qword [0x1800a6328], 0x31
jg 0x18001ed32
mov dword [rsp + 0x2fc], 1
jmp 0x18001ed3d
mov dword [rsp + 0x2fc], 0
mov eax, dword [rsp + 0x2fc]
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x164], eax
movzx eax, byte [0x1800a622b]
movzx ecx, byte [rsp + 0x42]
movzx ecx, cl
sub eax, ecx
mov byte [rsp + 0x40], al
movsx eax, word [0x1800a6254]
movzx ecx, word [0x1800a6244]
movsx ecx, cx
sub eax, ecx
mov word [0x1800a6254], ax
mov eax, dword [rsp + 0x164]
add eax, 0x2c5
mov dword [rsp + 0x518], eax
mov eax, dword [rsp + 0x164]
add eax, 0x375
mov dword [rsp + 0x118], eax
movzx eax, byte [rsp + 0x43]
movsx rax, al
movabs rcx, 0xe3f1f3a4e2749
add rax, rcx
mov dword [rsp + 0x64], eax
movzx eax, word [0x1800a6380]
cwde
test eax, eax
jne 0x18001edda
mov qword [rsp + 0x408], 1
jmp 0x18001ede6
mov qword [rsp + 0x408], 0
mov rax, qword [0x1800a62f0]
add rax, qword [rsp + 0x408]
mov qword [rsp + 0xc0], rax
mov eax, dword [rsp + 0x164]
add eax, 0xb3
mov dword [rsp + 0x51c], eax
mov rax, qword [0x1800a6338]
sub rax, 0x9464
mov dword [rsp + 0x5c], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x168], eax
mov eax, dword [rsp + 0x68]
cdqe
mov rcx, rax
call qword [sym.imp.USER32.dll_IsWindowVisible]
mov eax, eax
mov qword [0x1800a6320], rax
mov eax, dword [rsp + 0x168]
add eax, 0x3c4
mov dword [rsp + 0x36c], eax
mov rax, qword [0x1800a6370]
test rax, rax
jne 0x18001ee72
mov dword [rsp + 0x178], 1
jmp 0x18001ee7d
mov dword [rsp + 0x178], 0
mov rax, qword [0x1800a6300]
test rax, rax
jne 0x18001ee97
mov qword [rsp + 0x418], 1
jmp 0x18001eea3
mov qword [rsp + 0x418], 0
mov eax, dword [rsp + 0x178]
add eax, 0x2476e87c
not eax
movzx ecx, byte [0x1800a622b]
or ecx, 0xa040
add eax, ecx
cdqe
mov rcx, qword [rsp + 0xb8]
and rcx, 0xaa
mov rdx, qword [0x1800a6300]
xor rdx, qword [rsp + 0x418]
add rcx, rdx
not rcx
add rax, rcx
mov qword [0x1800a6338], rax
mov eax, dword [rsp + 0x168]
add eax, 0xf0
mov dword [rsp + 0x244], eax
mov eax, dword [rsp + 0x168]
add eax, 0x348
mov dword [rsp + 0x4f0], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x16c], eax
movsx rax, byte [rsp + 0x4c]
movabs rcx, 0x6f68e8e0a4f07
imul rax, rcx
mov dword [0x1800a6368], eax
movabs rax, 0xfff699e5f388742d
mov rcx, qword [rsp + 0xc0]
add rax, rcx
mov rcx, qword [0x1800a62e8]
add rax, rcx
mov qword [rsp + 0xc0], rax
mov eax, dword [rsp + 0x16c]
add eax, 0x1d8
mov dword [rsp + 0x248], eax
mov eax, dword [rsp + 0x16c]
add eax, 0x9a
mov dword [rsp + 0x520], eax
mov qword [0x1800a62e8], 2
mov byte [0x1800a622f], 0x6c
mov rax, qword [0x1800a62e8]
mov qword [rsp + 0x3b8], rax
cmp qword [rsp + 0x3b8], 0
je 0x18001efd5
cmp qword [rsp + 0x3b8], 1
je 0x18001f01b
cmp qword [rsp + 0x3b8], 2
je 0x18001f063
jmp 0x18001f075
mov eax, dword [rsp + 0x5c]
add eax, 0xc053ac6e
mov dword [rsp + 0x64], eax
cmp qword [0x1800a6320], 0
je 0x18001effe
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x410], rax
jmp 0x18001f00c
movsx rax, byte [rsp + 0x40]
mov qword [rsp + 0x410], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x78], rax
jmp 0x18001f075
movzx eax, word [rsp + 0x50]
cwde
mov ecx, dword [0x1800a6354]
imul eax, ecx
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x50], ax
mov eax, dword [0x1800a6354]
mov eax, eax
mov rcx, qword [0x1800a6318]
add rax, rcx
mov ecx, dword [0x1800a6354]
mov ecx, ecx
sub rcx, rax
mov rax, rcx
mov dword [0x1800a6354], eax
jmp 0x18001f075
movzx eax, word [rsp + 0x50]
cwde
movsx ecx, word [rsp + 0x58]
add eax, ecx
mov word [rsp + 0x50], ax
mov eax, dword [rsp + 0x16c]
add eax, 0x2a8
mov dword [rsp + 0x524], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x170], eax
mov rax, qword [0x1800a62f8]
cmp rax, qword [rsp + 0xc0]
jne 0x18001f0b3
mov dword [rsp + 0x180], 1
jmp 0x18001f0be
mov dword [rsp + 0x180], 0
mov rax, qword [0x1800a62f8]
cmp rax, 0x5e
jne 0x18001f0d8
mov dword [rsp + 0x17c], 1
jmp 0x18001f0e3
mov dword [rsp + 0x17c], 0
mov eax, dword [rsp + 0x17c]
cmp dword [rsp + 0x180], eax
jge 0x18001f12f
mov eax, dword [0x1800a6354]
mov eax, eax
movzx ecx, byte [rsp + 0x43]
movsx rcx, cl
add rax, qword [0x1800a6348]
add rcx, rax
mov rax, rcx
mov qword [0x1800a6310], rax
mov rax, qword [0x1800a62f8]
sub rax, 0x4f17
mov qword [rsp + 0xa8], rax
jmp 0x18001f179
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x18001f14e
mov rax, qword [rsp + 0x70]
imul rax, rax, 0x9d
mov byte [rsp + 0x4c], al
jmp 0x18001f179
movsx eax, byte [rsp + 0x4c]
cmp eax, 0xcc97
jle 0x18001f179
mov rax, qword [0x1800a6338]
mov rcx, qword [rsp + 0xa8]
lea rax, [rcx + rax - 0xab8b]
mov qword [rsp + 0xa8], rax
mov eax, dword [rsp + 0x170]
add eax, 0x137
mov dword [rsp + 0x528], eax
mov eax, 0xe564fb56
mov rcx, qword [0x1800a6358]
add rcx, rax
mov rax, rcx
mov byte [rsp + 0x40], al
mov rax, qword [rsp + 0x78]
sub rax, 0x46e1a867
mov ecx, dword [rsp + 0x5c]
movsxd rcx, ecx
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x170]
add eax, 0x3c7
mov dword [rsp + 0x11c], eax
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0x170]
add eax, 0x202
mov dword [rsp + 0x52c], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xe0]
add eax, 0x425
mov dword [rsp + 0x530], eax
movzx eax, word [0x1800a6364]
not eax
cdqe
mov rcx, qword [0x1800a62f8]
add rax, rcx
movsx rcx, byte [rsp + 0x40]
add rax, rcx
mov qword [rsp + 0xb8], rax
cmp qword [0x1800a6320], 0
je 0x18001f24d
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x428], rax
jmp 0x18001f25a
movzx eax, byte [rsp + 0x4d]
mov qword [rsp + 0x428], rax
mov eax, dword [rsp + 0x428]
mov dword [0x1800a6368], eax
mov eax, dword [rsp + 0xe0]
add eax, 0x42c
mov dword [rsp + 0x534], eax
mov eax, dword [rsp + 0xe0]
add eax, 0x5f
mov dword [rsp + 0x24c], eax
movsx eax, byte [rsp + 0x40]
mov ecx, dword [rsp + 0x5c]
cmp eax, ecx
jne 0x18001f2af
movzx eax, byte [rsp + 0x4d]
mov byte [0x1800a61fe], al
mov dword [0x1800a6354], 0xe595
jmp 0x18001f323
movsx eax, word [0x1800a6254]
test eax, eax
jne 0x18001f2d7
mov rax, qword [rsp + 0xc0]
not rax
test rax, rax
jne 0x18001f2d7
mov dword [rsp + 0x184], 0
jmp 0x18001f2e2
mov dword [rsp + 0x184], 1
movzx eax, word [rsp + 0x54]
not eax
sub eax, 0x9fd2
cmp eax, dword [rsp + 0x184]
jg 0x18001f323
movzx eax, byte [rsp + 0x43]
movsx rax, al
movabs rcx, 0x1016b5bd80c77
and rax, rcx
mov byte [rsp + 0x41], al
imul rax, qword [rsp + 0x98], 0x407d
mov dword [0x1800a6368], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0xe4], eax
movzx eax, word [0x1800a6360]
mov ecx, dword [rsp + 0x60]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x60], eax
movsx rax, word [0x1800a6254]
add rax, qword [rsp + 0x80]
mov word [0x1800a6254], ax
mov eax, dword [rsp + 0xe4]
add eax, 0x2dd
mov dword [rsp + 0x538], eax
movzx eax, byte [0x1800a622b]
mov rcx, qword [0x1800a6308]
imul rcx, rax
mov rax, rcx
mov rcx, qword [0x1800a6308]
sub rcx, rax
mov rax, rcx
mov qword [0x1800a6308], rax
mov rax, qword [rsp + 0xb8]
add rax, 0x45d4b486
mov dword [0x1800a6354], eax
mov eax, dword [rsp + 0xe4]
add eax, 0x113
mov dword [rsp + 0x120], eax
mov eax, 8
mov word [0x1800a6254], ax
mov eax, dword [rsp + 0xe4]
add eax, 0x316
mov dword [rsp + 0x4a8], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0xe8], eax
movsx rax, word [rsp + 0x58]
mov rcx, qword [0x1800a6330]
sub rcx, rax
mov rax, rcx
mov qword [0x1800a6330], rax
mov eax, dword [rsp + 0xe8]
add eax, 0x349
mov dword [rsp + 0x4ac], eax
mov eax, dword [rsp + 0xe8]
add eax, 0x10a
mov dword [rsp + 0xd0], eax
movzx eax, byte [rsp + 0x41]
movsx eax, al
movzx ecx, byte [rsp + 0x44]
movzx ecx, cl
add eax, ecx
mov byte [rsp + 0x41], al
mov eax, dword [rsp + 0xe8]
add eax, 0xfb
mov dword [rsp + 0x4b0], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0xec], eax
mov eax, dword [rsp + 0xec]
add eax, 0xe3fe
mov dword [rsp + 0x190], eax
movzx eax, byte [rsp + 0x41]
movsx eax, al
mov ecx, dword [0x1800a62dc]
and ecx, eax
mov eax, ecx
mov ecx, dword [0x1800a62dc]
sub ecx, eax
mov eax, ecx
mov dword [0x1800a62dc], eax
mov eax, dword [rsp + 0xec]
add eax, 0xf9
mov dword [rsp + 0x4b4], eax
movzx eax, byte [rsp + 0x43]
movsx rax, al
mov rcx, rax
call qword [sym.imp.USER32.dll_IsIconic]
mov dword [0x1800a626c], eax
mov eax, dword [rsp + 0xec]
add eax, 0xaf
mov dword [rsp + 0x4b8], eax
mov rax, qword [rsp + 0x70]
cmp qword [0x1800a6330], rax
jne 0x18001f4ed
mov dword [rsp + 0x18c], 1
jmp 0x18001f4f8
mov dword [rsp + 0x18c], 0
cmp qword [0x1800a6330], 0x14
jne 0x18001f50f
mov dword [rsp + 0x188], 1
jmp 0x18001f51a
mov dword [rsp + 0x188], 0
mov eax, dword [rsp + 0x188]
cmp dword [rsp + 0x18c], eax
jl 0x18001f536
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov byte [rsp + 0x4d], al
jmp 0x18001f545
mov rax, qword [0x1800a62f0]
shl rax, 2
mov dword [rsp + 0x60], eax
mov qword [0x1800a6320], 0x502f
mov rax, qword [rsp + 0xb0]
mov rcx, qword [0x1800a6320]
add rcx, rax
mov rax, rcx
cmp qword [0x1800a6308], rax
jne 0x18001f5c6
movzx eax, word [0x1800a62c4]
movzx eax, ax
movzx ecx, byte [rsp + 0x41]
movsx ecx, cl
add ecx, 0x5db5
cmp eax, ecx
jne 0x18001f5c6
jmp 0x18001f545
mov eax, dword [rsp + 0x190]
sub eax, 0xacbd
mov ecx, dword [rsp + 0x190]
add ecx, 0xd6
imul eax, ecx
xor eax, 0x3163a5b0
mov dword [rsp + 0x3b4], eax
call qword [sym.imp.USER32.dll_GetDoubleClickTime]
mov word [0x1800a6360], ax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0xf0], eax
movzx eax, byte [0x1800a61fe]
test eax, eax
je 0x18001f68e
mov eax, dword [0x1800a6368]
not eax
movsx ecx, word [0x1800a636c]
add eax, ecx
movzx ecx, byte [0x1800a622b]
add eax, ecx
test eax, eax
jne 0x18001f63e
mov dword [rsp + 0x198], 1
jmp 0x18001f649
mov dword [rsp + 0x198], 0
cmp qword [0x1800a6330], 0
jne 0x18001f660
mov dword [rsp + 0x194], 1
jmp 0x18001f66b
mov dword [rsp + 0x194], 0
movzx eax, byte [0x1800a622b]
imul eax, dword [rsp + 0x194]
mov ecx, dword [rsp + 0x198]
sub ecx, eax
mov eax, ecx
cdqe
mov qword [0x1800a6348], rax
mov eax, dword [rsp + 0xf0]
add eax, 0x102
mov dword [rsp + 0x3f4], eax
mov eax, 1
mov word [rsp + 0x54], ax
mov byte [rsp + 0x42], 0xbe
movzx eax, word [rsp + 0x54]
mov dword [rsp + 0x19c], eax
cmp dword [rsp + 0x19c], 0
je 0x18001f6d2
cmp dword [rsp + 0x19c], 1
je 0x18001f6f5
jmp 0x18001f709
movzx eax, byte [rsp + 0x44]
movzx eax, al
movsx ecx, word [0x1800a6254]
sub eax, ecx
movzx ecx, byte [rsp + 0x44]
movzx ecx, cl
or ecx, eax
mov eax, ecx
mov byte [rsp + 0x44], al
jmp 0x18001f709
movzx eax, word [0x1800a6380]
cwde
add eax, 0x5263
mov word [0x1800a6380], ax
mov eax, dword [rsp + 0xf0]
add eax, 0xaa10
mov dword [rsp + 0x3f8], eax
mov eax, dword [rsp + 0xf0]
add eax, 0xf65b
mov dword [rsp + 0x4bc], eax
lea rax, [rsp + 0x5a8]
lea rcx, str.d:_th_ds_ext_aad_b
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x5a8]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [rsp + 0x42], al
mov eax, 0xa102a241
mov qword [0x1800a6330], rax
movsx eax, byte [rsp + 0x40]
inc eax
cdqe
cmp qword [0x1800a6330], rax
jne 0x18001f903
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStrings]
mov byte [rsp + 0x41], al
mov rax, qword [0x1800a6370]
mov ecx, dword [0x1800a6378]
movsxd rcx, ecx
cmp rax, rcx
jne 0x18001f7ab
mov dword [rsp + 0x1a4], 1
jmp 0x18001f7b6
mov dword [rsp + 0x1a4], 0
movzx eax, byte [rsp + 0x43]
movsx eax, al
cmp eax, dword [0x1800a626c]
jge 0x18001f7d3
mov dword [rsp + 0x1a0], 1
jmp 0x18001f7de
mov dword [rsp + 0x1a0], 0
mov eax, dword [rsp + 0x1a0]
cmp dword [rsp + 0x1a4], eax
jg 0x18001f7fb
mov dword [rsp + 0x1a8], 1
jmp 0x18001f806
mov dword [rsp + 0x1a8], 0
mov eax, dword [rsp + 0x1a8]
not eax
movzx eax, word [0x1800a6350]
movzx eax, ax
cmp eax, 1
jne 0x18001f903
mov dword [rsp + 0x60], 2
mov rax, qword [rsp + 0xa0]
add rax, 0x1dad704f
mov rcx, qword [0x1800a62e8]
sub rcx, rax
mov rax, rcx
mov qword [0x1800a62e8], rax
mov eax, dword [0x1800a637c]
sub eax, 0x547a9a95
mov eax, eax
mov qword [rsp + 0x90], rax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xf4], eax
cmp dword [rsp + 0xf4], 0
je 0x18001f88c
cmp dword [rsp + 0xf4], 1
je 0x18001f89f
cmp dword [rsp + 0xf4], 2
je 0x18001f8c0
jmp 0x18001f8da
movzx eax, word [0x1800a62c4]
dec ax
mov word [0x1800a62c4], ax
jmp 0x18001f8da
movsx eax, word [0x1800a636c]
mov ecx, dword [rsp + 0x64]
add eax, ecx
movsx ecx, word [0x1800a636c]
or ecx, eax
mov eax, ecx
mov word [0x1800a636c], ax
jmp 0x18001f8da
movsx rax, word [0x1800a636c]
mov rcx, qword [rsp + 0x90]
sub rax, rcx
mov word [0x1800a636c], ax
jmp 0x18001f903
mov eax, 0xa102a241
mov qword [0x1800a6330], rax
mov eax, 4
imul rax, rax, 0x16ac
lea rcx, [0x1803be0f0]
mov edx, dword [rsp + 0x78]
mov dword [rcx + rax], edx
movzx eax, word [0x1803be0b0]
mov word [rsp + 0x58], ax
mov eax, dword [0x1800a62dc]
cdqe
and rax, qword [rsp + 0x78]
mov ecx, dword [0x1800a62dc]
movsxd rcx, ecx
sub rcx, rax
mov rax, rcx
mov dword [0x1800a62dc], eax
movsx rax, byte [rsp + 0x40]
mov rcx, qword [0x1800a62e8]
add rcx, rax
mov rax, rcx
mov qword [0x1800a62e8], rax
mov eax, dword [rsp + 0x3f4]
mov ecx, dword [rsp + 0x3f8]
imul eax, ecx
mov ecx, 0xab6420
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x348], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0xf8], eax
movzx eax, word [0x1800a6360]
movsx ecx, byte [rsp + 0x40]
cmp eax, ecx
jl 0x18001fa47
mov eax, 1
mov word [0x1800a6254], ax
movzx eax, word [0x1800a622c]
movzx eax, ax
imul eax, eax, 0xe4090d88
mov dword [rsp + 0x68], eax
movsx eax, word [0x1800a6254]
mov dword [rsp + 0x1ac], eax
cmp dword [rsp + 0x1ac], 0
je 0x18001f9f7
cmp dword [rsp + 0x1ac], 1
je 0x18001fa30
jmp 0x18001fa47
mov eax, dword [rsp + 0x64]
xor eax, 0xc2
cdqe
mov qword [rsp + 0x80], rax
movzx eax, byte [rsp + 0x44]
movzx eax, al
movzx ecx, word [0x1800a6244]
movsx ecx, cx
and eax, ecx
movzx ecx, byte [rsp + 0x44]
movzx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x44], al
jmp 0x18001fa47
movzx eax, byte [rsp + 0x43]
movsx eax, al
add eax, 0xa66420ed
mov eax, eax
mov qword [rsp + 0xb8], rax
mov eax, dword [rsp + 0xf8]
add eax, 0xf8
mov dword [rsp + 0x4c0], eax
mov eax, 1
mov word [0x1800a636c], ax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x60]
movzx ecx, byte [0x1800a622b]
movabs rdx, 0xffffffff234d0b60
lea rcx, [rcx + rdx]
add eax, ecx
mov byte [0x1800a622b], al
movsx eax, word [0x1800a636c]
mov dword [rsp + 0x1b0], eax
cmp dword [rsp + 0x1b0], 0
je 0x18001fabb
cmp dword [rsp + 0x1b0], 1
je 0x18001fae8
jmp 0x18001fb17
mov rax, qword [0x1800a62f0]
xor rax, qword [0x1800a62e8]
mov rcx, qword [0x1800a62f0]
add rcx, rax
mov rax, rcx
mov qword [0x1800a62f0], rax
mov qword [rsp + 0x78], 0x4715200a
jmp 0x18001fb17
mov rax, qword [rsp + 0xb8]
sar rax, 5
mov qword [0x1800a6328], rax
movzx eax, byte [rsp + 0x41]
movsx rax, al
movabs rcx, 0xbaffa81aed37d
add rax, rcx
mov dword [0x1800a6368], eax
mov eax, dword [rsp + 0xf8]
add eax, 0x9423
mov dword [rsp + 0x4c4], eax
mov eax, dword [rsp + 0xf8]
add eax, 0xb9
mov dword [rsp + 0x398], eax
movsx eax, byte [rsp + 0x4c]
mov ecx, dword [rsp + 0x5c]
cmp eax, ecx
jle 0x18001fb4c
jmp 0x18001fba2
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
je 0x18001fba2
movzx eax, word [0x1800a62c4]
movzx eax, ax
test eax, eax
jne 0x18001fb6e
mov byte [rsp + 0x89], 1
jmp 0x18001fb76
mov byte [rsp + 0x89], 0
movzx eax, byte [rsp + 0x89]
mov byte [0x1800a61ff], al
movzx eax, byte [rsp + 0x41]
movsx eax, al
mov ecx, dword [rsp + 0x60]
sub eax, ecx
movzx ecx, byte [rsp + 0x41]
movsx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x41], al
mov eax, dword [rsp + 0x398]
or eax, 0x499f
add eax, 0xffffb641
mov dword [rsp + 0x34c], eax
movzx eax, word [rsp + 0x54]
movzx ecx, word [0x1800a6244]
movsx ecx, cx
imul eax, ecx
test eax, eax
jne 0x18001fbdd
mov dword [rsp + 0x1b4], 1
jmp 0x18001fbe8
mov dword [rsp + 0x1b4], 0
mov eax, dword [rsp + 0x1b4]
sub eax, 0x89
mov byte [rsp + 0x40], al
movzx eax, word [0x1800a62c4]
movzx eax, ax
mov dword [rsp + 0x5c], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0xfc], eax
mov rax, qword [rsp + 0x78]
not rax
test rax, rax
jne 0x18001fc69
mov eax, dword [0x1800a6378]
test eax, eax
je 0x18001fc48
movabs rax, 0x373c69ed339c5
xor ecx, ecx
cmp rcx, rax
je 0x18001fc48
mov dword [rsp + 0x1b8], 1
jmp 0x18001fc53
mov dword [rsp + 0x1b8], 0
movzx eax, word [rsp + 0x54]
not eax
sub eax, dword [0x1800a626c]
cmp eax, dword [rsp + 0x1b8]
jge 0x18001fc93
mov rax, qword [rsp + 0x90]
imul rax, rax, 0x4c70
mov qword [rsp + 0xb0], rax
movzx eax, word [0x1803be0b0]
mov word [0x1800a6284], ax
jmp 0x18001fd59
movzx eax, word [0x1800a6244]
movsx rax, ax
imul rax, qword [rsp + 0x80]
test rax, rax
jne 0x18001fcba
mov qword [rsp + 0x430], 1
jmp 0x18001fcc6
mov qword [rsp + 0x430], 0
movsx rax, byte [rsp + 0x40]
movabs rcx, 0x1cba543fbec6f
add rax, rcx
mov rcx, qword [rsp + 0x430]
add rax, rcx
not rax
movzx ecx, byte [0x1800a61fe]
mov rdx, qword [rsp + 0xb0]
not rdx
add rcx, rdx
movzx edx, byte [rsp + 0x44]
movzx edx, dl
mov rdi, qword [0x1800a6320]
not rdi
imul rdx, rdi
sub rcx, rdx
imul rax, rcx
mov word [0x1800a6254], ax
mov eax, dword [rsp + 0x60]
test eax, eax
jne 0x18001fd35
mov dword [rsp + 0x1bc], 1
jmp 0x18001fd40
mov dword [rsp + 0x1bc], 0
movsx eax, word [0x1800a6254]
imul eax, dword [rsp + 0x1bc]
cdqe
mov qword [rsp + 0xb0], rax
mov eax, dword [rsp + 0xfc]
add eax, 0x2ef9
mov dword [rsp + 0x39c], eax
mov eax, dword [rsp + 0xfc]
add eax, 0x9d
mov dword [rsp + 0x3a0], eax
lea rax, [rsp + 0x5f8]
lea rcx, str.The_requested_oper
mov rdi, rax
mov rsi, rcx
mov ecx, 0x26
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x5f8]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
cdqe
mov qword [rsp + 0x80], rax
mov eax, dword [rsp + 0xfc]
add eax, 0x6fb4
mov dword [rsp + 0x4c8], eax
movabs rax, 0x4587c0ce26a0c
mov rcx, qword [rsp + 0xc0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xa8], rax
movzx eax, word [rsp + 0x54]
movsx ecx, byte [rsp + 0x4c]
cmp eax, ecx
je 0x18001fe01
mov dword [rsp + 0x1c4], 1
jmp 0x18001fe0c
mov dword [rsp + 0x1c4], 0
movzx eax, word [rsp + 0x54]
cmp eax, 0x35
je 0x18001fe23
mov dword [rsp + 0x1c0], 1
jmp 0x18001fe2e
mov dword [rsp + 0x1c0], 0
mov eax, dword [rsp + 0x1c0]
cmp dword [rsp + 0x1c4], eax
jg 0x18001fe40
jmp 0x18001febe
mov eax, dword [rsp + 0x60]
test eax, eax
jne 0x18001fe55
mov dword [rsp + 0x1cc], 1
jmp 0x18001fe60
mov dword [rsp + 0x1cc], 0
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x18001fe7e
movsx eax, word [rsp + 0x58]
test eax, eax
je 0x18001fe7e
mov dword [rsp + 0x1c8], 1
jmp 0x18001fe89
mov dword [rsp + 0x1c8], 0
mov eax, dword [rsp + 0x1c8]
not eax
cmp dword [rsp + 0x1cc], eax
jl 0x18001febe
mov eax, dword [0x1800a637c]
movabs rcx, 0x26d007c941e74
sub rax, rcx
mov byte [0x1800a61fe], al
mov eax, 0x2138
mov word [rsp + 0x54], ax
mov eax, dword [rsp + 0x39c]
mov ecx, dword [rsp + 0x3a0]
xor eax, ecx
mov ecx, 0x2e64
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1d0]
mov edx, dword [rsp + 0x100]
xor ecx, edx
mov edx, dword [rsp + 0x100]
mov edi, dword [rsp + 0x1d0]
xor edx, edi
sub ecx, edx
mov edx, dword [rsp + 0x100]
add edx, 0x141
imul ecx, edx
sub eax, ecx
mov dword [rsp + 0x350], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x104], eax
cmp qword [rsp + 0xc0], 0
jne 0x18001ff38
mov qword [rsp + 0x438], 1
jmp 0x18001ff44
mov qword [rsp + 0x438], 0
mov rax, qword [rsp + 0x90]
sub rax, qword [rsp + 0x438]
movzx ecx, word [0x1800a6364]
sub rax, rcx
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0x104]
add eax, 0x12a
mov dword [rsp + 0x1d4], eax
mov eax, dword [0x1800a6354]
shr eax, 3
mov word [rsp + 0x50], ax
mov eax, dword [rsp + 0x104]
add eax, 0xd81e
mov dword [rsp + 0x4e8], eax
mov qword [rsp + 0x98], 0
mov eax, dword [0x1800a62dc]
imul eax, eax, 0x2247a2fb
mov dword [rsp + 0x5c], eax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x540], rax
cmp qword [rsp + 0x540], 0
je 0x18001ffcf
jmp 0x18001ffde
movsx rax, byte [0x1800a6243]
mov qword [0x1800a6320], rax
mov eax, dword [rsp + 0x104]
add eax, 0x90f7
mov dword [rsp + 0x3a4], eax
mov eax, dword [rsp + 0x3a4]
sub eax, 0x62b9
mov ecx, dword [rsp + 0x1d4]
mov edx, dword [rsp + 0x1d4]
xor ecx, edx
imul eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x354], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x108], eax
mov eax, dword [rsp + 0x108]
add eax, 0x11b
mov dword [rsp + 0x4cc], eax
mov qword [0x1800a6328], 2
movzx eax, word [0x1800a636c]
inc ax
mov word [0x1800a636c], ax
mov eax, dword [rsp + 0x108]
add eax, 0x83a5
mov dword [rsp + 0x1f0], eax
mov eax, dword [rsp + 0x68]
movzx ecx, byte [rsp + 0x41]
movsx ecx, cl
cmp eax, ecx
jl 0x180020089
mov dword [rsp + 0x1dc], 1
jmp 0x180020094
mov dword [rsp + 0x1dc], 0
mov eax, dword [rsp + 0x68]
cmp eax, 0x3e
jl 0x1800200aa
mov dword [rsp + 0x1d8], 1
jmp 0x1800200b5
mov dword [rsp + 0x1d8], 0
mov eax, dword [rsp + 0x1d8]
cmp dword [rsp + 0x1dc], eax
jg 0x1800200da
movsxd rax, dword [0x1800a626c]
sub rax, qword [rsp + 0xa8]
mov dword [0x1800a626c], eax
mov eax, dword [rsp + 0x108]
add eax, 0x6c
mov dword [rsp + 0x4f4], eax
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov word [0x1800a6284], ax
movzx eax, word [0x1800a6284]
test eax, eax
je 0x180020108
jmp 0x180020290
movzx eax, word [0x1800a62c4]
movzx eax, ax
not eax
cdqe
mov rcx, qword [rsp + 0xa0]
cmp rax, rcx
jne 0x180020130
mov dword [rsp + 0x1e4], 1
jmp 0x18002013b
mov dword [rsp + 0x1e4], 0
mov eax, dword [0x1800a6384]
cdqe
cmp qword [rsp + 0xa8], rax
jle 0x18002015a
mov dword [rsp + 0x1e0], 1
jmp 0x180020165
mov dword [rsp + 0x1e0], 0
mov eax, dword [rsp + 0x1e0]
cmp dword [rsp + 0x1e4], eax
jg 0x1800201c3
mov eax, dword [rsp + 0x5c]
mov ecx, dword [0x1800a62dc]
add eax, ecx
test eax, eax
jne 0x180020192
mov dword [rsp + 0x1e8], 1
jmp 0x18002019d
mov dword [rsp + 0x1e8], 0
movsx eax, word [0x1800a636c]
not eax
add eax, 0x6e
not eax
mov ecx, dword [rsp + 0x1e8]
imul ecx, eax
mov eax, ecx
mov word [0x1800a6254], ax
jmp 0x180020290
cmp qword [rsp + 0x98], 0
je 0x180020268
mov rax, qword [rsp + 0x80]
mov rcx, qword [0x1800a6340]
add rcx, rax
mov rax, rcx
test rax, rax
jne 0x1800201f9
mov dword [rsp + 0x1ec], 1
jmp 0x180020204
mov dword [rsp + 0x1ec], 0
mov rax, qword [rsp + 0x70]
not rax
mov rcx, qword [rsp + 0x70]
add rax, qword [0x1800a62e8]
add rcx, rax
mov rax, rcx
not rax
mov ecx, dword [rsp + 0x68]
mov edx, dword [rsp + 0x1ec]
sub edx, ecx
mov ecx, edx
movsxd rcx, ecx
imul rax, rcx
test rax, rax
jne 0x18002024a
mov qword [rsp + 0x440], 1
jmp 0x180020256
mov qword [rsp + 0x440], 0
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0xb8], rax
jmp 0x180020290
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
je 0x180020290
movzx eax, byte [rsp + 0x42]
movzx eax, al
add eax, dword [0x1800a637c]
movzx ecx, byte [rsp + 0x42]
movzx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0x1f0]
mov ecx, dword [rsp + 0x1f0]
or eax, ecx
xor eax, 0x83a1
mov dword [rsp + 0x358], eax
movzx eax, byte [rsp + 0x42]
movzx eax, al
mov rcx, qword [rsp + 0xb0]
add rcx, rax
mov rax, rcx
mov qword [0x1800a62e0], rax
movzx eax, word [rsp + 0x54]
sar eax, 1
mov byte [rsp + 0x42], al
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x10c], eax
cmp qword [0x1800a6328], 0
je 0x18002034f
movsx rax, word [0x1800a6254]
mov rcx, qword [rsp + 0x90]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x90]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x180020332
movzx eax, byte [rsp + 0x41]
movsx eax, al
mov dword [rsp + 0x1f4], eax
jmp 0x18002033d
mov eax, dword [rsp + 0x64]
mov dword [rsp + 0x1f4], eax
mov eax, dword [rsp + 0x1f4]
mov dword [0x1800a6384], eax
jmp 0x180020423
movzx eax, byte [0x1800a622e]
movsx eax, al
movsx ecx, byte [rsp + 0x40]
cmp eax, ecx
jg 0x1800203a2
mov rax, qword [0x1800a6338]
mov rcx, qword [rsp + 0xb8]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0xb8]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x70]
shl rax, 4
mov word [0x1800a6380], ax
jmp 0x180020423
cmp qword [0x1800a6358], 0
jne 0x1800203c3
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x1800203c3
mov dword [rsp + 0x1fc], 1
jmp 0x1800203ce
mov dword [rsp + 0x1fc], 0
mov rax, qword [0x1800a6318]
not rax
movzx ecx, word [rsp + 0x54]
cmp rax, rcx
jl 0x1800203ef
mov dword [rsp + 0x1f8], 1
jmp 0x1800203fa
mov dword [rsp + 0x1f8], 0
mov eax, dword [rsp + 0x1f8]
cmp dword [rsp + 0x1fc], eax
jle 0x180020423
movzx eax, word [0x1800a6284]
movabs rcx, 0x90b2ab91df631
sub rax, rcx
mov word [rsp + 0x54], ax
mov eax, dword [rsp + 0x10c]
add eax, 0x8276
mov dword [rsp + 0x3a8], eax
mov rax, qword [rsp + 0xa0]
cmp rax, qword [0x1800a6328]
jle 0x180020454
mov dword [rsp + 0x200], 1
jmp 0x18002045f
mov dword [rsp + 0x200], 0
mov eax, dword [rsp + 0x200]
not eax
movzx ecx, word [0x1800a622c]
movzx ecx, cx
cmp eax, ecx
jl 0x180020483
mov dword [rsp + 0x204], 1
jmp 0x18002048e
mov dword [rsp + 0x204], 0
mov eax, dword [rsp + 0x204]
not eax
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
cmp eax, ecx
jg 0x1800204b3
movsx eax, byte [0x1800a61ff]
sub eax, 0x55
mov dword [rsp + 0x64], eax
jmp 0x1800204e4
mov eax, dword [0x1803be0b0]
mov qword [rsp + 0xa0], rax
mov eax, 8
imul rax, rax, 3
lea rcx, [0x18054ecf8]
movzx edx, byte [rsp + 0x42]
movzx edx, dl
add rdx, qword [rcx + rax]
mov rax, rdx
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0x10c]
add eax, 0x64
mov dword [rsp + 0x4d0], eax
mov rax, qword [0x1800a62f0]
movzx ecx, byte [rsp + 0x44]
movzx ecx, cl
cmp rax, rcx
jne 0x180020539
mov rax, qword [0x1800a62f0]
add rax, qword [rsp + 0x80]
mov rcx, qword [0x1800a62f0]
sub rcx, rax
mov rax, rcx
mov qword [0x1800a62f0], rax
mov qword [0x1800a6330], 0xe9
jmp 0x180020588
mov rax, qword [rsp + 0x90]
test rax, rax
jne 0x180020554
mov qword [rsp + 0x448], 1
jmp 0x180020560
mov qword [rsp + 0x448], 0
mov rax, qword [0x1800a6308]
mov rcx, qword [rsp + 0x448]
xor rcx, rax
mov rax, rcx
not rax
mov qword [rsp + 0xb0], rax
mov dword [rsp + 0x60], 4
mov eax, dword [rsp + 0x10c]
add eax, 0x73ae
mov dword [rsp + 0x3ac], eax
mov eax, dword [rsp + 0x3a8]
mov ecx, dword [rsp + 0x3ac]
xor eax, ecx
add eax, 0xffff0e37
mov dword [rsp + 0x35c], eax
lea rax, [rsp + 0x5c0]
lea rcx, str.Falied_to_open_KSP
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x5c0]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [rsp + 0x44], al
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x110], eax
mov eax, dword [rsp + 0x110]
add eax, 0x2ef
mov dword [rsp + 0x370], eax
movsx eax, byte [0x1800a6243]
test eax, eax
je 0x180020622
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x420], rax
jmp 0x180020631
movzx eax, byte [0x1800a622b]
mov qword [rsp + 0x420], rax
mov rax, qword [rsp + 0x420]
mov qword [0x1800a6310], rax
mov eax, dword [rsp + 0x110]
add eax, 0x345
mov dword [rsp + 0x124], eax
mov dword [0x1800a62dc], 0
movzx eax, byte [0x1800a622b]
mov rcx, qword [0x1800a62f0]
sub rax, rcx
mov dword [rsp + 0x5c], eax
movzx eax, byte [0x1800a61fe]
mov rcx, qword [rsp + 0x80]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov eax, dword [0x1800a62dc]
mov dword [rsp + 0x3b0], eax
cmp dword [rsp + 0x3b0], 0
je 0x1800206a8
jmp 0x1800206b3
mov qword [0x1800a6310], 0x3c09
mov eax, dword [rsp + 0x110]
add eax, 0x241
mov dword [rsp + 0x374], eax
mov dword [rsp + 0x2e0], 0
mov dword [rsp + 0x360], 0
mov eax, 2
imul rax, rax, 0xe
lea rcx, [0x180612460]
movzx eax, word [rcx + rax]
mov rcx, qword [0x1800a6348]
sub rcx, rax
mov rax, rcx
mov qword [0x1800a6348], rax
mov dword [rsp + 0x114], 0x104
mov eax, dword [rsp + 0x3b4]
mov dword [rsp + 0x48], eax
movzx eax, word [0x1800a6380]
cwde
movzx ecx, word [rsp + 0x54]
cmp eax, ecx
jg 0x18002074a
cmp qword [rsp + 0x78], 0
je 0x180020748
mov rax, qword [0x1800a62e0]
sub rax, 0x95
mov qword [rsp + 0xa8], rax
jmp 0x18002079d
movsx eax, byte [0x1800a6243]
not eax
mov ecx, dword [rsp + 0x5c]
add ecx, 0x8f0c5e27
cmp eax, ecx
jbe 0x180020775
movsx eax, byte [0x1800a6243]
sub eax, 0xcf
mov byte [0x1800a622e], al
jmp 0x18002079d
mov rax, qword [rsp + 0x70]
test rax, rax
jne 0x180020788
cmp dword [0x1800a637c], 0
je 0x18002079d
mov rax, qword [0x1800a6328]
xor rax, 0x2942f7d9
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x318], 0
movzx eax, byte [0x1803be0b0]
mov byte [rsp + 0x40], al
mov qword [rsp + 0xd8], 0
mov rax, qword [0x1800a6370]
movzx ecx, byte [0x1800a622b]
cmp rax, rcx
jae 0x1800207e0
mov dword [rsp + 0x20c], 1
jmp 0x1800207eb
mov dword [rsp + 0x20c], 0
mov rax, qword [0x1800a6370]
cmp rax, 0x43
jae 0x180020805
mov dword [rsp + 0x208], 1
jmp 0x180020810
mov dword [rsp + 0x208], 0
mov eax, dword [rsp + 0x208]
cmp dword [rsp + 0x20c], eax
jge 0x18002087e
movzx eax, word [0x1800a62c4]
movzx eax, ax
cmp rax, qword [0x1800a6320]
jne 0x180020849
movsx eax, word [rsp + 0x58]
add eax, 0xca359909
mov eax, eax
mov qword [rsp + 0xb0], rax
jmp 0x18002087c
movzx eax, word [rsp + 0x54]
test eax, eax
je 0x18002087c
movzx eax, byte [rsp + 0x41]
movsx rax, al
mov rcx, qword [0x1800a62e8]
sub rcx, rax
mov rax, rcx
mov rcx, qword [0x1800a62e8]
add rcx, rax
mov rax, rcx
mov qword [0x1800a62e8], rax
jmp 0x1800208d4
movzx eax, byte [rsp + 0x42]
movzx eax, al
test eax, eax
jne 0x180020896
movzx eax, byte [rsp + 0x42]
movzx eax, al
test eax, eax
je 0x1800208d4
movsx rax, byte [rsp + 0x40]
movzx ecx, byte [0x1800a61fb]
movsx rcx, cl
mov rdx, qword [0x1800a6308]
add rdx, rax
mov rax, rdx
add rcx, rax
mov rax, rcx
movzx ecx, word [0x1800a6350]
movzx ecx, cx
imul rcx, qword [rsp + 0x78]
sub rax, rcx
mov word [0x1800a622c], ax
mov qword [rsp + 0x320], 0
mov byte [rsp + 0x42], 1
movzx eax, byte [rsp + 0x43]
movsx eax, al
add eax, 0x77dc
cdqe
mov qword [rsp + 0xa0], rax
movzx eax, byte [rsp + 0x43]
movsx rax, al
xor rax, qword [0x1800a6310]
mov qword [0x1800a6338], rax
movzx eax, byte [rsp + 0x42]
mov byte [rsp + 0x210], al
cmp byte [rsp + 0x210], 0
je 0x180020935
cmp byte [rsp + 0x210], 1
je 0x180020944
jmp 0x180020960
movzx eax, byte [rsp + 0x4d]
shl eax, 7
mov word [rsp + 0x50], ax
jmp 0x180020960
mov eax, dword [0x1803be0b0]
mov qword [0x1800a6318], rax
mov rax, qword [rsp + 0xa8]
shl rax, 1
mov byte [rsp + 0x4c], al
mov qword [rsp + 0x310], 0
call qword [sym.imp.USER32.dll_GetMessageExtraInfo]
mov eax, eax
mov qword [0x1800a62e0], rax
mov qword [rsp + 0x308], 0
mov eax, dword [rsp + 0x68]
not eax
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800209a6
mov dword [rsp + 0x214], 1
jmp 0x1800209b1
mov dword [rsp + 0x214], 0
mov eax, dword [0x1800a62dc]
test eax, eax
jne 0x1800209c9
mov qword [rsp + 0x450], 1
jmp 0x1800209d5
mov qword [rsp + 0x450], 0
movzx eax, word [0x1800a6380]
cwde
xor eax, dword [rsp + 0x214]
cdqe
movzx ecx, word [0x1800a6244]
movsx rcx, cx
mov rdx, qword [rsp + 0x70]
imul rdx, qword [rsp + 0x450]
imul rcx, rdx
sub rax, rcx
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x348]
mov dword [rsp + 0xc8], eax
movzx eax, word [0x1800a6360]
movabs rcx, 0xfadb42573d3d7
imul rax, rcx
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x34c]
mov dword [rsp + 0x14c], eax
mov rax, qword [0x1800a6348]
mov qword [0x1800a6318], rax
movzx eax, word [0x1800a62c4]
movzx eax, ax
mov rcx, qword [rsp + 0xb0]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0xb0], rax
mov eax, dword [rsp + 0x350]
mov dword [rsp + 0x174], eax
mov eax, dword [rsp + 0x60]
movzx ecx, byte [rsp + 0x42]
movzx ecx, cl
cmp eax, ecx
jl 0x180020a98
mov dword [rsp + 0x21c], 1
jmp 0x180020aa3
mov dword [rsp + 0x21c], 0
mov eax, dword [rsp + 0x60]
cmp eax, 0x36
jl 0x180020ab9
mov dword [rsp + 0x218], 1
jmp 0x180020ac4
mov dword [rsp + 0x218], 0
mov eax, dword [rsp + 0x218]
cmp dword [rsp + 0x21c], eax
jge 0x180020b39
cmp qword [0x1800a6320], 0
je 0x180020b21
mov eax, dword [0x1800a6354]
imul eax, dword [0x1800a637c]
movzx ecx, word [0x1800a6284]
mov edx, dword [0x1800a62dc]
imul ecx, edx
sub eax, ecx
not eax
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
movsx edx, byte [0x1800a61ff]
movsx edi, word [rsp + 0x58]
xor edx, edi
xor ecx, edx
add eax, ecx
mov byte [0x1800a622b], al
jmp 0x180020b39
mov rax, qword [0x1800a6320]
mov rcx, qword [0x1800a6358]
add rcx, rax
mov rax, rcx
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0x354]
mov dword [rsp + 0x2a8], eax
movsx rax, byte [rsp + 0x4c]
cmp qword [rsp + 0x80], rax
jne 0x180020b85
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x5c], eax
mov rax, qword [0x1800a62e0]
xor rax, qword [0x1800a6340]
mov rcx, qword [0x1800a62e0]
and rcx, rax
mov rax, rcx
mov qword [0x1800a62e0], rax
jmp 0x180020bb7
mov rax, qword [rsp + 0xa8]
not rax
movzx ecx, byte [rsp + 0x4d]
cmp rax, rcx
jne 0x180020bb7
movzx eax, word [rsp + 0x58]
inc ax
mov word [rsp + 0x58], ax
movzx eax, byte [0x1800a61fb]
movsx eax, al
sar eax, 1
mov byte [rsp + 0x41], al
mov eax, dword [rsp + 0x358]
mov dword [rsp + 0x250], eax
mov rax, qword [0x1800a6338]
test rax, rax
je 0x180020bdf
movsx eax, byte [rsp + 0x40]
mov dword [rsp + 0x220], eax
jmp 0x180020bec
mov eax, dword [0x1800a6354]
mov dword [rsp + 0x220], eax
mov eax, dword [rsp + 0x220]
mov qword [rsp + 0x80], rax
mov eax, 0x80d6
mov word [0x1800a6360], ax
mov eax, dword [rsp + 0x35c]
mov dword [rsp + 0x368], eax
mov eax, dword [rsp + 0x114]
inc eax
cdqe
mov rcx, rax
call fcn.1800765e8
mov qword [rsp + 0x318], rax
movsxd rax, dword [rsp + 0x114]
mov rcx, qword [rsp + 0x318]
mov byte [rcx + rax], 0
lea rdx, str.LOCALAPPDATA
lea rcx, [rsp + 0x5d8]
call fcn.180028d90
mov rcx, rax
call fcn.18002a1a0
mov r8d, 0x104
mov rdx, qword [rsp + 0x318]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov dword [rsp + 0x360], eax
mov dword [rsp + 0x64], 0
mov rax, qword [0x1800a6300]
mov ecx, 0x8190a9d7
add rax, rcx
mov byte [rsp + 0x40], al
movzx eax, word [0x1800a6380]
cwde
mov ecx, dword [0x1800a6378]
imul ecx, eax
mov eax, ecx
mov ecx, dword [0x1800a6378]
sub ecx, eax
mov eax, ecx
mov dword [0x1800a6378], eax
mov eax, dword [rsp + 0x64]
mov dword [rsp + 0x364], eax
cmp dword [rsp + 0x364], 0
je 0x180020cd3
jmp 0x180020cff
mov eax, dword [0x1800a626c]
add eax, 0x3758
cdqe
mov qword [0x1800a62f8], rax
movzx eax, byte [0x1800a622b]
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
imul eax, ecx
mov byte [0x1800a622b], al
movsxd rax, dword [rsp + 0x114]
mov rcx, qword [rsp + 0x698]
lea rax, [rax + rcx + 1]
mov dword [rsp + 0xc8], eax
movsx rax, word [0x1800a6254]
cmp qword [rsp + 0xa8], rax
jl 0x180020d3a
mov dword [rsp + 0x228], 1
jmp 0x180020d45
mov dword [rsp + 0x228], 0
cmp qword [rsp + 0xa8], 0x3c
jl 0x180020d5d
mov dword [rsp + 0x224], 1
jmp 0x180020d68
mov dword [rsp + 0x224], 0
mov eax, dword [rsp + 0x224]
cmp dword [rsp + 0x228], eax
jne 0x180020d7d
mov byte [rsp + 0x44], 0x5b
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0x250]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14c], eax
movsxd rax, dword [rsp + 0xc8]
mov rcx, rax
call fcn.1800765e8
mov qword [rsp + 0xd8], rax
movsxd rax, dword [rsp + 0x14c]
mov rcx, rax
call fcn.1800765e8
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x3c0], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x580], rax
mov rax, qword [rsp + 0x3c0]
movzx eax, byte [rax]
mov byte [rsp + 0x8a], al
mov rax, qword [rsp + 0x340]
movzx ecx, byte [rsp + 0x8a]
mov byte [rax], cl
mov rax, qword [rsp + 0x3c0]
inc rax
mov qword [rsp + 0x3c0], rax
mov rax, qword [rsp + 0x340]
inc rax
mov qword [rsp + 0x340], rax
cmp byte [rsp + 0x8a], 0
jne 0x180020df6
movabs rax, 0x9b0d3b65269c6
mov qword [0x1800a62e0], rax
mov rax, qword [0x1800a62e0]
mov rcx, qword [rsp + 0xb0]
inc rcx
cmp rax, rcx
jne 0x180020f31
mov eax, dword [0x1800a6378]
test eax, eax
jne 0x180020e8d
mov dword [rsp + 0x22c], 1
jmp 0x180020e98
mov dword [rsp + 0x22c], 0
mov rax, qword [0x1800a6370]
mov rcx, qword [0x1800a6310]
imul rcx, rax
mov rax, rcx
mov ecx, 0x4449d0eb
sub ecx, dword [rsp + 0x22c]
movsxd rcx, ecx
sub rax, rcx
movzx ecx, byte [0x1800a622b]
sub rax, rcx
mov qword [0x1800a6308], rax
movzx eax, byte [0x1800a61fe]
cmp eax, 1
jne 0x180020f31
mov eax, dword [rsp + 0x60]
xor eax, 0x4e30088f
cdqe
mov qword [0x1800a6348], rax
jmp 0x180020f31
movabs rax, 0x9b0d3b65269c6
mov qword [0x1800a62e0], rax
movzx eax, word [0x1803be0b0]
mov word [0x1800a6380], ax
cmp qword [rsp + 0x80], 0
je 0x180020f96
mov eax, dword [0x1800a6354]
test eax, eax
je 0x180020f78
movzx eax, word [rsp + 0x50]
movsx rax, ax
mov qword [rsp + 0x460], rax
jmp 0x180020f87
mov rax, qword [0x1800a62e0]
mov qword [rsp + 0x460], rax
movzx eax, word [rsp + 0x460]
mov word [rsp + 0x50], ax
jmp 0x180020fb0
movzx eax, byte [rsp + 0x4d]
test eax, eax
je 0x180020fb0
movsx eax, byte [0x1800a6243]
add eax, 0xcc13
mov word [rsp + 0x50], ax
mov eax, dword [rsp + 0x48]
inc eax
mov ecx, dword [rsp + 0x234]
mov edx, dword [rsp + 0x230]
add ecx, edx
mov edx, dword [rsp + 0x230]
mov edi, dword [rsp + 0x234]
add edx, edi
xor ecx, edx
sub eax, ecx
mov dword [rsp + 0x48], eax
lea rcx, [0x180086a50]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov eax, eax
mov qword [rsp + 0x98], rax
cmp qword [rsp + 0x98], 0
je 0x18002102e
mov rax, qword [rsp + 0xb0]
mov rcx, qword [0x1800a6310]
add rcx, rax
mov rax, rcx
mov rcx, qword [0x1800a6310]
add rcx, rax
mov rax, rcx
mov qword [0x1800a6310], rax
jmp 0x180021113
mov rax, qword [rsp + 0x90]
cmp rax, qword [rsp + 0x80]
je 0x180021090
movsx eax, byte [rsp + 0x4c]
test eax, eax
jge 0x180021056
mov dword [rsp + 0x238], 1
jmp 0x180021061
mov dword [rsp + 0x238], 0
mov eax, dword [rsp + 0x238]
not eax
test eax, eax
je 0x180021090
mov rax, qword [rsp + 0x90]
mov rcx, qword [0x1800a6330]
imul rcx, rax
mov rax, rcx
mov qword [0x1800a6330], rax
jmp 0x180021113
mov rax, qword [rsp + 0xa0]
not rax
test rax, rax
je 0x1800210d8
mov rax, qword [rsp + 0xb0]
mov dword [rsp + 0x5c], eax
movzx eax, byte [rsp + 0x42]
movzx eax, al
movabs rcx, 0x5187872fed6e5
imul rax, rcx
mov rcx, qword [0x1800a6358]
add rcx, rax
mov rax, rcx
mov word [0x1800a6380], ax
jmp 0x180021113
movsx eax, byte [rsp + 0x40]
test eax, eax
je 0x180021113
movzx eax, word [0x1800a62c4]
movzx eax, ax
sub eax, 0x54c910b0
cdqe
mov qword [0x1800a6330], rax
mov eax, 0xfc73f594
mov rcx, qword [rsp + 0xa8]
sub rcx, rax
mov rax, rcx
mov qword [0x1800a6338], rax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x118]
xor eax, ecx
mov ecx, dword [rsp + 0x118]
sub ecx, 0xa2
imul eax, ecx
mov ecx, dword [rsp + 0x48]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
movsx eax, byte [0x1800a61ff]
test eax, eax
je 0x18002115b
mov rax, qword [0x1800a62f8]
mov qword [rsp + 0x468], rax
jmp 0x18002116a
mov rax, qword [0x1800a6330]
mov qword [rsp + 0x468], rax
mov rax, qword [rsp + 0x468]
mov qword [0x1800a6348], rax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x48], eax
movsxd rax, dword [rsp + 0x368]
mov qword [rsp + 0x548], rax
lea rdx, str.CiscoSoftware_
lea rcx, [rsp + 0x5e5]
call fcn.1800289f0
mov rcx, rax
call fcn.180029fa0
mov rcx, qword [rsp + 0x548]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd8]
call fcn.180077ee0
movzx eax, byte [rsp + 0x42]
movzx eax, al
movabs rcx, 0x4fff280562291
add rax, rcx
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov eax, eax
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x48], eax
mov dword [0x1800a6368], 0x3403199d
movzx eax, byte [rsp + 0x41]
movsx eax, al
inc eax
cmp dword [0x1800a6368], eax
jne 0x18002123f
mov eax, dword [0x1800a6378]
cmp eax, 1
jne 0x18002123f
jmp 0x18002123f
mov dword [0x1800a6368], 0x3403199d
mov rax, qword [0x1800a6338]
movabs rcx, 0xd5fa9501c12e1
sub rax, rcx
mov qword [0x1800a62e8], rax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x48], eax
xor edx, edx
mov rcx, qword [rsp + 0xd8]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
call qword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
movzx eax, ax
mov qword [0x1800a6338], rax
mov rax, qword [0x1800a6338]
test rax, rax
jb 0x1800212a5
mov dword [rsp + 0x240], 1
jmp 0x1800212b0
mov dword [rsp + 0x240], 0
mov rax, qword [0x1800a6338]
cmp rax, 0x27
jb 0x1800212ca
mov dword [rsp + 0x23c], 1
jmp 0x1800212d5
mov dword [rsp + 0x23c], 0
mov eax, dword [rsp + 0x23c]
cmp dword [rsp + 0x240], eax
jg 0x180021343
mov rax, qword [0x1800a62f0]
test rax, rax
je 0x180021302
mov rax, qword [0x1800a6328]
mov qword [rsp + 0x470], rax
jmp 0x180021312
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x470], rax
movzx eax, byte [rsp + 0x470]
mov byte [rsp + 0x40], al
mov eax, dword [rsp + 0x5c]
cdqe
movsx rcx, word [0x1800a636c]
mov rdx, qword [0x1800a6338]
sub rdx, rcx
mov rcx, rdx
sub rax, rcx
mov word [0x1800a6254], ax
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x244]
mov ecx, dword [rsp + 0x244]
sub eax, ecx
mov ecx, dword [rsp + 0x36c]
sub ecx, 0x339
imul eax, ecx
mov ecx, dword [rsp + 0x48]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
mov r8, qword [rsp + 0x698]
mov rdx, qword [rsp + 0x690]
mov rcx, qword [rsp + 0xd8]
call fcn.180077ee0
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x68]
movsxd rcx, ecx
cmp rax, rcx
jb 0x180021418
movzx eax, word [rsp + 0x54]
mov ecx, eax
call qword [sym.imp.USER32.dll_GetTopWindow]
mov byte [rsp + 0x4d], al
movzx eax, byte [rsp + 0x4d]
test eax, eax
je 0x1800213d5
jmp 0x180021416
movsx eax, byte [0x1800a622f]
test eax, eax
jne 0x180021416
mov eax, 0x4859
mov word [0x1800a6244], ax
movsx eax, word [0x1800a6254]
mov ecx, dword [rsp + 0x64]
imul ecx, eax
mov eax, ecx
movzx ecx, word [0x1800a62c4]
movzx ecx, cx
movzx edx, byte [rsp + 0x44]
movzx edx, dl
xor ecx, edx
sub eax, ecx
mov dword [rsp + 0x64], eax
jmp 0x18002142a
imul rax, qword [0x1800a6328], 0xe34c
mov qword [0x1800a62f0], rax
mov eax, dword [rsp + 0x248]
mov ecx, dword [rsp + 0x248]
xor eax, ecx
imul eax, eax, 0x3e6
mov ecx, dword [rsp + 0x48]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x5c]
test eax, eax
jne 0x180021462
mov qword [rsp + 0x478], 1
jmp 0x18002146e
mov qword [rsp + 0x478], 0
mov eax, dword [rsp + 0x60]
cdqe
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
not ecx
movsx edx, byte [rsp + 0x40]
sub ecx, edx
movsxd rcx, ecx
mov rdx, qword [rsp + 0x478]
mov rdi, qword [rsp + 0xc0]
xor rdi, rdx
mov rdx, rdi
not rdx
add rcx, rdx
not rcx
imul rax, rcx
mov dword [0x1800a626c], eax
mov eax, dword [0x1800a6384]
xor eax, 0x85
mov byte [rsp + 0x41], al
mov eax, dword [rsp + 0x11c]
mov ecx, dword [rsp + 0x11c]
xor eax, ecx
mov ecx, dword [rsp + 0x11c]
xor ecx, 0x18c
imul eax, ecx
mov ecx, dword [rsp + 0x48]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
lea rdx, [0x180086a70]
lea rcx, [rsp + 0x568]
call fcn.180028c30
mov rcx, rax
call fcn.18002a040
mov qword [rsp + 0x3c8], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x588], rax
mov rax, qword [rsp + 0x3c8]
movzx eax, byte [rax]
mov byte [rsp + 0x88], al
mov rax, qword [rsp + 0x330]
movzx ecx, byte [rsp + 0x88]
mov byte [rax], cl
mov rax, qword [rsp + 0x3c8]
inc rax
mov qword [rsp + 0x3c8], rax
mov rax, qword [rsp + 0x330]
inc rax
mov qword [rsp + 0x330], rax
cmp byte [rsp + 0x88], 0
jne 0x180021530
movzx eax, word [rsp + 0x50]
movsx rax, ax
imul rax, qword [rsp + 0xa8]
movzx ecx, word [0x1800a6380]
movsx rcx, cx
add rax, rcx
movzx ecx, byte [rsp + 0x41]
movsx rcx, cl
mov rdx, qword [0x1800a6358]
xor rdx, rcx
mov rcx, rdx
not rcx
movzx edx, byte [rsp + 0x41]
movsx rdx, dl
imul rcx, rdx
imul rax, rcx
mov byte [rsp + 0x40], al
mov rax, qword [rsp + 0x78]
add rax, 0x16d551da
mov qword [rsp + 0xb8], rax
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0xa0]
cmp rax, qword [0x1800a62e8]
jae 0x180021602
jmp 0x18002161d
mov eax, 2
imul rax, rax, 0x47
lea rcx, [0x180612380]
movzx edx, word [0x1800a6308]
mov word [rcx + rax], dx
mov eax, dword [rsp + 0x24c]
mov ecx, 0x6d
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x24c]
mov edx, 0x6d
sub edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x48]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x90]
movzx ecx, word [rsp + 0x54]
cmp rax, rcx
je 0x18002167e
mov eax, dword [rsp + 0x68]
cdqe
sub rax, qword [rsp + 0x80]
mov ecx, dword [rsp + 0x68]
movsxd rcx, ecx
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0x68], eax
jmp 0x1800216a0
movsxd rax, dword [0x1800a626c]
add rax, qword [rsp + 0xa8]
movsxd rcx, dword [0x1800a626c]
add rcx, rax
mov rax, rcx
mov dword [0x1800a626c], eax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x48], eax
movsxd rax, dword [rsp + 0xc8]
movsxd rcx, dword [rsp + 0x250]
mov rdx, qword [rsp + 0x320]
add rdx, rcx
mov rcx, rdx
mov r8, rax
mov rdx, qword [rsp + 0xd8]
call fcn.180077ee0
movzx eax, word [0x1800a6360]
movzx ecx, byte [0x1800a622b]
sub eax, ecx
mov word [0x1800a6360], ax
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x48], eax
mov rax, qword [0x1800a6310]
cmp qword [0x1800a6310], rax
jbe 0x180021858
mov rax, qword [0x1800a62f8]
mov ecx, dword [0x1800a6354]
mov ecx, ecx
mov rdx, qword [rsp + 0x78]
add rdx, rcx
mov rcx, rdx
cmp rax, rcx
ja 0x18002173f
mov dword [rsp + 0x258], 1
jmp 0x18002174a
mov dword [rsp + 0x258], 0
movsx rax, byte [0x1800a6243]
movabs rcx, 0xfff99cf5ddee931e
cmp rax, rcx
jle 0x180021780
movsx eax, byte [0x1800a622f]
movsx ecx, word [0x1800a6254]
cmp eax, ecx
jge 0x180021780
mov dword [rsp + 0x254], 0
jmp 0x18002178b
mov dword [rsp + 0x254], 1
mov eax, dword [rsp + 0x254]
cmp dword [rsp + 0x258], eax
jg 0x1800217ea
movzx eax, byte [rsp + 0x44]
movzx eax, al
not eax
movzx ecx, word [0x1800a622c]
movzx ecx, cx
add eax, ecx
not eax
cdqe
mov rcx, qword [0x1800a62f0]
imul rax, rcx
not rax
mov qword [rsp + 0x90], rax
movzx eax, byte [rsp + 0x43]
movsx rax, al
mov rcx, qword [rsp + 0xc0]
lea rax, [rax + rcx + 0x26a7ba0e]
mov byte [rsp + 0x43], al
jmp 0x180021858
movsx eax, byte [rsp + 0x40]
add eax, 0xdd7b4929
test eax, eax
jne 0x180021806
mov qword [rsp + 0x480], 1
jmp 0x180021812
mov qword [rsp + 0x480], 0
mov eax, dword [0x1800a62dc]
not eax
cdqe
mov rcx, qword [rsp + 0xa8]
add rcx, rax
mov rax, rcx
mov rcx, qword [0x1800a6370]
xor rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x480]
xor rdx, rcx
mov rcx, rdx
not rcx
add rax, rcx
not rax
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x48], eax
mov r8, qword [rsp + 0x6a8]
mov rdx, qword [rsp + 0x6a0]
mov rcx, qword [rsp + 0xd8]
call fcn.180026040
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
movzx eax, word [rsp + 0x54]
mov rcx, qword [0x1800a6300]
cmp rax, rcx
jbe 0x18002189a
jmp 0x1800218ac
movabs rax, 0xbf078dc50cbee
mov qword [rsp + 0x98], rax
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x120]
xor eax, ecx
mov ecx, dword [rsp + 0x120]
xor ecx, 0x2c2
imul eax, ecx
mov ecx, dword [rsp + 0x48]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd0]
xor eax, ecx
mov ecx, dword [rsp + 0xd0]
mov edx, dword [rsp + 0xd0]
xor ecx, edx
add eax, ecx
mov ecx, dword [rsp + 0x48]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x124]
or eax, 0x3e3
mov ecx, dword [rsp + 0x370]
mov edx, dword [rsp + 0x374]
imul ecx, edx
sub eax, ecx
mov ecx, dword [rsp + 0x124]
imul ecx, ecx, 0x3ac
mov edx, dword [rsp + 0x124]
add edx, ecx
mov ecx, edx
cmp eax, ecx
je 0x1800230b7
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x128], eax
movsx eax, byte [rsp + 0x40]
movzx ecx, word [0x1800a6284]
add eax, ecx
cdqe
mov rcx, qword [rsp + 0xb8]
not rcx
mov rdx, qword [rsp + 0x98]
not rdx
add rcx, rdx
imul rax, rcx
mov word [0x1800a6380], ax
movzx eax, word [rsp + 0x50]
movsx rax, ax
mov rcx, qword [0x1800a62e0]
add rax, rcx
movzx ecx, word [rsp + 0x50]
movsx rcx, cx
add rcx, rax
mov rax, rcx
mov word [rsp + 0x50], ax
mov eax, dword [rsp + 0x128]
add eax, 0xfe
mov dword [rsp + 0x154], eax
mov rax, qword [rsp + 0x98]
add rax, 0xda
mov byte [rsp + 0x44], al
mov eax, dword [rsp + 0x128]
add eax, 0xc3
mov dword [rsp + 0x4d4], eax
mov eax, 0x4393
mov word [rsp + 0x54], ax
mov eax, dword [rsp + 0x128]
add eax, 0x224
mov dword [rsp + 0xcc], eax
lea rdx, str..msi
lea rcx, [rsp + 0x56d]
call fcn.180028ce0
mov rcx, rax
call fcn.18002a0f0
mov rdx, rax
mov rcx, qword [rsp + 0xd8]
call fcn.18002b9e0
cmp eax, 1
jne 0x180022d92
movsx rax, byte [0x1800a6243]
mov rcx, qword [rsp + 0x70]
sub rax, rcx
mov byte [0x1800a6243], al
cmp qword [rsp + 0xa8], 0
je 0x180021a70
movzx eax, byte [rsp + 0x43]
movsx eax, al
sub eax, 0x6f7de40b
cdqe
mov qword [0x1800a6318], rax
jmp 0x180021aa1
mov eax, 0x41
mov word [0x1800a6350], ax
movsxd rax, dword [0x1800a6368]
mov rcx, qword [rsp + 0x90]
xor rax, rcx
movsxd rcx, dword [0x1800a6368]
sub rcx, rax
mov rax, rcx
mov dword [0x1800a6368], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x150], eax
movsx eax, word [rsp + 0x58]
mov ecx, dword [0x1800a6384]
cmp eax, ecx
jg 0x180021b2b
mov rax, qword [0x1800a62f8]
test rax, rax
je 0x180021b01
cmp qword [rsp + 0x80], 0
je 0x180021ae5
movzx eax, byte [rsp + 0x41]
movsx eax, al
mov dword [rsp + 0x25c], eax
jmp 0x180021af3
movsx eax, word [0x1800a6254]
mov dword [rsp + 0x25c], eax
movzx eax, byte [rsp + 0x25c]
mov byte [rsp + 0x41], al
jmp 0x180021b2b
cmp qword [0x1800a6310], 0x5e1a
jne 0x180021b2b
mov rax, qword [rsp + 0x90]
movabs rcx, 0x5086c997fcc8a
imul rax, rcx
mov word [0x1800a62c4], ax
mov eax, dword [rsp + 0x150]
add eax, 0x175
mov dword [rsp + 0x29c], eax
mov eax, dword [rsp + 0x150]
add eax, 0x376
mov dword [rsp + 0x380], eax
mov eax, dword [rsp + 0x150]
add eax, 0x171
mov dword [rsp + 0x37c], eax
mov eax, dword [rsp + 0x5c]
add eax, 0xe
cdqe
mov qword [rsp + 0x90], rax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x130], eax
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x90]
xor rax, rcx
mov rcx, qword [rsp + 0xa0]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x130]
add eax, 0x270
mov dword [rsp + 0x50c], eax
mov rax, qword [0x1800a6338]
mov rcx, qword [0x1800a62f8]
cmp rax, rcx
jb 0x180021bde
mov dword [rsp + 0x264], 1
jmp 0x180021be9
mov dword [rsp + 0x264], 0
mov rax, qword [0x1800a6338]
cmp rax, 3
jb 0x180021c03
mov dword [rsp + 0x260], 1
jmp 0x180021c0e
mov dword [rsp + 0x260], 0
mov eax, dword [rsp + 0x260]
cmp dword [rsp + 0x264], eax
jl 0x180021c20
jmp 0x180021c78
mov rax, qword [0x1800a62f8]
test rax, rax
jne 0x180021c39
mov dword [rsp + 0x268], 1
jmp 0x180021c44
mov dword [rsp + 0x268], 0
mov eax, dword [rsp + 0x60]
cdqe
movzx ecx, byte [0x1800a61fe]
mov edx, dword [rsp + 0x268]
sub edx, ecx
mov ecx, edx
movsxd rcx, ecx
movabs rdx, 0xb7488a8bbfd2d
imul rcx, rdx
sub rax, rcx
mov qword [rsp + 0xc0], rax
mov eax, dword [rsp + 0x130]
add eax, 0x2c0
mov dword [rsp + 0x2b4], eax
mov ecx, dword [0x1800a637c]
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov eax, eax
mov qword [0x1800a62e0], rax
mov rax, qword [0x1800a62e0]
test rax, rax
jl 0x180021de2
movzx eax, byte [0x1800a622b]
mov rcx, qword [rsp + 0xb0]
cmp rax, rcx
je 0x180021cfc
cmp qword [0x1800a6308], 0
jne 0x180021cfc
mov eax, dword [0x1800a62dc]
cdqe
mov rcx, qword [0x1800a6358]
sub rcx, rax
mov rax, rcx
mov rcx, qword [0x1800a6358]
add rcx, rax
mov rax, rcx
mov qword [0x1800a6358], rax
jmp 0x180021ddd
xor eax, eax
cmp eax, 0x230
je 0x180021d1a
cmp qword [rsp + 0x78], 0
je 0x180021d1a
mov dword [rsp + 0x26c], 1
jmp 0x180021d25
mov dword [rsp + 0x26c], 0
mov eax, dword [rsp + 0x64]
not eax
cmp dword [rsp + 0x26c], eax
jl 0x180021d41
mov dword [rsp + 0x270], 1
jmp 0x180021d4c
mov dword [rsp + 0x270], 0
mov eax, dword [rsp + 0x270]
not eax
test eax, eax
je 0x180021ddd
movzx eax, byte [0x1800a61fe]
add rax, qword [rsp + 0x98]
test rax, rax
jne 0x180021d7e
mov dword [rsp + 0x274], 1
jmp 0x180021d89
mov dword [rsp + 0x274], 0
mov eax, dword [0x1800a6354]
sub eax, dword [rsp + 0x274]
mov eax, eax
movzx ecx, word [0x1800a6350]
movzx ecx, cx
not ecx
movsx edx, word [0x1800a636c]
add ecx, edx
movsxd rcx, ecx
imul rcx, qword [rsp + 0xa8]
sub rax, rcx
mov dword [rsp + 0x5c], eax
movzx eax, byte [rsp + 0x42]
movzx eax, al
movabs rcx, 0xc039a38264f12
sub rax, rcx
mov qword [rsp + 0xa0], rax
jmp 0x180021e6e
cmp qword [0x1800a6358], 0
je 0x180021e19
mov qword [0x1800a62e8], 8
movsx eax, word [0x1800a636c]
movzx ecx, word [rsp + 0x54]
and eax, ecx
movsx ecx, word [0x1800a636c]
sub ecx, eax
mov eax, ecx
mov word [0x1800a636c], ax
jmp 0x180021e6e
movzx eax, word [0x1800a6244]
cwde
movsx ecx, byte [0x1800a622f]
cmp eax, ecx
je 0x180021e4f
mov eax, 0xa3d5e81d
mov rcx, qword [rsp + 0xc0]
add rcx, rax
mov rax, rcx
mov byte [0x1800a622b], al
mov dword [rsp + 0x60], 0x43f30e15
jmp 0x180021e6e
movzx eax, byte [rsp + 0x43]
movsx eax, al
test eax, eax
je 0x180021e6e
mov rax, qword [rsp + 0xb8]
shl rax, 5
mov qword [0x1800a6318], rax
mov eax, dword [rsp + 0x130]
add eax, 0x42c
mov dword [rsp + 0x2b0], eax
mov qword [rsp + 0x558], 0
mov qword [rsp + 0x550], 0
call qword [sym.imp.USER32.dll_GetFocus]
mov qword [rsp + 0x3d0], rax
cmp qword [rsp + 0x3d0], 0
je 0x180021eed
mov rdx, qword [rsp + 0x550]
mov rcx, qword [rsp + 0x3d0]
call qword [sym.imp.USER32.dll_BeginPaint]
mov qword [rsp + 0x590], rax
mov rdx, qword [rsp + 0x558]
mov rcx, qword [rsp + 0x3d0]
call qword [sym.imp.USER32.dll_EndPaint]
mov dword [rsp + 0x4d8], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x134], eax
mov eax, dword [rsp + 0x134]
add eax, 0x9d
mov dword [rsp + 0x2c0], eax
mov eax, dword [0x1800a6354]
test eax, eax
jne 0x180021f2f
movsx eax, byte [rsp + 0x40]
not eax
test eax, eax
jne 0x180021f2f
mov dword [rsp + 0x278], 0
jmp 0x180021f3a
mov dword [rsp + 0x278], 1
mov eax, dword [0x1800a6378]
not eax
movsx ecx, byte [rsp + 0x4c]
cmp eax, ecx
jge 0x180021f58
mov dword [rsp + 0x27c], 1
jmp 0x180021f63
mov dword [rsp + 0x27c], 0
mov eax, dword [rsp + 0x278]
not eax
cmp eax, dword [rsp + 0x27c]
jle 0x180021f82
mov dword [rsp + 0x284], 1
jmp 0x180021f8d
mov dword [rsp + 0x284], 0
mov eax, dword [rsp + 0x60]
movzx ecx, word [rsp + 0x54]
not ecx
cmp eax, ecx
jge 0x180021fbc
mov rax, qword [0x1800a6338]
mov rcx, qword [0x1800a6370]
cmp rax, rcx
je 0x180021fbc
mov dword [rsp + 0x280], 1
jmp 0x180021fc7
mov dword [rsp + 0x280], 0
mov eax, dword [rsp + 0x280]
cmp dword [rsp + 0x284], eax
je 0x180021fe4
mov dword [rsp + 0x288], 1
jmp 0x180021fef
mov dword [rsp + 0x288], 0
mov eax, dword [rsp + 0x288]
not eax
test eax, eax
je 0x1800220fa
mov rax, qword [rsp + 0xa0]
movsx rcx, byte [rsp + 0x4c]
cmp rax, rcx
jle 0x18002202e
mov rax, qword [rsp + 0x98]
sub rax, 0xdc
mov qword [rsp + 0xb0], rax
jmp 0x1800220fa
mov rax, qword [rsp + 0x90]
test rax, rax
jne 0x18002205e
mov eax, dword [rsp + 0x134]
add eax, 0x33e
mov dword [rsp + 0x4dc], eax
movzx eax, byte [0x1800a61fe]
mov rcx, qword [rsp + 0x78]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x78]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [0x1800a6358]
add rax, 0x929c
mov qword [rsp + 0x90], rax
mov eax, dword [rsp + 0x134]
add eax, 0x2d8
mov dword [rsp + 0x388], eax
call qword [sym.imp.USER32.dll_GetFocus]
mov qword [rsp + 0x3d8], rax
cmp qword [rsp + 0x3d8], 0
je 0x18002219a
mov rcx, qword [rsp + 0x3d8]
call qword [sym.imp.USER32.dll_IsWindow]
mov dword [rsp + 0x4ec], eax
mov rcx, qword [rsp + 0x3d8]
call qword [sym.imp.USER32.dll_IsWindowVisible]
mov dword [rsp + 0x4e4], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x138], eax
mov eax, dword [rsp + 0x138]
add eax, 0x3ff
mov dword [rsp + 0x2c4], eax
mov eax, dword [rsp + 0x138]
add eax, 0xf7
mov dword [rsp + 0x390], eax
imul rax, qword [rsp + 0x80], 0xa8
mov byte [rsp + 0x44], al
mov eax, 0xcb71
mov word [0x1800a62c4], ax
mov eax, dword [rsp + 0x138]
add eax, 0x1c8
mov dword [rsp + 0x38c], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x13c], eax
mov eax, dword [rsp + 0x5c]
add eax, 0x612a9a12
movsx ecx, byte [0x1800a622f]
sub ecx, eax
mov eax, ecx
mov byte [0x1800a622f], al
mov rax, qword [rsp + 0xb0]
mov rcx, qword [0x1800a6330]
add rcx, rax
mov rax, rcx
mov rcx, qword [0x1800a6330]
add rcx, rax
mov rax, rcx
mov qword [0x1800a6330], rax
mov eax, dword [rsp + 0x13c]
add eax, 0x19e
mov dword [rsp + 0x394], eax
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov dword [rsp + 0x5c], eax
movzx eax, byte [rsp + 0x44]
movzx eax, al
mov rcx, qword [rsp + 0x70]
imul rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x70]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0x13c]
add eax, 0x3ce
mov dword [rsp + 0x2c8], eax
mov eax, dword [rsp + 0x13c]
add eax, 0x3c4
mov dword [rsp + 0x148], eax
mov eax, dword [0x1803be0b0]
mov dword [rsp + 0x140], eax
mov eax, dword [rsp + 0x140]
add eax, 0x38b
mov dword [rsp + 0x4e0], eax
movzx eax, byte [rsp + 0x43]
movsx rax, al
movabs rcx, 0x475cacd9bda6c
add rax, rcx
mov rcx, qword [rsp + 0xb8]
add rax, rcx
mov byte [rsp + 0x43], al
mov eax, dword [rsp + 0x140]
add eax, 0xcd
mov dword [rsp + 0x144], eax
mov byte [rsp + 0x4d], 0x65
mov eax, dword [rsp + 0x140]
add eax, 0x66
mov dword [rsp + 0x378], eax
mov eax, dword [rsp + 0x144]
mov ecx, dword [rsp + 0x144]
sub eax, ecx
mov ecx, dword [rsp + 0x144]
sub eax, ecx
mov ecx, dword [rsp + 0x378]
imul ecx, ecx, 0x2d4
cmp eax, ecx
je 0x180022d8d
cmp qword [rsp + 0x98], 0
je 0x180022df1
mov rax, qword [0x1800a6310]
cmp qword [0x1800a6328], rax
jne 0x180022dc9
mov eax, 0xaa528088
mov rcx, qword [0x1800a6340]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0xc0], rax
jmp 0x180022dec
mov rax, qword [0x1800a6300]
add rax, qword [rsp + 0x80]
mov rcx, qword [0x1800a6300]
add rcx, rax
mov rax, rcx
mov qword [0x1800a6300], rax
jmp 0x180022eab
mov rax, qword [0x1800a6300]
test rax, rax
jne 0x180022e02
jmp 0x180022eab
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
je 0x180022e24
cmp qword [rsp + 0xc0], 0
jne 0x180022e24
mov dword [rsp + 0x2d0], 0
jmp 0x180022e2f
mov dword [rsp + 0x2d0], 1
movzx eax, word [0x1800a6360]
not eax
cmp eax, 0x6ba5
je 0x180022e4c
mov dword [rsp + 0x2cc], 1
jmp 0x180022e57
mov dword [rsp + 0x2cc], 0
mov eax, dword [rsp + 0x2cc]
cmp dword [rsp + 0x2d0], eax
jge 0x180022e7c
mov eax, dword [0x1800a6378]
imul eax, eax, 0xbae501d5
mov eax, eax
mov qword [rsp + 0x70], rax
jmp 0x180022eab
movzx eax, word [0x1800a6380]
cwde
test eax, eax
je 0x180022eab
mov eax, dword [0x1800a6354]
sub eax, 0x3d5e
mov dword [0x1800a626c], eax
mov eax, dword [0x1800a6378]
sub eax, 0x506f1856
mov word [0x1800a6254], ax
movzx eax, byte [rsp + 0x44]
movzx eax, al
mov rcx, qword [0x1800a6310]
not rcx
imul rax, rcx
movzx ecx, byte [0x1800a61fe]
sub rax, rcx
mov qword [0x1800a6300], rax
movzx eax, word [rsp + 0x50]
cwde
add eax, 0x745f
cdqe
mov qword [0x1800a62e8], rax
mov eax, dword [rsp + 0x14c]
mov dword [rsp + 0x174], eax
movsx eax, byte [rsp + 0x4c]
movsx ecx, byte [0x1800a61ff]
cmp eax, ecx
je 0x180022f11
mov dword [rsp + 0x2d8], 1
jmp 0x180022f1c
mov dword [rsp + 0x2d8], 0
movsx eax, byte [rsp + 0x4c]
cmp eax, 0x2b
je 0x180022f33
mov dword [rsp + 0x2d4], 1
jmp 0x180022f3e
mov dword [rsp + 0x2d4], 0
mov eax, dword [rsp + 0x2d4]
cmp dword [rsp + 0x2d8], eax
jl 0x180022f50
jmp 0x180022fb5
movzx eax, word [rsp + 0x54]
mov ecx, dword [rsp + 0x64]
cmp eax, ecx
jle 0x180022f6a
mov dword [rsp + 0x2dc], 1
jmp 0x180022f75
mov dword [rsp + 0x2dc], 0
mov eax, dword [0x1800a6384]
not eax
cmp eax, dword [rsp + 0x2dc]
jl 0x180022fb5
mov rax, qword [0x1800a62f8]
movabs rcx, 0x3b8e77210a7d5
sub rax, rcx
mov byte [rsp + 0x4d], al
movzx eax, word [0x1800a6244]
cwde
add eax, 0x392d
cdqe
mov qword [rsp + 0xc0], rax
mov eax, dword [rsp + 0xcc]
mov ecx, dword [rsp + 0xcc]
sub eax, ecx
mov ecx, dword [rsp + 0xcc]
xor ecx, 0x319
sub eax, ecx
mov ecx, dword [rsp + 0x154]
mov edx, dword [rsp + 0x154]
sub ecx, edx
mov edx, dword [rsp + 0x154]
mov edi, dword [rsp + 0xcc]
sub edx, edi
imul ecx, edx
imul eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x320]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x310], rax
mov eax, 0x82da06b6
mov qword [0x1800a62f0], rax
movsx eax, word [0x1800a6254]
mov ecx, dword [rsp + 0x68]
add ecx, 0x11
cmp eax, ecx
jne 0x180023090
mov eax, dword [0x1800a62dc]
cdqe
add rax, qword [rsp + 0x78]
cmp rax, 1
jne 0x180023090
mov rax, qword [rsp + 0x98]
dec rax
mov qword [rsp + 0x98], rax
movsx rax, word [0x1800a6254]
sub rax, qword [rsp + 0xb8]
mov word [0x1800a6254], ax
jmp 0x180023012
mov eax, 2
imul rax, rax, 0x66
lea rcx, [0x180670690]
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x44], al
lea rax, [0x18008680f]
mov qword [rsp + 0x308], rax
mov ecx, dword [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov byte [rsp + 0x4d], al
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x30], 0
lea rax, [rsp + 0x6b8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x6b0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x308]
lea rdx, [0x18008682e]
mov rcx, qword [rsp + 0x310]
call fcn.18001b6f0
mov dword [rsp + 0x2e0], eax
mov eax, dword [rsp + 0x2e0]
add rsp, 0x678
pop rdi
pop rsi
ret