Function at 0x180002628
Capabilities:
Accept command line arguments
Authenticate hmac
Encode data using xor
Identify system language via api

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb8]
sub rsp, 0x1b8
movsx r8, word [0x180010058]
xor r11d, r11d
movsx r15, word [0x18001005c]
mov eax, 0x363c
movsx r10d, byte [0x180010002]
mov esi, 0x9d
movzx ebx, byte [0x180010004]
mov edx, r11d
mov word [rbp + 0x118], ax
lea r13d, [r11 + 1]
mov al, byte [0x180010050]
mov r12d, 0xf872
mov byte [rbp + 0x100], 0x69
lea edi, [rsi + 0x17]
mov qword [rsp + 0x70], 0xd9
mov r14d, 0x1cebe4c4
mov byte [rbp + 0x108], r15b
mov qword [rbp - 0x68], GetForegroundWindow
mov word [rsp + 0x44], ax
movsx eax, byte [0x18001001a]
mov dword [rsp + 0x58], eax
mov eax, 0xec96
mov word [rsp + 0x50], ax
mov rax, qword [0x180010028]
movzx r9d, word [0x18001001c]
mov qword [rbp - 0x60], rax
mov eax, 0x6fcf
mov word [rsp + 0x40], ax
movsx eax, byte [0x180010032]
mov word [rsp + 0x4c], ax
movzx eax, word [0x180010038]
mov word [rsp + 0x48], ax
mov rax, qword [0x180010028]
mov word [rbp + 0x110], ax
lea eax, [rsi + 0x48]
mov qword [rbp + 0x110], 0x32d9
mov word [rbp + 0x110], ax
mov eax, dword [0x180010038]
mov dword [rbp + 0x110], 0xa7
mov dword [rbp + 0x110], eax
mov rax, qword [0x180010028]
mov qword [rbp + 0x110], rax
mov al, byte [0x180010032]
movsx eax, word [0x180010034]
mov dword [rbp + 0x110], eax
movzx eax, byte [0x180010003]
mov qword [rbp + 0x110], rax
mov eax, 0x7c83
mov word [rbp + 0x110], ax
movsx rax, word [0x180010030]
cmp r8, rax
mov dword [rbp - 0x58], 0x9f
mov eax, r11d
mov dword [rsp + 0x60], 0x3bec
sete dl
mov qword [rbp + 0x50], r11
cmp r8, 0x11
sete al
cmp edx, eax
jae 0x18000286b
mov eax, dword [rsp + 0x58]
cmp eax, dword [0x18001000c]
jge 0x1800027ee
movzx eax, word [0x18001005c]
lea ecx, [r11 + 0xe]
sub rcx, rax
mov qword [rbp - 0x68], rcx
mov ecx, ebx
mov eax, dword [0x180010008]
add ecx, 0xffffff61
movzx edx, byte [0x18001001e]
sub edx, eax
not edx
or rdx, rcx
add qword [0x180010050], rdx
jmp 0x180002897
mov al, byte [0x180010003]
test al, al
je 0x180002827
mov rax, r9
add rax, qword [0x180010050]
mov qword [0x180010060], rax
mov al, byte [rbp + 0x108]
add al, r13b
movsx ecx, al
movsx eax, byte [0x18001001a]
imul eax, ecx
mov byte [0x18001001a], al
jmp 0x180002897
test r9w, r9w
je 0x18000285a
mov rax, qword [0x180010020]
mov rcx, qword [0x180010050]
add rax, 0xd5
imul rcx, rax
mov eax, 0x57e7
mov qword [0x180010050], rcx
mov word [0x18001005c], ax
jmp 0x180002897
cmp word [0x180010018], r11w
je 0x180002897
mov esi, 0xffff078e
jmp 0x180002891
mov al, byte [0x180010007]
test al, al
je 0x180002897
imul r14d, dword [0x180010040], 0x1cebe4c4
mov rax, qword [0x180010028]
add rax, 0x4f43
mov qword [rbp - 0x68], rax
mov edi, dword [0x1800cc2e8]
mov eax, dword [0x1800cc2e8]
mov r8d, 0x1d7
mov dword [rbp + 0x110], eax
movsx r9, r15b
movzx eax, word [0x18001001c]
mov edx, eax
lea ecx, [rax + r13]
movzx eax, cx
mov ecx, 0x46b
imul eax, edx
mov word [0x18001001c], ax
mov rax, qword [0x180010020]
shl rax, 2
mov qword [rbp - 0x70], rax
mov eax, dword [rsp + 0x58]
add qword [0x180010048], r9
add eax, r13d
mov dword [rsp + 0x58], eax
sub rcx, r13
jne 0x1800028db
add byte [0x180010002], r13b
sub r8, r13
jne 0x1800028ad
mov eax, dword [rbp + 0x110]
add eax, 0x60e
mov dword [rbp - 8], eax
mov eax, dword [rbp + 0x110]
shl byte [0x18001001a], 1
add eax, 0x4f3
mov r13d, dword [0x1800cc2e8]
mov dword [rbp - 4], eax
lea eax, [r10 + 0x44e9]
cdqe
add qword [0x180010040], rax
mov eax, dword [rbp + 0x110]
add eax, 0x381
mov dword [rbp + 0x110], eax
mov eax, dword [0x1800cc2e8]
mov dword [rbp + 0x110], eax
call qword [sym.imp.USER32.dll_GetCaretBlinkTime]
mov ecx, dword [rbp + 0x110]
xor r10d, r10d
add ecx, 0x93f1
mov r9d, eax
mov dword [rbp - 0x20], ecx
mov eax, 0x2d03
mov ecx, dword [rsp + 0x58]
cmp ecx, 0x61e31de
jg 0x1800029df
dec byte [rsp + 0x44]
mov r9b, r10b
mov qword [0x1801e5a90], rax
movsx rax, byte [0x18001001b]
mov qword [0x180010038], rax
mov al, byte [0x18001001b]
movsxd rdi, esi
xor rdi, 0x9e50
neg al
sbb ecx, ecx
neg ecx
add ecx, 0xffffff5f
mov dword [0x18001000c], ecx
movsx ecx, word [rsp + 0x40]
movzx eax, word [0x18001005c]
sub ecx, eax
movzx eax, word [rsp + 0x40]
sub cx, ax
mov word [rsp + 0x40], cx
jmp 0x180002a63
test r9b, r9b
je 0x180002a24
movzx eax, word [0x18001005c]
xor eax, esi
sub esi, eax
mov rax, rdi
shr rax, 1
mov qword [rsp + 0x70], rax
movzx eax, word [rsp + 0x50]
not eax
movsxd rcx, eax
mov rax, qword [0x180010028]
sub rcx, rax
movabs rax, 0x628a20dbe4676
sub rcx, rax
mov qword [0x180010028], rcx
jmp 0x180002a63
mov al, byte [0x18001001b]
test al, al
jne 0x180002a4c
movzx eax, word [rsp + 0x50]
inc ax
mov word [rsp + 0x50], ax
mov al, byte [0x180010003]
sub al, sil
mov byte [0x180010003], al
jmp 0x180002a63
movzx eax, word [rsp + 0x48]
test ax, ax
je 0x180002a63
mov rax, qword [rsp + 0x70]
sub al, 0x16
mov byte [0x180010006], al
mov eax, dword [rbp + 0x110]
add eax, 0x33d
mov dword [rbp - 0x1c], eax
mov word [0x180010068], r10w
movsx eax, byte [0x180010007]
movsx ecx, byte [0x180010018]
imul ecx, eax
mov byte [0x180010007], cl
movzx eax, word [rsp + 0x50]
sub ax, r13w
mov word [rsp + 0x50], ax
mov rax, qword [rsp + 0x70]
add rax, rax
mov word [rsp + 0x4c], ax
movzx eax, word [0x180010068]
test ax, ax
jne 0x180002ae4
mov rcx, qword [0x180010010]
movabs rax, 0x1695c0802a02e
imul rcx, rax
mov rax, qword [0x180010020]
add rax, rcx
mov qword [0x180135448], rbx
mov qword [0x180010020], rax
mov eax, dword [rbp + 0x110]
mov r11d, 3
mov r8, qword [rbp - 0x70]
add eax, 0x9d54
mov dword [rbp + 0x110], eax
mov eax, dword [0x180010008]
movzx edx, word [0x180010018]
sub eax, 0x6e
cdqe
add dx, dx
mov qword [0x180010010], rax
movsx eax, byte [0x18001001b]
sub dx, ax
movzx eax, word [rbp + 0x118]
mov qword [0x180220eb0], rax
mov eax, 0xbb118aa4
mov word [0x180010018], dx
mov qword [0x180010070], rax
mov rcx, qword [0x180010070]
movsx rdx, word [0x180010058]
add rcx, r8
cmp rdx, rcx
jne 0x180002cfa
mov esi, r11d
lea r10d, [r13 + 0xb9]
mov r11, qword [rbp - 0x58]
movsx eax, r15b
mov ecx, 0xa0
sub ax, cx
mov word [rsp + 0x4c], ax
mov al, r9b
sub al, byte [0x18001001e]
movsx ecx, al
mov al, byte [rbp + 0x100]
mov r8d, dword [0x18001000c]
or al, bl
movzx r12d, al
movzx eax, word [0x180010004]
mov edx, eax
movsx r9d, r9b
imul edx, eax
imul r9d, ecx
movzx eax, r8w
not r8d
movzx ecx, dx
imul ecx, eax
xor eax, eax
mov edx, eax
test r11d, r11d
cmove edx, r8d
mov word [0x180010004], cx
movsx ecx, byte [0x180010032]
add ecx, edx
mov edx, eax
sete al
add ax, word [0x180010004]
mov word [rbp + 0x118], ax
mov al, byte [0x180010032]
sar al, 4
movsx eax, al
mov word [0x180010030], ax
movsx rcx, word [rsp + 0x48]
mov rax, qword [0x180010060]
sub rax, rcx
mov qword [0x180010060], rax
movsx eax, byte [0x18001001b]
cmp eax, r10d
jne 0x180002cec
mov rax, qword [rbp - 0x68]
cmp qword [0x180010050], rax
jle 0x180002c7e
movzx eax, word [section..data]
mov edx, 0x580045f2
movzx r8d, word [rbp + 0x118]
movzx ecx, byte [0x180010006]
or rcx, rdx
mov dword [rbp - 0x58], edx
mov r11, qword [rbp - 0x58]
imul r8d, edi
movzx ecx, cl
imul r8d, eax
mov rax, qword [0x180010028]
movzx edx, al
imul edx, ecx
sub r8b, dl
mov byte [rbp + 0x108], r8b
jmp 0x180002cbf
cmp dword [0x18001000c], edx
jl 0x180002cbf
mov al, byte [rbp + 0x100]
mov byte [0x18001001b], al
movzx eax, word [rsp + 0x4c]
mov rcx, qword [0x180010010]
not rcx
imul rcx, rax
test r9b, r9b
mov rax, rdx
sete al
sub rcx, rax
add rcx, qword [0x180010050]
mov qword [0x180010040], rcx
mov r8, qword [rbp - 0x70]
mov eax, 0xbb118aa4
mov qword [0x180010070], rax
mov rcx, qword [0x180010070]
movsx rdx, word [0x180010058]
add rcx, r8
cmp rdx, rcx
je 0x180002b6f
jmp 0x180002cf7
movzx edx, word [0x180010058]
mov r8, qword [rbp - 0x70]
xor r10d, r10d
movsx eax, dx
mov ecx, 4
cmp r13d, eax
je 0x180002db2
mov byte [rbp + 0x100], cl
movabs rcx, 0xffffffff782a7feb
mov rax, qword [0x180010060]
add rcx, rdi
imul rcx, rax
mov qword [0x180010060], rcx
movzx r11d, word [rsp + 0x44]
mov eax, dword [rbp - 0x1c]
mov edx, dword [rbp - 0x20]
sub edx, eax
mov eax, dword [rbp - 0x20]
imul ecx, eax, 0xdcbe
or ecx, edx
sub ecx, 0x7f90f56e
mov dword [rbp - 0x2c], ecx
mov ecx, 2
movzx eax, word [rsp + 0x40]
test ax, ax
je 0x180002e13
movzx eax, word [0x18001001c]
cmp esi, eax
je 0x180002e48
movzx eax, byte [rsp + 0x58]
test r8, r8
movzx r15d, byte [0x180010006]
cmovne r15d, eax
mov byte [rbp - 0x60], cl
movzx eax, word [rsp + 0x50]
mov ecx, 0xf2f6
add word [0x18001001c], ax
mov eax, dword [0x1800cc2e8]
mov qword [rbp - 0x58], rax
mov word [rbp + 0x118], cx
jmp 0x180002e48
movzx ecx, byte [0x18001001e]
movzx eax, word [rsp + 0x4c]
cmp ax, cx
jbe 0x180002d30
mov al, byte [0x180010040]
movsx r11d, word [rsp + 0x44]
shl al, 3
mov byte [0x18001001a], al
movsx eax, byte [rbp - 0x60]
movzx edx, r12w
not edx
imul edx, eax
movsx eax, r11b
imul edx, dword [0x180010038]
sub edx, eax
movzx eax, word [section..data]
mov bl, byte [0x180010018]
sub edx, eax
mov dword [0x18001000c], edx
xor bl, 0xe9
jmp 0x180002d36
movzx eax, byte [0x180010006]
imul ecx, eax, 0x6e9833c
movzx eax, word [rsp + 0x48]
sub ax, cx
mov word [rsp + 0x48], ax
lea eax, [rbx + 0x41]
mov byte [0x18001001f], al
mov eax, dword [0x180010008]
movsx ecx, al
imul eax, ecx, 0xffffff93
mov byte [0x18001001b], al
cmp word [0x180010018], r10w
mov r9d, edi
mov eax, dword [0x1800cc2e8]
mov dword [rbp + 0x110], eax
jne 0x180002f47
mov al, byte [0x180010007]
test al, al
je 0x180002ed8
movsx eax, word [0x180010034]
mov r8d, r10d
movzx ecx, ax
mov edx, eax
add cx, word [0x180010040]
movsx eax, cx
movzx ecx, word [rsp + 0x4c]
imul eax, edx
test cx, cx
mov word [0x180010034], ax
mov eax, dword [0x180010008]
cmove r8w, ax
movsx ecx, byte [0x18001001b]
not r8w
movzx edx, cx
movzx eax, si
imul edx, eax
movzx eax, r8w
movzx ecx, dx
imul ecx, eax
movzx eax, word [0x1800cc2e8]
mov word [0x180010004], cx
mov word [rsp + 0x40], ax
jmp 0x180002f47
movzx ecx, byte [0x18001001f]
mov edx, r10d
mov rax, qword [0x180010028]
cmp rcx, rax
mov eax, r10d
mov ecx, 0x3bec
setb dl
cmp cx, word [0x18001005c]
setbe al
cmp edx, eax
jb 0x180002f19
mov qword [0x180010048], 0x9220
mov word [0x1800d43f2], cx
jmp 0x180002f47
mov al, byte [rbp + 0x108]
test al, al
je 0x180002f47
mov al, byte [0x18001001e]
mov byte [0x18001001a], al
mov eax, dword [0x1800cc2e8]
mov dword [rsp + 0x58], eax
mov r9, qword [0x180010020]
sub r9d, 0x6743d1b4
mov eax, dword [rbp + 0x110]
add eax, 0x7dca
mov dword [rbp - 0x30], eax
mov al, byte [0x18001001f]
movzx eax, word [rbp + 0x118]
mov eax, r14d
neg eax
mov eax, dword [rsp + 0x58]
sbb r10d, r10d
neg r10d
add r10d, 0xffffc412
add r10d, eax
mov rax, qword [rsp + 0x70]
add eax, 0x5fdc109b
not r10d
mov dword [0x180010008], eax
mov eax, dword [rbp + 0x110]
add eax, 0xe380
mov qword [rbp - 0x38], r10
mov dword [rbp - 0x1c], eax
mov al, byte [0x18001001b]
mov dword [0x180010008], 0x7c
mov eax, dword [rbp + 0x110]
add eax, 0x2d9
mov dword [rbp + 0x110], eax
mov eax, 0x2d03
cmp word [0x180010034], ax
jge 0x18000301a
movsx eax, r15b
movabs rcx, 0xa1fe62beeac13
add eax, 0x4c462147
cdqe
mov qword [0x180010048], rax
movzx eax, byte [rbp + 0x100]
xor rax, rcx
mov qword [0x180010020], rax
xor eax, eax
cmp byte [0x18001001e], al
movsx rax, r11b
jne 0x18000300f
mov rax, qword [rsp + 0x70]
mov byte [0x180010032], al
xor r11d, r11d
jmp 0x180003066
mov al, byte [rbp + 0x108]
xor r11d, r11d
test al, al
jne 0x180003066
mov rax, qword [rsp + 0x70]
add eax, 0x77f0ee46
mov dword [rsp + 0x58], eax
movzx ecx, byte [0x18001001f]
movzx eax, byte [0x180010002]
inc cx
add ax, r10w
add ax, cx
mov word [0x180010018], ax
movzx eax, byte [rbp + 0x100]
xor eax, 0x7430b501
mov dword [0x180010008], eax
imul eax, dword [0x18001000c], 0x72
mov esi, 0x5980
mov word [0x18001005c], si
mov dword [rsp + 0x58], 0xf033b0b2
movsxd rcx, eax
mov qword [rsp + 0x70], rcx
lea ecx, [r13 + 1]
cmp esi, ecx
jne 0x180003190
lea eax, [r15 - 0x49]
mov r8d, r11d
mov byte [rbp + 0x100], al
mov ecx, r11d
movzx edx, byte [0x18001001f]
mov al, byte [0x1800cc2e8]
mov qword [rbp - 0x60], rax
movsx eax, word [0x180010030]
cmp eax, edx
movzx eax, word [0x180010030]
setne r8b
cmp ax, 0x25
setne cl
cmp r8d, ecx
jbe 0x180003109
movzx eax, word [rsp + 0x50]
mov r11d, 0xdc0fa9f0
mov byte [rbp + 0x100], al
movzx eax, word [rsp + 0x4c]
movzx ecx, byte [rbp + 0x108]
sub ecx, eax
movzx eax, word [0x180010004]
sub r11d, eax
xor r11d, ecx
mov qword [rbp - 0x58], r11
xor r11d, r11d
mov eax, 1
cmp byte [0x18001001a], al
jne 0x180003190
test r9d, r9d
je 0x18000314f
mov r14d, eax
movsx eax, word [0x180010034]
imul eax, eax, 0x49
cdqe
mov qword [0x180010060], rax
movsx eax, byte [0x180010007]
movzx edx, word [rsp + 0x48]
sub dx, ax
movzx eax, word [rsp + 0x48]
add dx, ax
mov word [rsp + 0x48], dx
jmp 0x180003190
mov eax, dword [0x1800cc2e8]
mov qword [0x180010020], rax
movsx ecx, byte [0x18001001b]
movzx eax, byte [rbp + 0x100]
not ecx
movzx edx, byte [0x180010006]
imul edx, ecx
mov ecx, r11d
test edx, edx
cmove cx, ax
movzx eax, byte [0x180010006]
or ax, cx
mov word [0x180010058], ax
movzx eax, word [rbp + 0x118]
movzx ecx, byte [0x18001001e]
add ecx, 0x1c6390a7
mov word [0x18001005c], si
xor ax, cx
mov word [rbp + 0x118], ax
mov al, byte [0x18001000c]
add al, 0x70
add byte [0x180010002], al
mov eax, 0x29
mov word [0x18001001c], ax
movsx rax, byte [0x18001001a]
sub rax, 0x1f
mov qword [rsp + 0x70], rax
mov eax, dword [rbp - 0x1c]
mov ecx, dword [rbp + 0x110]
sub eax, 0x16419
add ecx, eax
mov eax, dword [rbp - 0x30]
add eax, ecx
mov dword [rbp - 0x1c], eax
movzx eax, word [0x180010030]
movzx ecx, word [0x180010038]
not eax
movzx edx, ax
imul edx, ecx
movzx eax, r10b
movzx ecx, r13b
imul ecx, eax
mov eax, dword [0x1800cc2e8]
add dx, word [0x180010048]
add dx, word [rbp - 0x70]
mov word [0x180010058], ax
mov word [rsp + 0x4c], dx
neg cl
mov byte [0x180010002], cl
movsx ecx, byte [rbp - 0x60]
mov dword [rbp + 0x110], eax
mov eax, dword [rbp + 0x110]
add eax, 0x2f9
mov dword [rbp - 0x30], eax
movzx eax, byte [0x180010003]
sub word [0x180010034], ax
movzx eax, cx
add ax, ax
add cx, ax
shl cx, 5
mov word [rsp + 0x4c], cx
movzx eax, word [rsp + 0x50]
add al, 0x33
mov byte [rbp + 0x108], al
mov eax, dword [rbp + 0x110]
add eax, 0x2ce
mov dword [rbp + 0x118], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov ecx, dword [rbp + 0x110]
mov r10d, 0x8273
add ecx, 0x31a
mov qword [rbp - 0x10], rax
mov dword [rbp + 0x110], ecx
mov rsi, rax
mov rdx, qword [rsp + 0x70]
movzx ecx, word [0x180010018]
add rdx, rcx
mov eax, r14d
movzx ecx, word [0x18001001c]
mov qword [0x180010038], rdx
mov edx, dword [rsp + 0x58]
and edx, ecx
movsx r8, r15b
mov ecx, dword [rsp + 0x58]
mov r15, qword [rbp - 0x58]
xor ecx, edx
mov dword [rsp + 0x58], ecx
mov rcx, qword [0x180010060]
mov word [0x180010018], r10w
cmp rcx, rax
jle 0x180003330
movzx eax, byte [0x180010006]
neg eax
mov qword [rbp - 0x38], rax
lea eax, [r15 - 0x13]
add byte [0x180010002], al
mov eax, 0x5bb5
add r8w, ax
mov word [rsp + 0x40], r8w
xor r9d, r9d
jmp 0x180003361
mov rdx, qword [rbp - 0x68]
xor r9d, r9d
movzx ecx, byte [0x180010003]
cmp rdx, r8
mov eax, r9d
cmovl eax, ecx
test eax, eax
jne 0x180003361
not r14b
mov eax, 0xafdc
mov byte [0x180010006], r14b
mov word [rbp + 0x118], ax
mov al, byte [rbp + 0x100]
mov rcx, qword [0x180010040]
mov r11d, 4
mov word [0x180010018], r10w
mov word [rsp + 0x48], r11w
movzx eax, r12w
add rax, 0x36fd04e0
lea r10d, [r11 - 3]
imul rcx, rax
mov al, byte [0x180010058]
add al, 0x5c
mov qword [0x180010040], rcx
mov byte [0x18001001a], al
mov eax, dword [rbp - 0x30]
add eax, 0x63
mov dword [rbp + 0x24], eax
mov eax, dword [0x1800cc2e8]
mov dword [rbp + 0x110], eax
mov word [rbp + 0x118], r10w
mov r8b, byte [rbp + 0x108]
movzx eax, word [rsp + 0x40]
add r8b, 0x76
movzx ecx, word [rbp + 0x118]
test ax, ax
mov word [rsp + 0x54], r8w
cmovne r12w, word [0x180010004]
movzx eax, r12w
mov qword [0x180010040], rax
test ecx, ecx
je 0x180003434
cmp ecx, r10d
jne 0x180003452
movzx ecx, byte [0x180010003]
mov eax, 0xad
add ax, word [0x180010040]
add word [0x18001001c], ax
sub ecx, 0x5dce849d
mov dword [rsp + 0x58], ecx
movzx eax, word [rsp + 0x48]
mov byte [0x18001001a], al
jmp 0x180003452
mov rax, qword [rsp + 0x70]
add rax, 0xb77f
mov qword [0x180010050], rax
movzx eax, di
xor ax, 0xf
mov word [rsp + 0x48], ax
mov eax, dword [rbp + 0x110]
mov ecx, r9d
add eax, 0x2d2
movsx r14d, r8b
cmp qword [rbp - 0x70], r9
mov edx, r15d
mov dword [rbp + 0x118], eax
not edx
mov eax, r9d
sete al
sub edx, eax
movzx eax, byte [0x180010002]
sub edx, eax
movsx eax, byte [0x18001001b]
add eax, r14d
xor rax, rdx
cmp word [0x18001001c], r9w
mov qword [rsp + 0x70], rax
mov eax, dword [0x180010008]
sete cl
not ax
xor ecx, r13d
mov r13, qword [rbp - 0x38]
movzx edx, ax
movzx ecx, cx
imul edx, ecx
lea ecx, [rsi + rsi]
mov qword [0x180010038], rcx
mov word [rbp + 0x118], dx
mov eax, dword [rbp + 0x110]
add eax, 0x1ca5
mov dword [rbp - 0x30], eax
mov eax, r13d
movsx ecx, byte [0x180010007]
sub eax, ecx
movsx ecx, word [0x180010058]
cdqe
mov qword [0x180010070], rax
movsx eax, r13w
imul ecx, eax
mov eax, dword [rbp + 0x110]
add eax, 0xd22b
mov word [0x180010058], cx
mov dword [rbp + 0x110], eax
test rdi, rdi
je 0x18000352c
mov eax, dword [rsp + 0x58]
movzx ebx, word [rsp + 0x40]
xor al, dil
and bl, r8b
add bl, al
jmp 0x180003547
mov byte [0x180010032], 0xd6
movsx ecx, word [rsp + 0x40]
movzx eax, word [rsp + 0x40]
sub ecx, esi
add ax, cx
mov word [rsp + 0x40], ax
mov byte [0x18001001f], 0x57
mov ecx, 0x38bb
movzx eax, word [rbp + 0x118]
mov dword [rsp + 0x64], eax
mov byte [0x180010002], r11b
movsx eax, r8b
add ax, cx
movzx ecx, byte [0x180010002]
mov word [section..data], ax
test ecx, ecx
je 0x18000363f
sub ecx, r10d
je 0x18000362d
sub ecx, r10d
je 0x1800035cb
sub ecx, r10d
je 0x1800035b5
cmp ecx, r10d
jne 0x18000365e
mov al, byte [0x18001001f]
sub al, byte [0x180010040]
mov byte [0x18001001f], al
jmp 0x18000365e
mov eax, 0x135b
add ax, word [0x180010048]
mov word [rsp + 0x48], ax
jmp 0x18000365e
movzx eax, byte [rbp + 0x100]
movzx ecx, byte [0x180010002]
xor rcx, rax
mov al, byte [0x180010003]
test al, al
mov qword [rbp - 0x70], rcx
movzx eax, word [0x180010018]
mov ecx, r9d
sete cl
xor eax, ecx
not eax
movsxd rcx, eax
movzx eax, word [0x18001001c]
not eax
cdqe
and rcx, rax
mov rax, qword [0x180010060]
add rax, rcx
mov cl, byte [0x180010048]
add cl, byte [0x180010004]
add cl, al
add cl, r10b
mov byte [0x180010032], cl
jmp 0x18000365e
movsx eax, word [0x180010058]
add eax, 0x68b9dcda
mov dword [rsp + 0x64], eax
jmp 0x18000365e
mov rax, qword [0x180010070]
imul rcx, rax, 0x85
movzx eax, word [0x180010030]
sar ax, cl
mov word [0x180010030], ax
mov al, byte [rbp + 0x100]
mov al, byte [0x18001001f]
movzx ecx, byte [0x1800cc2e8]
mov r12d, r15d
mov byte [0x180010002], cl
mov byte [0x18001001f], 0x57
call qword [sym.imp.USER32.dll_GetWindowTextLengthA]
mov dword [rbp - 0x48], eax
xor r9d, r9d
mov eax, dword [rbp - 8]
mov eax, dword [rbp - 0x30]
sub eax, 0x187a
mov dword [rbp + 0x48], eax
mov r8, qword [rsp + 0x70]
mov eax, dword [0x1800cc2e8]
mov dword [rbp + 0x110], eax
movsxd rax, dword [0x180010008]
mov rdx, qword [0x180010070]
and rdx, rax
mov qword [0x180010040], r9
mov eax, dword [0x180010008]
sub eax, edx
mov qword [rbp - 0x80], r8
mov dword [0x180010008], eax
movzx eax, byte [0x18001001f]
imul eax, eax, 0xffff4f07
add r15d, eax
cmp qword [0x180010040], r9
mov qword [rbp - 0x58], r15
jne 0x180003724
mov cl, byte [0x18001001e]
mov r8d, dword [0x180010038]
mov al, byte [0x180010010]
neg r8d
xor al, cl
mov qword [rbp - 0x48], r8
mov r8, qword [rbp - 0x80]
or cl, al
mov byte [0x18001001e], cl
sub cl, 0x4b
mov byte [0x18001001b], cl
mov eax, dword [rbp + 0x110]
add eax, 0x304
mov dword [rbp - 4], eax
mov eax, dword [rbp + 0x110]
add eax, 0x310
mov dword [rbp - 0x30], eax
movzx eax, word [0x180010030]
test ax, ax
je 0x1800037a7
movzx eax, word [rsp + 0x4c]
not bl
movzx ecx, word [rsp + 0x48]
test ax, ax
mov esi, r12d
sete al
sub bl, al
mov al, byte [rbp + 0x100]
add bl, al
add bl, cl
mov byte [0x180010032], bl
movsxd rax, dword [rsp + 0x58]
mov rdx, qword [0x180010020]
imul rdx, rax
mov rax, qword [0x180010020]
add rax, rdx
mov qword [0x180010020], rax
movzx eax, word [0x18001001c]
sub esi, eax
sub esi, 0xfe
mov qword [rbp - 0x10], rsi
mov eax, dword [rbp + 0x110]
add eax, 0x2c4
mov dword [rbp + 0x110], eax
mov eax, 2
mov byte [0x18001001b], al
movzx eax, r8b
imul ebx, eax, 0xfe
mov al, byte [rbp + 0x100]
xor al, r14b
mov byte [rbp + 0x100], al
movsx eax, byte [0x18001001b]
mov ecx, eax
test al, al
je 0x180003884
sub ecx, 1
je 0x180003848
cmp ecx, 1
jne 0x1800038a7
mov eax, 0x4660
mov ecx, 0x12dc
add ax, word [0x180010010]
mov word [rsp + 0x50], ax
movzx eax, word [0x180010050]
sub ax, cx
mov ecx, r9d
mov word [rsp + 0x60], ax
movzx eax, byte [0x18001001f]
mov rdx, qword [rbp - 0x68]
not rdx
add rdx, rax
movzx eax, word [0x180010018]
add rax, rdx
sete cl
mov word [rsp + 0x50], cx
jmp 0x1800038a7
movzx eax, word [rsp + 0x44]
movsx ecx, word [0x18001005c]
mov byte [0x18001001a], al
mov eax, 0xffffbdeb
cwde
imul ecx, eax
mov word [0x180010030], cx
movzx eax, word [rsp + 0x4c]
movzx ecx, word [0x18001001c]
test ax, ax
cmovne cx, r8w
movzx r13d, cx
jmp 0x1800038a7
movzx eax, word [0x18001005c]
mov edx, eax
lea ecx, [rax + rsi]
movzx eax, cx
imul eax, edx
mov word [0x18001005c], ax
movzx eax, word [rsp + 0x40]
mov word [rsp + 0x44], ax
mov rsi, qword [rbp - 0x58]
lea r15d, [r14 + 0x74]
xor edx, edx
mov byte [0x180010002], 0x74
xor ecx, ecx
call fcn.180001e58
xor r8d, r8d
mov byte [0x18001001a], al
cmp al, 0x14
mov edx, r8d
mov ecx, r8d
setle dl
test al, al
setle cl
cmp ecx, edx
ja 0x1800039f0
movsx rcx, byte [0x180010007]
mov edx, r8d
mov rax, qword [0x180010060]
cmp rax, rcx
mov rax, qword [0x180010060]
mov ecx, r8d
setge dl
cmp rax, 0x4b
setge cl
cmp edx, ecx
je 0x1800039ca
mov rax, qword [rbp - 0x48]
inc eax
imul r12d, eax
movzx edx, word [rsp + 0x54]
movzx eax, byte [0x180010002]
mov r9d, 1
cmp eax, r15d
jne 0x180003b13
movzx eax, byte [rbp + 0x100]
movsx ecx, byte [0x18001001a]
add ecx, eax
cmp ecx, r9d
jne 0x180003b13
mov al, byte [0x18001001f]
test al, al
jne 0x1800038af
mov al, byte [0x180010003]
test al, al
jne 0x180003975
movzx eax, word [rsp + 0x48]
test ax, ax
je 0x180003aee
movzx eax, word [rbp - 0x80]
movsx ecx, word [rsp + 0x48]
not eax
cmp ecx, eax
jge 0x180003aee
mov eax, dword [rsp + 0x64]
mov rcx, r9
sub rcx, rax
movzx r12d, bl
mov rax, qword [0x180010048]
add r12d, 0xc1427d1b
imul rax, rcx
mov cl, byte [0x180010050]
mov qword [0x180010048], rax
mov al, cl
shl al, 2
add cl, al
shl cl, 2
mov byte [0x18001001b], cl
jmp 0x1800038af
movsx eax, byte [rsp + 0x44]
mov ecx, dword [rsp + 0x58]
cmp eax, ecx
jne 0x18000391b
movzx edi, word [rsp + 0x4c]
add rdi, 0xa9
mov dword [rbp - 0x48], r13d
jmp 0x18000391b
mov rax, qword [0x180010070]
test rax, rax
je 0x180003a06
cmp word [0x180010004], r8w
jne 0x180003a0f
movzx edx, word [rsp + 0x54]
test dl, dl
jne 0x180003a6a
movzx eax, word [rsp + 0x4c]
movzx edx, word [rsp + 0x48]
movzx ecx, word [0x180010048]
sub cx, ax
movzx eax, word [rsp + 0x50]
sub ax, word [0x180010038]
xor dx, cx
movzx ecx, dx
movzx edx, ax
mov rax, qword [rbp - 0x68]
imul edx, ecx
movzx ecx, dx
movzx edx, ax
mov rax, qword [0x180010028]
imul edx, ecx
mov ecx, 0x770a
add ax, cx
mov word [0x180010018], ax
mov word [0x180010004], dx
jmp 0x18000391b
test esi, esi
je 0x180003ad5
movsx eax, word [0x180010058]
not eax
movsxd rdx, eax
mov eax, dword [rsp + 0x58]
not eax
movsxd rcx, eax
movzx eax, byte [0x18001001e]
sub rdx, rcx
sub rdx, qword [0x180010050]
mov rcx, r8
imul rax, rdi
test rax, rax
mov rax, qword [0x180010020]
not eax
sete cl
xor eax, ecx
imul eax, edx
mov dword [0x180010008], eax
movzx eax, word [rsp + 0x50]
sub qword [0x180010050], rax
mov rax, qword [0x180010020]
and al, 0xdc
mov byte [rbp + 0x100], al
jmp 0x18000391b
movzx eax, word [rsp + 0x4c]
test ax, ax
jne 0x180003920
mov al, byte [0x180010007]
jmp 0x180003920
test dl, dl
je 0x1800038af
movzx eax, word [0x1800cc2e8]
mov word [rsp + 0x48], ax
mov eax, r14d
and eax, 0xa8970199
mov dword [rsp + 0x64], eax
jmp 0x1800038af
movzx eax, word [0x18001005c]
mov r15, qword [rbp - 0x58]
mov rsi, qword [rbp - 0x10]
imul ecx, eax, 0x59aa623e
mov byte [rsp + 0x5c], r9b
mov dword [0x180010008], ecx
mov edx, dword [rbp + 0x110]
mov eax, dword [rbp + 0x110]
or edx, eax
mov ecx, dword [rbp + 0x110]
mov eax, dword [rbp - 0x30]
imul ecx, eax
mov eax, r8d
xor ecx, edx
sub ecx, 0x87780
cmp r13d, r15d
mov dword [rbp + 0x38], ecx
mov ecx, r8d
seta cl
cmp r13d, 0x23
setg al
cmp ecx, eax
je 0x180003b7b
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov byte [rbp + 0x108], al
mov eax, dword [0x1800cc2e8]
mov dword [rbp + 0x100], eax
mov rcx, qword [rbp - 0x68]
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
xor r14d, r14d
mov word [0x180010058], ax
test ax, ax
jne 0x180003c5d
movzx edx, word [0x180010068]
xor r9d, r9d
mov rcx, qword [0x180010048]
xor r8d, r8d
mov qword [rsp + 0x20], 0xf1
call fcn.180001648
mov qword [rbp - 0x48], rax
mov r8, rax
test eax, eax
je 0x180003c3b
cmp qword [0x180010040], r14
je 0x180003bea
mov cl, byte [0x18001001b]
mov ecx, dword [rsp + 0x58]
lea ecx, [r14 + 1]
jmp 0x180003bed
mov ecx, r14d
movsx edx, word [rsp + 0x44]
mov r9d, 1
movsx eax, dl
cmp eax, ecx
jle 0x180003cad
movsx eax, word [rsp + 0x40]
lea edx, [rsi + 0x7c]
add eax, 0xa22e
mov word [rsp + 0x44], dx
cdqe
movabs rcx, 0x2cd17dd619966
mov qword [0x180010038], rax
movzx eax, byte [0x18001001e]
add rax, rcx
mov qword [0x180010010], rax
jmp 0x180003cad
mov al, byte [0x18001001f]
test r12d, r12d
movzx eax, byte [0x1800ddded]
mov r9d, 1
sete bl
xor r8d, eax
mov qword [rbp - 0x48], r8
jmp 0x180003ca8
mov rcx, qword [rsp + 0x70]
mov r9d, 1
movsxd rax, dword [0x18001000c]
mov r8, qword [rbp - 0x48]
sub rcx, rax
mov rax, qword [rsp + 0x70]
add qword [0x180010038], r9
add rax, rcx
mov qword [rsp + 0x70], rax
movzx ecx, word [rbp + 0x118]
movzx eax, bl
sub cx, ax
movzx eax, word [rbp + 0x118]
sub cx, ax
mov word [rbp + 0x118], cx
movzx edx, word [rsp + 0x44]
mov ecx, dword [rbp + 0x100]
mov eax, dword [rbp - 0x2c]
add ecx, eax
cmp qword [0x180010040], r14
mov dword [rbp + 0x44], ecx
je 0x180003cde
mov eax, dword [0x180010008]
xor al, 0x73
mov word [0x180010034], si
mov byte [0x180010002], al
jmp 0x180003d85
mov rax, qword [0x180010060]
test rax, rax
je 0x180003d1f
movzx eax, byte [0x180010002]
sub r8d, eax
movzx eax, word [rsp + 0x4c]
mov qword [rbp - 0x48], r8
test ax, ax
je 0x180003d0f
mov r14, qword [0x180010048]
mov qword [rbp - 0x70], r14
jmp 0x180003d89
movzx eax, byte [0x18001001f]
mov r14d, eax
mov qword [rbp - 0x70], rax
jmp 0x180003d89
cmp word [0x180010018], r14w
je 0x180003d48
movabs rax, 0x26af931e017ff
mov qword [0x180010038], rax
mov eax, 2
mov qword [0x180010028], rax
jmp 0x180003d85
test dl, dl
mov eax, r14d
sete al
cmp eax, r12d
je 0x180003d85
mov rax, qword [0x180010020]
mov ecx, 0x86
sub dword [0x18001000c], r9d
sub al, 0x50
mov byte [rbp + 0x108], al
movsx r8d, word [rsp + 0x48]
movsx ecx, cx
imul r8d, ecx
mov word [0x180010030], r8w
mov r14, qword [rbp - 0x70]
mov eax, dword [rbp + 0x100]
xor r9d, r9d
movsx rcx, word [0x180010058]
add eax, 0x300
mov dword [rbp + 0x20], eax
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
lea edx, [rax + 0x23]
lea r8d, [rax + 0x3e]
call fcn.1800020ac
xor r10d, r10d
mov qword [0x180010010], rax
mov ecx, r10d
mov rdx, rax
shr rdx, 0x3f
mov r9d, 1
xor edx, r9d
cmp rax, 0xb
setge cl
cmp edx, ecx
jb 0x180004130
mov rcx, qword [0x180010020]
movsxd rax, dword [0x18001000c]
cmp rax, rcx
ja 0x180003e1a
movzx eax, word [rbp + 0x118]
movzx r8d, word [rsp + 0x44]
add ax, r9w
mov byte [0x1800ddc89], r8b
mov word [rbp + 0x118], ax
jmp 0x180003e50
movzx eax, word [rsp + 0x4c]
add eax, r13d
je 0x1800040f4
movzx ecx, word [0x180010068]
movabs rax, 0x2fea8addbd0ae
add rcx, rax
lea eax, [r15 - 0x33]
mov byte [0x180010002], al
mov qword [rbp - 0x68], rcx
movzx r8d, word [rsp + 0x44]
mov eax, dword [rbp + 0x100]
mov edx, 0x15
movzx ecx, word [0x180010018]
add eax, 0x4e9
movzx r11d, word [rsp + 0x54]
mov dword [rbp + 0x40], eax
mov rax, qword [0x180010028]
cmp rcx, rax
mov eax, r10d
mov ecx, 0x3087
sete al
mov dword [0x180010008], eax
movzx eax, bl
add ax, cx
mov ecx, r15d
mov word [rsp + 0x50], ax
mov eax, dword [0x1800cc2e8]
mov byte [0x18001001b], 0x95
mov dword [rbp + 0x110], eax
mov eax, dword [0x180010040]
add eax, 0xc73dcdad
mov dword [0x180010008], eax
mov eax, dword [0x180010008]
sub ecx, eax
mov eax, dword [0x180010008]
add eax, ecx
mov dword [0x180010008], eax
mov eax, dword [rbp + 0x110]
add eax, 0x589
mov dword [rbp + 0x34], eax
test r11b, r11b
je 0x180003f79
cmp byte [0x180010006], r10b
jne 0x180003f79
mov rax, qword [rsp + 0x70]
test rax, rax
jne 0x180003f79
mov ecx, dword [rsp + 0x58]
movsx eax, r8b
add cx, ax
mov rax, qword [0x180010010]
not rax
mov word [0x18001001c], cx
mov rcx, qword [0x180010028]
and rcx, rax
movzx eax, byte [0x180010006]
imul rax, rdi
add rax, rcx
movabs rcx, 0x55092d946e02d
mov eax, r10d
sete al
mov word [0x180010018], ax
movsxd rax, r12d
imul rax, rcx
mov rcx, r10
test rax, rax
movzx eax, word [0x18001005c]
sete cl
add rax, r14
not rax
add rcx, rax
mov eax, dword [rsp + 0x58]
not eax
movsxd rdi, eax
imul rdi, rcx
mov al, byte [rbp + 0x108]
sub edx, r9d
add al, r9b
mov byte [rbp + 0x108], al
test edx, edx
jg 0x180003ee1
mov eax, dword [rbp + 0x110]
mov rdi, qword [0x180010048]
add eax, 0x426
mov r14d, dword [rsp + 0x64]
mov dword [rbp - 8], eax
movzx eax, dil
imul ecx, eax, 0xad
mov byte [rbp + 0x100], cl
mov ecx, r10d
mov eax, dword [rbp + 0x110]
add eax, 0x47e
mov dword [rbp + 0x30], eax
movabs rax, 0x941edb8a6c47e
mov qword [0x180010038], rax
movzx eax, byte [0x180010002]
cmp r14d, eax
mov eax, r10d
setae cl
cmp r14d, 0x11
setae al
cmp ecx, eax
jne 0x18000405a
mov rcx, qword [0x180010028]
mov rax, qword [0x180010010]
not rcx
not rax
imul rax, rcx
test rax, rax
je 0x18000405a
movzx ecx, word [rsp + 0x4c]
sub rcx, qword [0x180010048]
movzx eax, word [rsp + 0x4c]
add ax, cx
mov word [rsp + 0x4c], ax
movzx ecx, byte [rbp + 0x100]
mov rax, qword [rbp - 0x70]
add rax, 0x9b
imul ecx, r12d
mov qword [0x180010048], rax
mov al, byte [rbp + 0x100]
sub al, cl
mov byte [rbp + 0x100], al
movzx eax, byte [rbp + 0x100]
add rax, r9
cmp qword [0x180010038], rax
jne 0x1800043d0
mov ebx, 0x1ea
mov r14, r9
add esi, ebx
call qword [sym.imp.KERNEL32.dll_GetOEMCP]
mov word [0x180010034], ax
sub rbx, r14
jne 0x18000407b
mov rax, qword [0x180010070]
cmp rax, qword [0x180010038]
ja 0x1800041ff
movsx ecx, byte [0x180010007]
mov eax, dword [rsp + 0x58]
mov r9, qword [rbp - 0x70]
cmp ecx, eax
jge 0x1800041ec
mov al, byte [0x180010038]
not al
xor al, byte [0x18001005c]
mov byte [0x180010032], al
mov eax, dword [0x180010008]
movzx r11d, word [rsp + 0x4c]
movzx ecx, ax
imul eax, ecx, 0x61
mov word [0x180010018], ax
and r11b, byte [0x180010018]
xor r10d, r10d
jmp 0x1800042f5
movzx eax, word [rsp + 0x48]
test ax, ax
jne 0x180003e4a
movzx eax, byte [0x180010003]
mov r15d, 0x13af640c
mov rdx, qword [0x180010070]
imul rdx, rax
mov rax, qword [0x180010070]
sub rax, rdx
mov qword [0x180010070], rax
jmp 0x180003e4a
movzx ecx, word [rsp + 0x50]
mov r8d, r10d
mov eax, dword [rsp + 0x58]
mov edx, r10d
cmp eax, ecx
mov ecx, dword [rsp + 0x58]
mov eax, dword [rsp + 0x58]
setg r8b
cmp ecx, eax
setge dl
cmp edx, r8d
movzx r8d, word [rsp + 0x44]
ja 0x180004193
movzx ecx, word [0x18001001c]
mov byte [0x180010003], cl
add cx, cx
sub cx, word [0x180010040]
movzx eax, bl
add cx, ax
mov rax, qword [rsp + 0x70]
mov word [0x180010034], cx
imul ecx, eax, 0x4a90
and esi, ecx
jmp 0x180003e50
mov al, byte [rbp + 0x108]
mov r14, r10
movzx eax, word [0x180010068]
mov ecx, dword [0x180010008]
movzx eax, word [0x18001005c]
imul ecx, eax
movzx eax, byte [0x18001001f]
not eax
cdqe
test ecx, ecx
movabs rcx, 0xd390738ca7569
sete r14b
add r14, rax
mov rax, qword [0x180010020]
imul rax, rcx
mov qword [rbp - 0x70], r14
mov qword [0x180010028], rax
jmp 0x180003e50
mov r15, qword [0x180010028]
shr r15, 4
xor r10d, r10d
jmp 0x1800042ef
mov rax, qword [0x180010060]
xor r10d, r10d
test rax, rax
je 0x180004241
mov r9, qword [rbp - 0x70]
lea eax, [r9 + 0x35]
mov byte [0x18001001e], al
movzx eax, word [rbp + 0x118]
shr rax, 8
mov qword [0x180010048], rax
mov al, byte [0x180010018]
add al, 0x29
mov byte [rbp + 0x100], al
jmp 0x1800042ef
mov rax, qword [rbp - 0x68]
test rax, rax
je 0x180004251
mov r8d, r14d
test esi, esi
jne 0x180004254
mov r8d, r10d
mov rdx, qword [0x180010060]
mov ecx, r10d
mov r9, qword [rbp - 0x60]
not rdx
movsx rax, r9b
cmp rdx, rax
cmovne ecx, r8d
test ecx, ecx
je 0x1800042cf
cmp byte [0x180010006], r10b
mov eax, r10d
mov r8d, r10d
sete al
cmp r15d, eax
mov rax, qword [0x180010060]
movzx edx, word [rsp + 0x4c]
movsx ecx, word [rsp + 0x40]
sete r8b
movsx r15d, r9b
add r15d, r8d
sub r15d, eax
mov eax, r10d
cmp ecx, edx
not r15d
mov ecx, 3
sete al
sub cl, byte [0x180010038]
add r15d, eax
mov al, byte [rbp + 0x100]
add cl, al
mov byte [rbp + 0x100], cl
jmp 0x1800042eb
mov al, byte [0x180010032]
test al, al
je 0x1800042eb
mov eax, 0x747
mov r13d, 0xeb
mov word [0x180010058], ax
mov r9, qword [rbp - 0x70]
movzx r11d, word [rsp + 0x54]
cmp word [0x180010058], r14w
mov r14d, dword [rsp + 0x64]
jne 0x1800043ca
mov rax, qword [rbp - 0x68]
mov rcx, qword [0x180010050]
not rcx
cmp r14, rcx
jne 0x1800043ab
mov al, byte [0x18001001f]
mov r12d, 1
or al, byte [0x1801359a0]
movsx esi, word [rsp + 0x44]
mov byte [0x18001001f], al
movzx r8d, word [0x180010068]
movzx ecx, word [0x180010058]
movsx eax, sil
movzx edx, ax
movzx eax, byte [0x180010006]
imul edx, ecx
xor dx, ax
xor dx, r8w
mov word [rsp + 0x50], dx
movzx eax, word [rbp + 0x118]
add ax, r9w
mov r9d, r12d
mov word [rbp + 0x118], ax
movsx edx, word [rsp + 0x48]
movsx eax, sil
imul eax, edx
mov word [rsp + 0x48], ax
movsx ecx, word [0x180010030]
movzx eax, word [0x180010030]
sub ecx, r14d
add ax, cx
mov word [0x180010030], ax
jmp 0x1800043d5
cmp qword [0x180010048], r10
mov edx, r10d
movsx eax, byte [0x18001001b]
sete dl
add eax, edx
cdqe
mov qword [0x180010020], rax
mov r9d, 1
movzx esi, word [rsp + 0x44]
movabs rax, 0x941edb8a6c47e
mov dword [rbp - 0x30], r10d
mov qword [0x180010038], rax
lea rbx, [rdi - 0xadb0]
movzx eax, word [0x18001001c]
lea rbx, [rax + rbx*2]
movzx eax, word [rbp + 0x118]
not eax
mov qword [rbp - 0x78], rbx
cdqe
mov qword [0x180010050], rax
movzx eax, word [rsp + 0x48]
movzx ecx, al
imul eax, ecx, 0x6c
mov dword [rsp + 0x68], eax
movsx eax, word [0x180010034]
add eax, 0x70994717
mov qword [0x180010028], rax
mov eax, dword [rbp - 0x1c]
test eax, eax
je 0x18000883f
mov eax, 4
mov word [rsp + 0x50], ax
mov rcx, qword [0x180010020]
movzx eax, word [0x180010030]
movsx rdx, byte [0x180010032]
movzx r8d, cx
imul r8d, eax
mov rax, qword [0x180010020]
movzx ecx, word [0x180010004]
add dx, r8w
mov r8d, 4
sub dx, ax
movzx eax, word [rbp - 0x80]
add ecx, eax
mov eax, r10d
cmove ax, dx
mov word [0x18001001c], ax
movsxd rax, dword [0x18001000c]
mov byte [0x18001001b], r8b
mov rcx, qword [rsp + 0x70]
sub rcx, rax
mov rax, qword [rsp + 0x70]
xor rax, rcx
mov qword [rsp + 0x70], rax
movzx ecx, word [rsp + 0x50]
test ecx, ecx
je 0x1800045e1
sub ecx, 1
je 0x180004580
sub ecx, 1
je 0x180004549
sub ecx, 1
je 0x1800044f7
mov esi, dword [rsp + 0x5c]
cmp ecx, 1
jne 0x18000465a
movzx eax, word [0x180010038]
mov word [rsp + 0x50], ax
jmp 0x18000465a
mov byte [rbp + 0x108], 0xfc
movzx eax, word [rsp + 0x50]
mov cl, byte [0x180010058]
movsx r11d, byte [0x180010003]
sub cl, al
mov al, byte [0x180010018]
movsx ecx, cl
and al, sil
movsx edx, al
imul edx, ecx
movsx ecx, dl
imul r11d, ecx
movsxd rcx, dword [0x180010008]
xor rcx, 0xd959
mov qword [0x180010060], rcx
not r11b
jmp 0x180004656
mov eax, dword [rsp + 0x58]
mov esi, dword [rsp + 0x5c]
imul eax, eax, 0xbcc52803
mov qword [0x180010010], rax
mov rax, qword [rsp + 0x70]
mov word [0x180010058], ax
movsx eax, sil
imul ecx, eax, 0x472e2cd4
movsxd rbx, ecx
mov qword [rbp - 0x78], rbx
jmp 0x18000465a
movsx rcx, byte [0x180010007]
mov rax, qword [0x180010020]
sub rax, rcx
mov ecx, r10d
mov qword [0x180010020], rax
movzx edx, byte [rbp + 0x108]
movzx eax, byte [rbp + 0x108]
add edx, dword [0x18001000c]
and dword [0x18001000c], edx
cmp qword [rbp - 0x70], rax
movzx eax, word [rsp + 0x4c]
sete cl
add eax, ecx
movzx ecx, word [rbp + 0x118]
add ecx, eax
mov rax, qword [rsp + 0x70]
imul r12d, eax, 0xf76c6ad
add r12d, ebx
xor r12d, ecx
jmp 0x180004656
mov eax, dword [0x180010008]
mov edx, r10d
movzx ecx, word [rsp + 0x50]
add cx, ax
mov eax, 0x7af9
add cx, ax
movsx eax, sil
mov word [rsp + 0x50], cx
movzx ecx, byte [rbp + 0x108]
not ecx
imul ecx, eax
test ecx, ecx
movsx ecx, word [rsp + 0x40]
movzx eax, byte [0x180010002]
sete dl
sub ecx, eax
not ecx
lea eax, [rdx + rcx]
mov rcx, qword [rbp - 0x68]
cdqe
add rcx, rax
movsx rax, byte [0x180010032]
movsx rdx, byte [0x180010032]
add rdx, rax
mov qword [0x180010040], rcx
mov rax, qword [rbp - 0x68]
add al, dl
mov byte [0x180010032], al
mov esi, dword [rsp + 0x5c]
movsx eax, byte [0x18001001a]
movzx edi, byte [0x180010006]
xor r15d, eax
mov qword [0x180010070], r9
neg edi
mov word [rbp + 0x118], r8w
mov rax, qword [0x180010070]
mov qword [rbp - 0x18], rdi
mov qword [rbp - 0x58], r15
test rax, rax
je 0x1800046ad
cmp rax, 1
jne 0x1800046d3
mov al, byte [0x180010040]
mov edi, 0x76ff
mov byte [0x1800ddc6f], al
mov qword [rbp - 0x18], rdi
jmp 0x1800046d3
movzx eax, word [rsp + 0x48]
add ax, r9w
mov word [0x18001005c], r8w
mov word [rsp + 0x48], ax
mov rax, qword [rbp - 0x60]
add al, al
sub al, byte [0x18001001e]
mov qword [rbp - 0x60], rax
mov eax, dword [0x1800cc2e8]
mov dword [rbp + 0x100], eax
movzx eax, word [rsp + 0x40]
add al, 0x7b
mov byte [rbp + 0x108], al
mov al, byte [0x180010048]
shl al, 2
mov byte [0x180010006], al
movsx eax, byte [0x180010032]
movzx r10d, word [rbp + 0x118]
movzx r9d, word [0x180010068]
movzx edx, word [0x180010068]
not r9d
movzx ecx, byte [0x180010003]
movsx r8d, word [0x180010058]
imul r10d, eax
xor eax, eax
cmp dx, word [rbp + 0x50]
cmove eax, ecx
movsx ecx, r11b
sub ecx, eax
xor edx, edx
add ecx, 0xe8
mov eax, r8d
imul eax, r9d
not r10d
add eax, r10d
or ecx, eax
mov dword [rsp + 0x58], ecx
xor ecx, ecx
mov eax, dword [rbp + 0x100]
add eax, 0x2ec
mov dword [rbp + 0x110], eax
call fcn.18000198c
mov word [0x18001001c], ax
xor r9d, r9d
movzx eax, word [rbp + 0x118]
mov ecx, r9d
mov edx, dword [rsp + 0x58]
not eax
add edx, eax
mov al, byte [rbp + 0x108]
movzx r8d, byte [0x180010002]
cmp r8b, al
seta cl
cmp ecx, edx
jg 0x1800047df
cmp dword [0x18001000c], r12d
mov edx, r9d
mov eax, r9d
setne dl
cmp dword [0x18001000c], 2
setne al
cmp edx, eax
jb 0x180004831
movzx eax, r8w
mov ecx, 0xd98c
xor ax, cx
mov word [0x180010018], ax
mov al, sil
and al, 0x9e
mov byte [rsp + 0x44], al
xor r8d, r8d
mov eax, dword [rbp + 0x100]
add eax, 0x620
mov dword [rbp + 0x28], eax
mov al, byte [0x18001001b]
test al, al
je 0x180004884
movzx eax, word [0x18000f208]
lea rcx, [rbp + 0x58]
vmovups xmm0, xmmword [str.._AV___Ref_count_o]
mov word [rbp + 0x68], ax
mov al, byte [0x18000f20a]
mov byte [rbp + 0x6a], al
vmovups xmmword [rbp + 0x58], xmm0
call qword [sym.imp.KERNEL32.dll_lstrlenA]
xor r8d, r8d
jmp 0x1800048bf
xor r8d, r8d
cmp qword [0x180010048], r8
je 0x180004869
movsx edx, word [0x180010068]
mov ecx, 0xffffccaa
movzx eax, word [0x1800cc2e8]
movsx ecx, cx
imul edx, ecx
mov word [0x180010018], ax
mov word [0x180010034], dx
jmp 0x1800047e2
cmp qword [0x180010038], r8
je 0x1800047e2
movzx eax, byte [rsp + 0x68]
add word [rbp - 0x80], ax
jmp 0x1800047e2
movzx edx, word [rbp + 0x118]
movabs rcx, 0x767f278433ea2
movzx eax, word [0x180010018]
add rax, rcx
mov rcx, qword [0x180010060]
mov qword [0x180010040], rax
movzx eax, cx
imul eax, edx
mov word [rbp + 0x118], ax
mov eax, 0x69ae
mov r10, qword [rbp - 0x48]
mov edx, r8d
mov word [0x180010068], ax
mov ecx, dword [rbp + 0x100]
mov eax, dword [rbp + 0x24]
add ecx, eax
mov eax, r8d
mov dword [rbp + 8], ecx
movzx ecx, byte [0x180010006]
cmp ecx, r10d
sete dl
cmp cl, 0x1a
sete al
cmp edx, eax
jae 0x180004911
mov rcx, qword [0x180010028]
call qword [sym.imp.USER32.dll_GetParent]
mov r10, qword [rbp - 0x48]
xor r8d, r8d
mov byte [rbp + 0x100], al
jmp 0x18000496e
mov al, byte [rbp + 0x108]
mov edx, r8d
cmp word [0x180010058], r8w
movsx ecx, word [rsp + 0x40]
sete dl
not ecx
add ecx, edx
jns 0x18000496e
movzx eax, byte [0x180010006]
mov ecx, 0x3e96
add ax, cx
mov word [section..data], ax
mov rax, qword [0x180010070]
movzx ecx, word [0x180010050]
movzx edx, byte [0x180010002]
sub cx, ax
not cx
movzx ecx, cx
imul edx, ecx
mov word [0x180010004], dx
mov eax, dword [0x1800cc2e8]
mov ecx, r14d
mov r11d, dword [rsp + 0x60]
mov r9d, 0x3c6
movzx edi, word [rsp + 0x44]
mov dword [rbp + 0x108], eax
mov eax, 4
mov byte [rsp + 0x54], al
mov rax, qword [0x180010028]
sub ecx, eax
movzx r12d, r11w
movsx eax, word [0x180010068]
and r14d, ecx
movsx ecx, byte [0x18001001b]
movsx edx, al
mov eax, ecx
imul eax, edx
mov ecx, 0x6d86
mov edx, r8d
mov dword [rsp + 0x64], r14d
mov byte [0x18001001b], al
movzx eax, word [rsp + 0x40]
add ax, cx
mov word [rsp + 0x40], ax
mov eax, 0xa5c84dde
add rax, rbx
cmp qword [0x180010048], r8
mov qword [0x180010020], rax
movsx ecx, byte [0x180010007]
sete dl
mov al, byte [0x1800cc2e8]
sub ecx, edx
mov byte [rbp + 0x100], al
sub r12d, 0x3643749b
mov eax, dword [rbp + 0x108]
mov edx, 1
add eax, 0x5ad
movsxd rsi, ecx
mov dword [rbp + 0x3c], eax
movsx rax, byte [0x18001001a]
sar rax, 4
mov qword [0x180010060], rax
mov al, byte [0x180010002]
mov ecx, dword [rbp + 0x108]
add al, al
sub al, r10b
mov qword [rbp - 0x28], r12
mov r12, qword [rbp - 0x80]
mov byte [0x180010002], al
mov eax, dword [rbp + 0x48]
add ecx, eax
mov dword [rbp - 4], ecx
mov qword [rbp - 0x70], rsi
test dil, dil
je 0x180004b4a
mov rax, qword [0x180010060]
mov ecx, r8d
mov qword [0x180010010], rax
test rbx, rbx
movzx eax, word [rsp + 0x50]
sete cl
mov qword [0x180010040], rdx
or cx, ax
movzx eax, word [0x180010004]
not cx
movzx r11d, cx
movzx ecx, byte [rsp + 0x68]
imul r11d, eax
mov rax, qword [0x180010020]
movzx edx, word [0x180010038]
sub dx, ax
movzx eax, r15w
not ax
sub ax, cx
add r11w, r12w
xor dx, ax
mov rax, qword [0x180010040]
mov word [rsp + 0x40], dx
test rax, rax
je 0x180004b18
mov edx, 1
cmp rax, rdx
jne 0x180004c3b
movsx eax, r14b
imul edi, eax, 0x7e
mov eax, dword [0x1800cc2e8]
mov qword [0x180010010], rax
mov eax, 0x1218
movzx ecx, r15w
imul ecx, eax
mov word [rbp + 0x118], cx
jmp 0x180004c3b
mov rax, qword [0x180010050]
add rax, 0xffffffffffffffca
mov qword [0x180010040], rax
movsx rax, byte [0x18001001b]
mov qword [0x1800f6010], rax
mov eax, r10d
shr rax, 8
mov qword [rsp + 0x70], rax
jmp 0x180004c36
movsx rax, word [0x180010058]
mov r8, rsi
not r8
cmp rax, r8
jbe 0x180004b8f
movsx ecx, word [rsp + 0x40]
imul ecx, dword [0x18001000c]
movzx eax, r11w
sub rax, 0x1d9bc49
mov qword [0x180010050], rax
movzx eax, word [rsp + 0x40]
add ax, cx
mov word [rsp + 0x40], ax
xor r8d, r8d
jmp 0x180004c3b
mov rax, qword [0x180010070]
test rax, rax
jne 0x180004ba1
mov al, byte [0x180010007]
movsx ecx, word [rsp + 0x48]
mov rax, qword [rbp - 0x68]
not ecx
movsxd rdx, ecx
cmp rdx, rax
je 0x180004c10
movzx ecx, byte [0x18001001f]
mov eax, dword [0x180010010]
movzx edx, byte [rsp + 0x68]
mov dword [0x180248764], eax
xor eax, eax
cmp qword [0x180010038], rcx
movzx ecx, byte [0x180010002]
sete al
add rcx, r8
not rcx
add rcx, rax
mov eax, 0x6879
xor dx, ax
movzx eax, word [0x180010068]
add dx, cx
sub dx, ax
inc dx
add dx, r10w
mov word [0x180010030], dx
xor r8d, r8d
jmp 0x180004c36
mov rax, qword [rsp + 0x70]
xor r8d, r8d
test rax, rax
je 0x180004c36
movzx eax, r15b
test r13d, r13d
movsx r15d, word [0x180010058]
mov ecx, r8d
cmove ecx, eax
mov dword [rsp + 0x5c], ecx
mov edx, 1
add qword [0x180010048], rdx
sub r9, rdx
jne 0x180004a65
mov eax, dword [rbp + 0x108]
mov r9d, 2
add eax, 0x2f4
mov dword [rsp + 0x60], r11d
mov dword [rbp - 0x20], eax
mov qword [0x180010020], r9
movzx ebx, word [rsp + 0x4c]
movzx edx, word [rsp + 0x50]
neg bl
movzx eax, word [rbp + 0x118]
imul eax, edx
mov word [rsp + 0x44], di
mov qword [rbp - 0x58], r15
mov dword [rsp + 0x68], ebx
mov word [rbp + 0x118], ax
mov rax, qword [0x180010020]
test rax, rax
je 0x180004cff
sub rax, 1
je 0x180004cd7
movzx esi, di
cmp rax, 1
jne 0x180004d3b
mov eax, dword [0x18001000c]
add eax, 0x79
mov dword [rsp + 0x58], eax
mov al, byte [0x18001001f]
mov byte [0x1800cf5d0], al
mov word [0x18001005c], r9w
jmp 0x180004d3b
mov eax, dword [0x1800cc2e8]
movsx esi, word [rsp + 0x44]
mov qword [0x180010048], rax
movsx eax, sil
sub eax, 0x5b
cdqe
mov qword [rbp - 0x70], rax
movzx eax, word [rbp + 0x118]
jmp 0x180004d3b
cmp dword [0x18001000c], r8d
je 0x180004d11
mov sil, byte [0x180010018]
jmp 0x180004d16
movzx esi, word [rsp + 0x48]
mov cl, byte [0x18001001c]
mov al, cl
mov word [rsp + 0x44], si
shl al, 2
add cl, al
mov eax, 0xe388
shl cl, 5
mov byte [0x180010006], cl
mov word [rsp + 0x50], ax
mov al, byte [0x180010058]
lea r9, [rbp]
mov rdi, qword [rbp - 0x18]
mov byte [0x180010006], al
movzx eax, word [rsp + 0x48]
movzx ecx, al
imul edx, ecx, 0xcc
mov ecx, r8d
movzx eax, dil
test sil, sil
mov qword [rbp], 0x19bfcc0
cmove ecx, eax
mov qword [rbp + 0x10], r8
mov eax, 4
xor r8d, r8d
not dl
mov dword [rsp + 0x28], eax
sub dl, cl
mov dword [rsp + 0x20], 0x3000
mov byte [rbp + 0x100], dl
or rcx, 0xffffffffffffffff
lea rdx, [rbp + 0x10]
call fcn.18000e1c0
xor r11d, r11d
test r15d, r15d
je 0x180004db2
movzx eax, word [rbp + 0x118]
jmp 0x180004db9
mov rax, qword [0x180010010]
movsx ecx, byte [rsp + 0x5c]
mov r8, qword [rbp - 0x60]
mov r10, qword [rbp - 0x78]
mov r12, qword [rbp - 0x28]
mov qword [0x180010038], rax
movzx eax, word [section..data]
add cx, ax
imul r13d, r10d, 0xfa8
mov eax, 0x530f
add cx, ax
movzx eax, r8b
mov word [section..data], cx
imul ecx, eax, 0x93
mov qword [rbp - 0x38], r13
mov byte [rbp + 0x108], cl
mov ecx, dword [rbp + 0x20]
mov eax, dword [rbp + 0x44]
xor ecx, eax
mov eax, dword [rbp + 0x40]
cmp eax, ecx
je 0x1800070bd
movsx rax, word [rsp + 0x48]
cmp rax, qword [0x180010038]
mov esi, dword [rsp + 0x60]
jbe 0x180004e58
mov r10d, dword [0x18001000c]
test si, si
mov byte [0x180010007], 0xc3
movzx ecx, byte [0x18001001f]
cmovne r10d, r15d
sub rcx, 0x6b
mov qword [rbp - 0x78], r10
mov qword [0x180010038], rcx
jmp 0x180004ed2
movzx ecx, word [0x180010068]
movzx eax, bl
cmp ax, cx
je 0x180004e8b
movzx eax, word [rsp + 0x50]
mov rbx, qword [rbp - 0x80]
mov qword [rbp - 0x68], rax
mov rcx, qword [rbp - 0x68]
movzx eax, bx
sub rcx, rax
mov rax, qword [rbp - 0x68]
add rax, rcx
mov qword [rbp - 0x68], rax
jmp 0x180004ed6
mov rax, qword [0x180010020]
not rax
test rax, rax
je 0x180004ed2
movzx eax, word [rbp + 0x118]
mov ecx, 0x47da
sub ax, cx
movzx ecx, word [0x18001005c]
mov word [section..data], ax
movzx eax, r14w
imul ecx, eax
mov eax, dword [0x1800cc2e8]
mov qword [0x180010048], rax
mov word [0x18001005c], cx
mov rbx, qword [rbp - 0x80]
mov eax, dword [0x1800cc2e8]
mov dword [rbp + 0x110], eax
test edi, edi
je 0x180004f41
mov ecx, 1
call qword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov rcx, rax
call qword [sym.imp.USER32.dll_EndDeferWindowPos]
mov r10, qword [rbp - 0x78]
movabs rcx, 0x425a1a74dd0a5
mov rax, r10
xor r11d, r11d
imul rax, rcx
cmp qword [0x180010050], r11
mov qword [0x180010038], rax
je 0x180004f2b
movzx eax, byte [rbp + 0x100]
jmp 0x180004f32
movsx eax, byte [0x18001001a]
mov r8, qword [rbp - 0x60]
cdqe
mov qword [0x180010040], rax
jmp 0x180004f58
mov al, byte [0x1800ddd5a]
mov byte [rbp + 0x108], al
movzx eax, word [0x180010004]
mov dword [rsp + 0x58], eax
mov eax, dword [rbp + 0x110]
mov rdx, qword [rbp - 0x48]
add eax, 0x2c6
mov dword [rbp - 0x50], eax
mov eax, dword [rbp + 0x110]
add eax, 0x344
mov dword [rbp - 0x50], eax
mov rax, qword [0x180010028]
mov eax, r13d
sub eax, dword [0x18001000c]
xor r13d, eax
movzx eax, word [0x180010068]
sub al, 0x7f
mov qword [rbp - 0x38], r13
mov byte [0x180010032], al
mov eax, dword [rbp + 0x110]
add eax, 0xfc7
mov dword [rbp + 0x110], eax
movzx eax, word [0x180010068]
cmp ax, bx
jae 0x180004fe9
imul eax, edi, 0xe6
imul edx, eax
mov al, byte [0x1800cc2e8]
mov byte [0x18001001b], al
movsxd rcx, dword [0x180010008]
mov rax, qword [rsp + 0x70]
sub rcx, rax
not rcx
mov qword [0x180010060], rcx
mov eax, dword [rbp + 0x110]
mov ecx, 0x427
sub ecx, eax
mov eax, dword [rbp + 0x110]
add eax, ecx
mov dword [rbp + 0x2c], eax
mov rcx, qword [rsp + 0x70]
movsxd rax, r13d
cmp rcx, rax
jl 0x180005081
movsx eax, r8b
mov ecx, r11d
cmp edx, eax
mov r9d, 4
mov eax, r11d
setbe cl
cmp edx, r9d
setbe al
cmp ecx, eax
jbe 0x180005052
movzx esi, byte [0x180010003]
movabs rax, 0x7c17af1214a88
movzx r10d, word [rsp + 0x4c]
imul rsi, rax
mov qword [rbp - 0x78], r10
mov qword [rbp - 0x70], rsi
jmp 0x1800050c6
mov al, byte [rbp + 0x108]
mov al, byte [0x180010002]
add al, 0x7b
mov byte [0x18001001f], al
mov eax, 0xcab7
movsx ecx, byte [0x18001001b]
movzx edx, cx
imul edx, eax
mov word [0x180010068], dx
jmp 0x1800050c6
mov rax, qword [rbp - 0x68]
test rax, rax
jne 0x1800050ae
mov cl, byte [rbp + 0x100]
mov al, sil
mov edx, dword [0x18001000c]
not cl
xor cl, r8b
add edx, 0xffffd781
sub al, cl
add al, dl
mov byte [rsp + 0x68], al
jmp 0x1800050c6
movzx eax, byte [0x18001001e]
mov r12d, 0x8d57a000
mov qword [rbp - 0x28], r12
mov qword [0x180010070], rax
mov rbx, r11
mov qword [rbp - 0x10], rbx
movzx edx, word [rsp + 0x40]
lea eax, [r13 + 0xf]
movzx esi, word [section..data]
mov ecx, 0xc93
movzx edi, word [rsp + 0x44]
sub esi, 0x35
mov byte [rsp + 0x5c], al
mov eax, 8
mov dword [0x18001000c], eax
mov al, byte [0x180010003]
imul edx, ecx
mov ecx, r11d
test al, al
mov qword [rbp - 0x18], rsi
movzx eax, word [0x18001001c]
sete cl
sub ax, cx
mov word [rsp + 0x4c], ax
mov eax, dword [0x1800cc2e8]
mov dword [rbp + 0x110], eax
movzx eax, word [0x180010058]
not ax
mov word [rbp - 0x80], dx
movzx edx, word [rsp + 0x54]
mov word [rsp + 0x40], ax
mov cl, byte [0x18001001f]
mov al, cl
shl al, 3
add cl, al
mov al, byte [0x180010018]
add al, 0x1b
add cl, cl
mov byte [0x18001001b], cl
mov ecx, r12d
mov byte [0x18001001f], al
mov eax, dword [rbp + 0x110]
add eax, 0x552
mov dword [rbp - 0x2c], eax
movsx eax, word [0x180010058]
sub ecx, eax
mov qword [rsp + 0x70], 2
movsxd rax, ecx
sub rax, r10
mov qword [0x180010028], rax
mov eax, dword [0x180010038]
xor eax, 0x16
mov dword [rbp - 0x48], eax
mov rax, qword [rsp + 0x70]
dec rax
cmp rax, 1
jne 0x1800051d9
mov rsi, qword [rbp - 0x68]
movzx eax, word [section..data]
sub esi, 0x5eab
imul r14d, eax, 0xd2b3c1b6
mov eax, 1
mov qword [rbp - 0x18], rsi
mov word [rsp + 0x60], ax
mov dword [rsp + 0x64], r14d
mov ecx, dword [rbp + 0x110]
mov eax, dword [rbp + 0x2c]
add ecx, eax
mov dword [rsp + 0x78], ecx
mov eax, 0x2b46
movzx ecx, byte [0x180010003]
sub cx, ax
cmp word [0x180010034], r11w
mov word [0x180010030], cx
je 0x18000520e
movsx eax, dil
jmp 0x180005213
movzx eax, word [rsp + 0x4c]
mov word [rbp + 0x118], ax
mov eax, dword [rbp + 0x110]
add eax, 0x4f1
mov dword [rbp + 0x110], eax
mov byte [0x180010007], 0x97
movsx ecx, byte [0x180010007]
movzx eax, word [rbp + 0x118]
add eax, ecx
cdqe
cmp qword [0x180010040], rax
jne 0x180005364
movsx rbx, dl
movabs rcx, 0xc19dda2d525ae
add rbx, rcx
xor esi, esi
lea r15d, [rsi + 2]
movzx ecx, word [0x18001005c]
xor r9d, r9d
mov qword [rsp + 0x28], rsi
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], rsi
call fcn.1800020ac
mov qword [0x180010028], rax
mov edx, esi
mov rax, qword [0x180010028]
mov ecx, esi
cmp rax, 0x57
mov rax, qword [0x180010028]
seta dl
test rax, rax
setne cl
cmp ecx, edx
ja 0x1800052d4
mov ecx, 0x1bb
mov esi, 1
mov al, byte [0x180010003]
xor byte [0x180010002], al
add qword [0x180010010], rsi
sub rcx, rsi
jne 0x1800052ba
xor esi, esi
movzx eax, word [rsp + 0x40]
mov ecx, 0x27a2
sub ax, cx
mov ecx, 0x52b4
mov word [rsp + 0x50], ax
mov al, byte [0x180010006]
add al, r15b
mov byte [0x180010003], al
movzx eax, word [0x180010030]
sub ax, cx
mov word [rsp + 0x40], ax
movzx eax, byte [0x18001001f]
cmp rax, rbx
jne 0x180005350
movsx eax, byte [0x18001000c]
mov byte [0x180010003], 0xa2
mov byte [0x180010007], 0x97
movsx ecx, byte [0x180010007]
movsx edi, dil
imul edi, eax
movzx eax, word [rbp + 0x118]
add eax, ecx
cdqe
cmp qword [0x180010040], rax
je 0x180005268
mov r15, qword [rbp - 0x58]
xor r11d, r11d
mov rsi, qword [rbp - 0x18]
mov rbx, qword [rbp - 0x10]
mov word [rsp + 0x44], di
movsxd rax, dword [0x18001000c]
mov edi, 0x85
mov qword [rsp + 0x30], 0xe3
mov r9d, edi
mov qword [rsp + 0x28], rax
xor r8d, r8d
xor ecx, ecx
mov qword [rsp + 0x20], r11
lea edx, [rdi - 0x64]
call fcn.1800022fc
xor r11d, r11d
mov word [0x180010004], ax
cmp ax, 0x2c
mov edx, r11d
mov ecx, r11d
sete dl
test ax, ax
sete cl
cmp ecx, edx
jb 0x1800055bd
mov al, byte [0x18001001b]
test al, al
jne 0x180005582
test r15d, r15d
mov eax, r11d
sete al
cmp r15d, eax
jae 0x180005582
movzx eax, word [rbp + 0x118]
mov ecx, r11d
test ax, ax
mov rax, qword [0x180010060]
movzx edx, ax
sete cl
movzx ecx, cx
imul edx, ecx
mov word [rsp + 0x50], dx
movsx rax, byte [0x180010007]
mov rdx, qword [0x180010038]
sub rdx, rax
mov al, byte [0x180010007]
add al, dl
mov byte [0x180010007], al
mov rdi, qword [rbp - 0x78]
mov ecx, dword [rbp + 0x110]
mov eax, dword [rsp + 0x78]
add ecx, eax
mov eax, dword [rsp + 0x78]
mov edx, dword [rsp + 0x78]
imul eax, ecx
mov ecx, 0xfffffd8a
imul edx, eax
mov eax, dword [rbp + 0x110]
sub ecx, eax
mov eax, dword [rbp - 0x2c]
add eax, ecx
cmp edx, eax
je 0x180007098
movzx eax, word [rsp + 0x4c]
xor r9d, r9d
mov qword [rsp + 0x30], r11
xor ecx, ecx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x16
lea edx, [r9 + 0x53]
lea r8d, [rdx + 0x3b]
call fcn.1800022fc
xor r9d, r9d
mov qword [rbp - 0x60], rax
cmp al, 0x52
mov ecx, r9d
movzx eax, al
setl cl
shr eax, 7
cmp eax, ecx
jne 0x1800056f2
lea eax, [r9 + 4]
mov word [0x180010034], ax
mov rax, qword [0x180010060]
sub byte [0x180010002], al
mov eax, r14d
cmp qword [0x180010038], r9
jne 0x1800054c7
movzx eax, byte [rbp + 0x100]
mov byte [rbp + 0x108], al
movsx ecx, word [rsp + 0x48]
movzx eax, byte [0x18001001e]
add ax, cx
mov ecx, 0x73f2
sub ax, cx
movsx ecx, word [0x180010034]
mov word [rsp + 0x48], ax
test ecx, ecx
je 0x1800056d8
sub ecx, 1
je 0x1800056a3
sub ecx, 1
je 0x180005673
sub ecx, 1
je 0x1800055ea
cmp ecx, 1
jne 0x18000572e
mov eax, r9d
test r13d, r13d
sete al
sub eax, r14d
mov r8d, eax
movzx eax, word [rsp + 0x60]
sub r8, rax
mov rax, qword [0x180010028]
movsx rdx, byte [0x180010032]
not rax
add r8, rax
movsx eax, byte [0x18001001a]
not eax
movsxd rcx, eax
movsx rax, byte [rsp + 0x5c]
and rdx, rcx
or rdx, rax
movzx eax, word [rbp + 0x118]
imul rdx, r8
sub ax, word [rbp - 0x70]
mov qword [0x180010010], rdx
mov word [rbp + 0x118], ax
jmp 0x18000572e
mov rdi, qword [rbp - 0x78]
cmp dword [rbp - 0x48], r11d
je 0x180005421
mov ecx, dword [0x180010008]
mov rax, qword [0x180010028]
add ecx, 0x4a1a8f55
sub rax, rcx
mov qword [0x180010038], 0xe8f0
mov qword [0x180010028], rax
jmp 0x180005421
movzx eax, word [rsp + 0x40]
test ax, ax
jne 0x18000541d
movzx eax, word [0x1800cc2e8]
mov qword [rbp - 0x80], rax
mov eax, dword [0x180010008]
add eax, edi
movsxd rdi, eax
mov qword [rbp - 0x78], rdi
jmp 0x180005421
movsx eax, byte [rsp + 0x5c]
mov r8b, byte [rbp - 0x48]
sub eax, 0xb6
movsxd rcx, eax
not r8b
mov rax, qword [0x180010028]
add rcx, rax
cmp byte [0x180010006], r9b
mov qword [0x180010028], rcx
movsx edx, byte [0x180010032]
sete cl
mov eax, dword [rsp + 0x58]
add r8b, byte [rsp + 0x44]
movsx ecx, cl
not r8b
imul edx, ecx
movzx ecx, word [rsp + 0x50]
xor r8b, dl
test eax, eax
not r8b
sete al
sub cl, al
movsx eax, byte [0x180010018]
imul edx, eax, 0x41
movsx eax, r8b
and dl, cl
not dl
movsx ecx, dl
imul ecx, eax
movzx eax, byte [0x18001001e]
sub word [0x180010058], ax
mov byte [rsp + 0x5c], cl
jmp 0x18000572e
movzx eax, word [section..data]
mov cl, al
shl al, 2
add cl, al
mov al, byte [0x180010003]
shl cl, 4
sub al, cl
mov byte [0x180010003], al
mov al, byte [0x180010006]
and byte [0x180010002], al
jmp 0x18000572e
movzx eax, word [rbp - 0x80]
imul eax, eax, 0x7e708270
cdqe
mov qword [0x180010020], rax
movsx r15d, byte [0x18001001b]
mov al, byte [0x180010002]
add r15d, 0x6b
add al, al
add al, byte [0x180010050]
mov byte [0x180010002], al
jmp 0x18000572e
mov eax, dword [0x180010008]
mov word [0x1800d2502], ax
mov qword [0x180010010], 0x82
jmp 0x18000572e
mov al, byte [0x180010003]
test al, al
je 0x18000572e
movsx eax, word [0x180010030]
imul eax, eax, 0xc223
test eax, eax
movzx eax, word [0x180010038]
sete byte [rbp + 0x100]
add ax, 0x32
mov dword [0x180010008], 0xd436
mov word [section..data], ax
mov ecx, 0x72
lea edx, [rcx - 0x71]
lea r8d, [rcx - 0x44]
movzx eax, word [0x180010030]
add word [0x180010034], ax
movzx eax, word [0x180010048]
xor ax, r8w
mov word [0x180010068], ax
movzx eax, word [rbp + 0x118]
add ax, dx
mov word [rbp + 0x118], ax
sub rcx, rdx
jne 0x18000573a
mov eax, dword [0x1800cc2e8]
mov dword [rbp + 0x110], eax
lea rax, [rdi - 0x8b]
mov qword [0x180010050], rax
mov word [rsp + 0x40], dx
mov rax, qword [rsp + 0x70]
sar rax, 4
mov word [0x180010034], ax
movsx eax, word [rsp + 0x40]
test eax, eax
je 0x1800057d5
cmp eax, edx
jne 0x180005808
movzx eax, word [0x180010004]
add ax, ax
add ax, word [0x180010038]
mov word [0x180010004], ax
movzx eax, word [rsp + 0x40]
sar ax, 8
mov byte [0x180010002], al
jmp 0x180005808
movsx rcx, word [rsp + 0x48]
mov rax, qword [0x180010038]
add rcx, rdx
imul rax, rcx
mov rcx, qword [rsp + 0x70]
movzx edx, word [rsp + 0x40]
movzx ecx, r9w
imul edx, ecx
mov qword [0x180010038], rax
mov word [0x180010018], dx
mov eax, dword [rbp + 0x110]
add eax, 0x40b
mov dword [rbp - 0x50], eax
mov rcx, qword [0x180010060]
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
xor r11d, r11d
mov eax, eax
mov qword [0x180010050], rax
lea r8d, [r11 + 1]
test r12d, r12d
je 0x18000586b
movzx eax, byte [0x180010002]
imul ecx, eax, 0x49c405af
movsx eax, byte [0x18001001a]
add ax, ax
mov dword [rsp + 0x58], ecx
mov word [rsp + 0x4c], ax
mov rax, qword [0x180010020]
shr rax, 1
mov word [0x18001005c], ax
jmp 0x1800058aa
movabs rax, 0xcfa85801e8993
mov rcx, r8
mov qword [0x180010020], rax
movzx eax, word [0x180010004]
sub rcx, rax
mov rax, qword [0x180010040]
imul rax, rcx
mov qword [0x180010040], rax
movzx eax, word [rsp + 0x50]
mov ecx, dword [rsp + 0x58]
sub ecx, eax
mov dword [rsp + 0x58], ecx
mov eax, dword [rbp + 0x110]
mov edx, r11d
mov r9d, dword [rsp + 0x5c]
add eax, 0x3af
mov dword [rbp - 0x2c], eax
mov ecx, dword [0x180010008]
movsx eax, word [0x180010058]
cmp ecx, eax
mov eax, dword [0x180010008]
mov ecx, r11d
setne dl
cmp eax, 0x10
setne cl
cmp edx, ecx
jne 0x1800059a1
movzx edx, word [0x180010068]
mov ecx, 0xffffff10
mov rax, qword [rbp - 0x68]
mov r14d, 4
movzx r10d, word [rsp + 0x54]
add dx, ax
add dx, r8w
movzx eax, r13w
xor ax, cx
movsx edx, dx
movsx ecx, ax
mov eax, r11d
imul edx, ecx
movsx rcx, word [0x180010058]
test r9b, r9b
sete al
add dx, ax
movabs rax, 0x18ffa32687d88
sub rcx, rax
mov word [0x180010034], dx
mov al, byte [rbp + 0x108]
and al, cl
mov byte [rbp + 0x108], al
movzx eax, byte [0x180010003]
movzx r8d, byte [0x180010003]
imul r8d, eax
movzx eax, r10b
movzx ecx, r8b
imul ecx, eax
mov byte [0x180010003], cl
mov eax, dword [rsp + 0x58]
shl al, 4
mov byte [rbp + 0x100], al
movzx eax, word [rsp + 0x4c]
imul ecx, eax, 0xfcead83d
mov dword [rsp + 0x58], ecx
movsx rax, word [rsp + 0x40]
mov qword [0x18007c3b8], rax
jmp 0x1800059d5
cmp byte [0x18001001e], r11b
movzx r10d, word [rsp + 0x54]
je 0x1800059d5
imul eax, r13d, 0xe6f3
movsxd rcx, eax
mov rax, qword [rsp + 0x70]
add rcx, rax
movzx eax, byte [0x1801355a0]
mov qword [rsp + 0x70], rcx
mov qword [0x180010070], rax
mov eax, dword [rbp + 0x110]
mov edx, r11d
add eax, 0x505
mov byte [0x180010006], 0x74
cmp word [0x18001005c], r11w
mov edi, r11d
mov dword [rbp + 0xc], eax
movzx eax, word [rbp + 0x118]
sete dl
sub dx, ax
mov eax, dword [rsp + 0x58]
movsx ecx, byte [0x18001001b]
sub dx, ax
add cx, word [0x180010010]
movzx eax, dx
movzx edx, cx
imul edx, eax
mov rax, qword [rsp + 0x70]
movzx ecx, word [section..data]
test rax, rax
mov al, byte [rbp + 0x100]
cmove di, dx
add rcx, 0x5cc1
mov qword [0x180010050], rcx
movzx edx, di
mov rcx, qword [0x180010028]
movzx eax, byte [0x180010002]
mov dword [rbp + 0x110], edi
mov qword [rbp - 0x80], rdx
cmp rax, rcx
jb 0x180005b1b
movzx eax, word [0x180010030]
test ax, ax
je 0x180005aa1
mov al, byte [0x1800de014]
mov qword [rbp - 0x60], rax
mov al, dil
movzx r15d, dx
and al, 0xfe
and r15d, 0xfe
xor al, 0xd
mov byte [0x18001001b], al
jmp 0x180005b78
movzx eax, word [rbp + 0x118]
mov rcx, r11
test ax, ax
mov rax, qword [0x180010060]
sete cl
cmp rax, rcx
je 0x180005b78
mov rax, qword [0x180010060]
mov ecx, 0x67a1
add ax, cx
movzx ecx, ax
movzx eax, word [rsp + 0x60]
imul eax, ecx
movsx ecx, word [rsp + 0x48]
sub ecx, r13d
mov word [rsp + 0x60], ax
movzx eax, word [rsp + 0x48]
sub cx, ax
movsx eax, r9b
mov word [rsp + 0x48], cx
not eax
add eax, dword [0x18001000c]
mov cl, byte [0x180010007]
not cl
xor cl, byte [rbp - 0x60]
test eax, eax
sete al
add cl, al
mov byte [0x18001001f], cl
jmp 0x180005b78
movzx ecx, byte [rbp + 0x108]
mov edx, r11d
mov rax, qword [rsp + 0x70]
cmp rax, rcx
movsx eax, r10b
setl dl
cmp eax, edx
jg 0x180005b78
movzx ecx, word [rsp + 0x40]
movsx eax, word [0x180010058]
inc cx
add cx, word [0x180010050]
not eax
or rax, qword [0x180010038]
cwde
movsx edx, cx
mov ecx, dword [rsp + 0x60]
imul edx, eax
movzx eax, cx
sub ax, r15w
xor cx, ax
mov dword [rsp + 0x60], ecx
not dx
mov word [rsp + 0x48], dx
mov rax, qword [rbp + 0x10]
mov ecx, 2
mov byte [rbx + rax], cl
mov byte [0x180010007], 0xae
movzx edx, word [rbp + 0x118]
movsx eax, byte [0x180010007]
inc edx
cmp eax, edx
jne 0x180005e03
mov edi, dword [rsp + 0x60]
mov ebx, 0xab
mov r12d, dword [rsp + 0x5c]
mov ecx, 1
cmp word [0x180010034], r11w
je 0x180005c02
call qword [sym.imp.KERNEL32.dll_GetThreadUILanguage]
mov word [0x180010018], ax
xor r11d, r11d
mov al, byte [0x18001001f]
test al, al
je 0x180005ca0
movsx ecx, word [0x180010030]
add cx, word [0x180010034]
movzx esi, word [0x18001001c]
mov word [0x180010030], cx
xor esi, 0x78
jmp 0x180005ca0
mov al, byte [0x180010007]
test al, al
jne 0x180005c11
test di, di
je 0x180005c1a
cmp qword [0x180010010], r11
jne 0x180005c3e
movzx eax, word [0x1800d441a]
lea r14d, [r13 - 0xef72e0f]
sub dword [0x18001000c], eax
movzx eax, word [0x180010038]
mov word [0x18001005c], ax
jmp 0x180005ca5
test r13d, r13d
je 0x180005ca5
movsx ecx, byte [0x18001001b]
mov eax, 0xffff8dec
and cx, ax
mov edx, r11d
mov word [0x180010034], cx
movsx rcx, word [rsp + 0x40]
mov rax, qword [0x180010028]
cmp rcx, rax
mov ecx, r11d
movsx eax, r12b
sete dl
cmp word [0x180010018], r11w
sete cl
add ecx, eax
not ecx
add ecx, edx
mov dword [rsp + 0x58], ecx
mov rcx, r11
movzx eax, word [rsp + 0x50]
cmp eax, r15d
sete cl
mov qword [0x180010028], rcx
mov ecx, 1
mov rax, qword [0x180010028]
add rax, rcx
mov qword [0x180010028], rax
sub rbx, rcx
jne 0x180005bb6
mov r12, qword [rbp - 0x28]
mov qword [rbp - 0x18], rsi
cmp word [rbp - 0x80], r11w
je 0x180005cf5
movzx eax, word [rbp + 0x118]
movabs rcx, 0x700799f1c16e8
mov byte [rbp - 0x60], al
mov eax, r14d
imul rax, rcx
mov qword [0x180010038], rax
jmp 0x180005ddd
cmp qword [0x180010048], r11
jne 0x180005d06
mov edx, r11d
test di, di
je 0x180005d08
mov edx, ecx
movzx eax, word [rbp + 0x118]
mov ecx, r11d
cmp word [0x18001001c], ax
sete cl
cmp edx, ecx
jbe 0x180005d52
mov rax, qword [0x180010060]
add ax, 0x1c
mov word [0x180010034], ax
movzx eax, word [0x1800cc2e8]
mov word [0x180010058], ax
movzx eax, byte [0x18022d5a0]
mov dword [0x180010008], eax
jmp 0x180005ddd
movzx eax, word [rbp + 0x118]
test ax, ax
je 0x180005d81
movzx eax, word [rsp + 0x4c]
imul eax, eax, 0x5143682d
cdqe
mov qword [0x180010010], rax
movzx eax, word [rbp + 0x118]
mov eax, dword [0x180010008]
jmp 0x180005ddd
mov al, byte [rbp + 0x100]
test al, al
jne 0x180005d9a
movzx eax, word [rsp + 0x4c]
test ax, ax
jne 0x180005d9a
mov ecx, r11d
jmp 0x180005d9f
mov ecx, 1
movzx eax, word [rsp + 0x40]
test ecx, ecx
jne 0x180005ddd
xor r15b, byte [0x180010048]
movzx ecx, r15b
movzx eax, r12b
imul ecx, eax
add cl, cl
not cl
or cl, byte [rbp - 0x48]
mov byte [0x18001001f], cl
movzx eax, word [rsp + 0x4c]
movzx ecx, byte [0x180010006]
xor rcx, rax
mov qword [0x180010028], rcx
mov edi, dword [rbp + 0x110]
mov ecx, 1
cmp word [0x180010034], cx
jne 0x180005dff
movsx ecx, byte [rsp + 0x54]
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
xor r11d, r11d
mov rbx, qword [rbp - 0x10]
mov r9d, dword [rsp + 0x60]
mov edx, r11d
movzx ecx, word [0x18001005c]
mov byte [0x180010007], 0xae
movzx eax, r9w
imul ecx, eax
cmp qword [0x180010010], r11
movzx eax, byte [0x180010002]
sete dl
sub edx, ecx
add edx, eax
mov rax, qword [0x180010028]
mov r14d, dword [rsp + 0x58]
mov ecx, dword [0x18001000c]
sub r14d, 0x464
sub ecx, eax
mov al, byte [0x18001001f]
or ecx, edx
mov edx, r11d
not ecx
and r14d, ecx
mov ecx, r11d
test al, al
mov dword [rsp + 0x64], r14d
mov eax, r11d
sete cl
cmp qword [rbp - 0x78], 0
sete al
imul r8d, dword [0x180010010], 0xffffff10
sub ecx, eax
movzx eax, byte [rsp + 0x68]
not ecx
xor r8d, ecx
xor r8d, eax
mov al, byte [rbp + 0x100]
movzx eax, word [section..data]
mov r15d, r8d
mov rcx, qword [0x180010028]
movzx eax, r9w
cmp rax, rcx
mov qword [rbp - 0x58], r15
mov eax, r11d
mov ecx, 0x4f
sete dl
cmp r9w, cx
sete al
cmp edx, eax
jne 0x180005ee3
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
mov r9d, dword [rsp + 0x60]
xor r11d, r11d
movzx eax, ax
mov dword [0x18001000c], eax
jmp 0x180005f5f
mov al, byte [rbp + 0x100]
test al, al
je 0x180005f24
movsx rax, word [rsp + 0x48]
movsx ecx, byte [rsp + 0x5c]
mov dl, byte [rbp - 0x70]
mov qword [0x180135e20], rax
mov eax, 0x1b02
add cx, ax
movzx eax, word [0x180010068]
or cx, ax
add dl, 0x61
mov word [0x180010068], cx
mov dword [rsp + 0x5c], edx
jmp 0x180005f63
movzx eax, word [section..data]
mov ecx, r11d
mov word [0x180010058], ax
movsx rax, byte [0x18001001a]
cmp rax, qword [0x180010048]
cmove ecx, r8d
mov eax, ecx
mov qword [0x180010060], rax
mov rax, qword [0x180010010]
mov qword [0x180010060], rax
mov edx, dword [rsp + 0x5c]
mov eax, dword [rbp + 8]
mov ecx, dword [rbp + 8]
sub eax, 0x388
imul ecx, eax
mov eax, dword [rbp + 0x28]
imul eax, ecx
cmp eax, 0x96
je 0x180007098
movzx eax, byte [0x180010003]
cmp ax, r9w
jne 0x180006046
movsx eax, byte [0x180010032]
mov rdi, qword [rbp - 0x60]
cmp r15d, eax
jbe 0x180005fda
mov rax, qword [rbp - 0x68]
add r12d, r12d
sub r12d, dword [0x18001000c]
imul rcx, rax, 0x8708
mov eax, r11d
mov qword [rbp - 0x28], r12
test rcx, rcx
sete al
sub r9w, ax
not r9w
mov word [0x18001005c], r9w
jmp 0x180006084
cmp word [0x180010058], r11w
mov r9d, 1
movsx ecx, dl
mov r8d, r11d
movsx edx, byte [rsp + 0x54]
movsx eax, dil
cmovne eax, r15d
imul esi, dword [0x1801665c4]
add cx, r9w
mov qword [0x180010050], rax
mov rax, qword [rsp + 0x70]
movsx ebx, byte [0x180010032]
test rax, rax
movzx eax, byte [0x180010006]
cmove r8w, cx
sub dx, ax
sub dx, word [0x180010048]
add dx, r8w
add bx, dx
add bx, word [0x180010040]
add bx, r9w
jmp 0x180006088
cmp qword [0x180010040], r11
jne 0x180006080
movsx rax, byte [rbp - 0x60]
movabs rcx, 0x89a0fdb19c7ea
imul rax, rcx
mov qword [0x180010010], rax
mov al, byte [0x18001001b]
mov cl, byte [0x18001001b]
add cl, dil
add cl, al
mov byte [0x18001001b], cl
mov rdi, qword [rbp - 0x60]
mov rbx, qword [rbp - 0x80]
movzx r9d, byte [0x18001001f]
xor edx, edx
mov dword [rsp + 0x20], r11d
lea ecx, [rdx + 0x5e]
lea r8d, [rdx + 0x18]
call fcn.1800014c0
xor r11d, r11d
mov word [0x18001001c], ax
cmp ax, 0x22
mov edx, r11d
mov ecx, r11d
setne dl
test ax, ax
setne cl
cmp ecx, edx
ja 0x180006181
mov rcx, qword [0x180010010]
mov qword [0x180135758], rcx
mov ecx, 0x6f04
xor ax, cx
mov word [rsp + 0x40], ax
movzx r10d, word [rsp + 0x44]
mov r9, qword [rbp - 0x78]
mov eax, dword [0x1800cc2e8]
add dil, r10b
mov r8, qword [rbp - 0x48]
mov r14b, dil
mov dword [rbp + 0x108], eax
movzx esi, r8w
mov qword [0x180010038], rax
mov ecx, 0x33cd
mov eax, dword [rbp + 0x108]
sub si, cx
add eax, 0x98e7
mov qword [rbp - 0x60], rdi
mov word [rbp + 0x110], r14w
mov edi, 1
mov dword [rsp + 0x60], esi
mov dword [rbp - 0x50], eax
test r15d, r15d
je 0x1800061f0
movzx edx, word [section..data]
movzx eax, word [rsp + 0x40]
movsx ecx, word [rsp + 0x40]
xor ax, dx
movsx edx, word [0x180010034]
cwde
imul eax, ecx
mov ecx, edx
mov word [rsp + 0x40], ax
movsx eax, word [0x180010018]
imul ecx, eax
and cx, dx
mov word [0x180010034], cx
jmp 0x180006228
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x1800060e3
movzx eax, word [rsp + 0x4c]
test r12d, r12d
movzx r10d, word [rsp + 0x44]
mov r9, qword [rbp - 0x78]
sete dl
add dl, r9b
neg ax
sbb cl, cl
not cl
and cl, 0xb9
movzx eax, cl
movzx ecx, dl
imul ecx, eax
mov al, sil
not al
add sil, 0x4c
add cl, al
mov al, r10b
add cl, byte [0x180010048]
add al, byte [0x180010004]
add cl, r13b
or r10b, al
mov byte [rbp + 0x100], cl
mov word [rsp + 0x44], r10w
mov byte [0x180010003], sil
jmp 0x1800060ed
mov eax, 0x5c
mov word [rsp + 0x40], ax
movzx eax, byte [rbp + 0x100]
add ax, di
movzx ecx, ax
movzx eax, word [0x18001001c]
imul eax, ecx
mov word [0x18001001c], ax
movzx eax, word [0x18001005c]
add eax, 0x302cca71
mov dword [rsp + 0x58], eax
mov eax, dword [rbp + 0x108]
mov edx, r11d
mov r11d, dword [rsp + 0x68]
add eax, 0x367
cmp byte [0x18001001e], r11b
mov dword [rbp - 0x50], eax
setb dl
xor r13d, r13d
cmp byte [0x18001001e], 0x2a
mov eax, r13d
setb al
cmp edx, eax
jae 0x180006292
movzx esi, word [0x180010050]
mov ecx, 0xbf6
mov al, byte [0x180010007]
sub si, cx
sub r10b, al
mov dword [rsp + 0x60], esi
mov eax, dword [rsp + 0x58]
mov ecx, 0xa1be4894
sub ecx, eax
mov word [rsp + 0x44], r10w
add r15d, ecx
mov qword [rbp - 0x58], r15
jmp 0x180006299
mov rax, qword [0x180010070]
mov eax, dword [rbp + 0x108]
movzx ecx, word [0x180010004]
add eax, 0x81b2
mov dword [rsp + 0x78], eax
not ecx
mov eax, 4
mov word [0x180010068], ax
movzx eax, word [0x18001001c]
and ecx, eax
movzx eax, word [rsp + 0x48]
not al
add al, 0x44
add al, cl
mov ecx, edi
mov byte [rbp + 0x108], al
mov eax, 0xf82
add r8w, ax
mov word [rsp + 0x48], r8w
movzx eax, word [0x180010030]
sub cx, ax
movzx eax, bx
movzx edi, cx
imul edi, eax
movzx eax, di
mov dword [rbp - 0x40], edi
mov qword [rbp - 0x80], rax
movzx r15d, ax
mov word [rsp + 0x58], ax
movzx eax, word [0x180010068]
mov ecx, eax
test eax, eax
je 0x1800063f8
sub ecx, 1
je 0x1800063d4
sub ecx, 1
je 0x1800063a3
sub ecx, 1
je 0x18000635d
cmp ecx, 1
jne 0x180006420
movsx eax, word [0x180010030]
sub eax, 0x4b8c2623
mov qword [0x180010060], rax
movzx eax, si
mov qword [0x180010048], rax
jmp 0x180006420
movzx eax, word [rbp + 0x118]
movsx ecx, byte [rsp + 0x5c]
movzx r8d, cx
imul r8d, eax
movzx eax, word [rbp + 0x118]
add r8w, ax
mov word [rbp + 0x118], r8w
movsx rax, word [rsp + 0x40]
mov r11d, dword [0x180010008]
sar r11d, 2
mov dword [rsp + 0x68], r11d
mov qword [0x180010040], rax
jmp 0x180006420
mov eax, dword [0x1800cc2e8]
movabs rcx, 0xffffffff1b1a7d9d
mov r9, qword [0x180010038]
mov dword [0x180010008], eax
add r9, rcx
mov al, byte [0x180010007]
movzx eax, word [rsp + 0x40]
mov qword [rbp - 0x78], r9
jmp 0x180006420
movsx eax, byte [0x180010007]
xor word [0x180010058], ax
movzx eax, word [rsp + 0x50]
movzx ecx, al
imul eax, ecx, 0xb3
mov byte [0x180010002], al
jmp 0x180006420
mov al, byte [0x180010003]
mov cl, byte [0x18001001e]
add cl, cl
add al, cl
mov byte [0x18001001e], al
mov al, byte [0x18001001b]
add al, byte [0x180010010]
mov byte [0x18001001b], al
mov al, byte [rsp + 0x64]
movsx ecx, word [rsp + 0x54]
add al, 0x33
mov byte [0x180010006], 0x52
mov byte [0x180010007], al
movzx eax, word [section..data]
add word [0x180010034], ax
movsx eax, byte [0x180010007]
movzx r13d, word [rsp + 0x4c]
movzx edx, byte [0x180010006]
add r13d, eax
movzx r8d, word [0x18001001c]
movsx esi, cl
mov dword [rbp - 0x38], esi
lea eax, [rsi + rdx]
cmp r8d, eax
jne 0x18000665f
mov rbx, qword [rbp - 0x70]
mov r15, qword [rbp - 0x58]
add rbx, 0xfcc5
mov r14d, dword [rsp + 0x64]
mov rdi, qword [rbp - 0x78]
mov r12, qword [rbp - 0x80]
movsx ecx, word [0x18001000c]
movzx eax, r8w
and eax, 0xb9
mov qword [0x180010050], rax
mov eax, 0x877
cwde
imul ecx, eax
add word [0x180010058], cx
test dl, dl
je 0x1800064e8
mov rax, qword [0x180010028]
movsx ecx, al
movsx eax, byte [rsp + 0x5c]
imul eax, ecx
movzx ecx, di
mov byte [rsp + 0x5c], al
mov eax, 0x9a9b
imul ecx, eax
add word [0x180010018], cx
jmp 0x180006519
movzx ecx, word [0x180010068]
add r11b, r11b
shr rcx, 3
movzx eax, r12w
shl ax, 6
mov word [0x180010018], ax
movzx eax, word [rsp + 0x48]
add r11b, al
mov qword [0x180010048], rcx
mov dword [rsp + 0x68], r11d
cmp qword [0x180010010], rbx
jne 0x180006637
xor edx, edx
xor ecx, ecx
lea r8d, [rdx + 0x4f]
call fcn.180002400
xor ecx, ecx
mov word [0x180010058], ax
test ax, ax
je 0x1800065ac
mov r15d, dword [rsp + 0x64]
lea esi, [rcx + 1]
mov eax, 0xfb2c6924
mov edx, 0x8c8
mov qword [rbp - 0x68], rax
movzx eax, byte [0x180010006]
mov qword [0x180010050], rax
movzx eax, word [0x18001005c]
add eax, r15d
imul r15d, eax
movzx eax, word [section..data]
imul eax, eax, 0x76
mov word [section..data], ax
movzx eax, word [rsp + 0x50]
shl rax, 3
mov qword [0x180010048], rax
sub rdx, rsi
jne 0x180006565
mov esi, dword [rbp - 0x38]
mov dword [rsp + 0x64], r15d
mov r14d, dword [rsp + 0x64]
mov r15, qword [rbp - 0x58]
jmp 0x1800065e6
cmp qword [0x180010048], rcx
jne 0x1800065e6
mov rax, qword [rsp + 0x70]
movzx ecx, byte [0x18001001f]
mov dword [0x1800f3f8c], eax
movsx eax, byte [0x18001001a]
add r15d, eax
mov al, byte [0x18001001f]
and ecx, r15d
mov qword [rbp - 0x58], r15
add al, cl
mov byte [0x18001001f], al
mov r11d, dword [rsp + 0x68]
lea eax, [r14 + 0x33]
mov byte [0x180010006], 0x52
mov byte [0x180010007], al
movzx eax, word [section..data]
add word [0x180010034], ax
movsx eax, byte [0x180010007]
movzx r13d, word [rsp + 0x4c]
movzx ecx, word [0x18001001c]
add r13d, eax
movzx edx, byte [0x180010006]
movzx r8d, cx
lea eax, [rsi + rdx]
cmp ecx, eax
je 0x180006493
mov edi, dword [rbp - 0x40]
movzx r14d, word [rbp + 0x110]
movzx r15d, word [rsp + 0x58]
mov r12, qword [rbp - 0x28]
mov r9, qword [rbp - 0x78]
movzx r10d, word [rsp + 0x44]
movzx ecx, word [rsp + 0x54]
mov qword [rbp - 0x38], r13
movzx eax, word [section..data]
movzx ebx, byte [rsp + 0x68]
test ax, ax
jne 0x18000667c
movzx eax, word [0x180010030]
test ax, ax
je 0x1800066b5
test cl, cl
je 0x1800066b5
movzx eax, word [0x180010018]
mov ecx, 0x2527
sub ax, cx
mov ecx, 0x581b
mov word [0x18001001c], ax
movzx eax, word [rsp + 0x40]
add ax, cx
mov qword [0x180010048], 0x48f704dc
mov word [rsp + 0x40], ax
jmp 0x180006729
test r12d, r12d
jne 0x1800066f9
mov rax, qword [0x180010028]
test rax, rax
jne 0x1800066f9
sub r10b, byte [0x180010018]
mov r11, qword [rbp - 0x60]
mov al, r11b
mov word [rsp + 0x44], r10w
xor al, byte [0x18001005c]
and al, byte [0x180010004]
mov byte [0x18001001a], al
lea eax, [r12 + 1]
sub dword [0x18001000c], eax
jmp 0x18000672d
movzx eax, word [0x180010068]
mov rdx, qword [rsp + 0x70]
imul rdx, rax
movzx eax, word [0x180010068]
sub ax, dx
mov word [0x180010068], ax
mov al, byte [rbp + 0x108]
xor al, r9b
mov byte [rbp + 0x108], al
mov r11, qword [rbp - 0x60]
mov eax, dword [rsp + 0x78]
mov edx, dword [rsp + 0x78]
sub eax, 0x1b7b
mov ecx, dword [rbp - 0x50]
or edx, eax
mov r12, qword [rbp - 0x58]
or ecx, edx
mov eax, 0xed77
sub eax, ecx
mov dword [rbp - 0x50], eax
mov rax, qword [0x180010020]
cmp rax, r9
jb 0x180006793
movzx r9d, byte [0x18001001e]
movzx ecx, word [0x180010068]
mov qword [rsp + 0x28], 0x62
mov qword [rsp + 0x20], r9
mov r9d, 0x78
mov r8d, r12d
movsx rdx, r11b
call fcn.1800020ac
mov word [0x180010018], ax
jmp 0x1800067b1
movzx eax, byte [0x18001001f]
sub eax, 0x5d11fcf5
mov qword [0x180010028], rax
movsx rax, r10b
mov qword [0x180010040], rax
mov eax, dword [0x1800cc2e8]
xor r9d, r9d
mov dword [rbp + 0x110], eax
xor edx, edx
movzx eax, word [rbp + 0x118]
movzx ecx, word [0x18001001c]
imul ecx, eax
movzx eax, word [rbp + 0x118]
mov byte [rsp + 0x30], 0x9a
sub ax, cx
mov word [rbp + 0x118], ax
mov rax, qword [0x180010060]
sub eax, 0x3a4f
mov qword [rbp - 0x18], rax
mov eax, dword [rbp + 0x110]
add eax, 0x33b
mov dword [rbp - 0x40], eax
mov eax, dword [rbp + 0x110]
add eax, 0x615b
mov dword [rbp - 0x40], eax
movsx eax, byte [0x18001000c]
imul ecx, eax, 0x5f
mov al, byte [0x180010050]
add al, al
mov byte [0x18001001b], cl
mov byte [0x180010032], al
movsx ecx, word [0x180010030]
add ecx, 0x3c252a52
mov dword [rsp + 0x58], ecx
mov ecx, 0x3e96
mov eax, dword [rbp + 0x110]
add eax, ecx
xor ecx, ecx
mov byte [rsp + 0x28], cl
mov cl, 0x24
mov dword [rbp + 0x110], eax
mov rax, qword [0x180010028]
mov r8b, byte [0x18001005c]
mov byte [rsp + 0x20], al
call fcn.18000132c
movsx r11d, al
xor r10d, r10d
cmp r11d, 0x31
mov qword [rbp - 0x48], r11
mov eax, r10d
setae al
lea edx, [r10 + 1]
cmp eax, edx
jb 0x1800068d8
vmovups ymm0, ymmword [str.CreateAuthBuffer]
movzx eax, word [0x18000f230]
lea rcx, [rbp + 0x88]
vmovups ymmword [rbp + 0x88], ymm0
mov word [rbp + 0xa8], ax
vzeroupper
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r11, qword [rbp - 0x48]
xor r10d, r10d
movsxd rcx, eax
mov qword [0x180010028], rcx
lea edx, [r10 + 1]
jmp 0x1800068fc
movzx ecx, word [rsp + 0x50]
mov eax, 0x77
mov qword [rbp - 0x28], rax
movzx eax, word [0x180010018]
sub ecx, eax
movzx eax, word [rsp + 0x50]
add ax, cx
mov word [rsp + 0x50], ax
mov r8, qword [rbp - 0x60]
movzx r9d, byte [rsp + 0x68]
test r8b, r8b
je 0x18000694a
cmp r9d, esi
jl 0x18000694a
mov rax, qword [rbp - 0x78]
sar rax, 7
mov word [0x18001005c], ax
movzx eax, word [rsp + 0x48]
test ax, ax
movzx eax, word [rbp - 0x80]
jne 0x180006932
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x78], rax
mov ecx, 0x95
movzx eax, word [rsp + 0x50]
add ax, cx
mov word [rsp + 0x4c], ax
jmp 0x1800069c7
movzx eax, word [rbp + 0x118]
mov r8d, r10d
not eax
cdqe
add rax, qword [0x180010040]
mov rax, qword [0x180010020]
movsx rcx, byte [0x180010007]
sete r8b
add r8w, word [0x18001000c]
sub r8w, ax
add r8w, dx
movzx edx, word [0x180010050]
not dx
movzx eax, r8w
sub dx, word [0x18001000c]
mov r8, qword [rbp - 0x60]
add cx, dx
movzx edx, cx
imul edx, eax
mov rax, qword [rbp - 0x68]
neg ax
mov word [0x180010058], ax
mov al, byte [0x180010003]
add al, 8
mov word [0x18001001c], dx
mov byte [0x180010002], al
mov edx, dword [rbp + 0xc]
mov eax, dword [rbp + 0xc]
xor edx, eax
mov ecx, dword [rbp - 0x2c]
mov eax, dword [rbp - 0x2c]
xor ecx, eax
imul ecx, edx
mov eax, 0xffff866c
mov edx, r10d
mov r10, qword [rbp - 0x78]
sub eax, ecx
mov ecx, dword [rbp + 0x110]
add ecx, eax
mov eax, dword [rbp + 0x110]
add eax, ecx
mov dword [rbp - 0x38], eax
movsx rax, byte [0x18001001b]
cmp r10, rax
sete dl
xor eax, eax
cmp r10, 0x63
sete al
cmp edx, eax
jae 0x180006b2a
mov eax, 3
mov ecx, r9d
mov word [rbp + 0x118], ax
not ecx
movzx eax, word [rsp + 0x40]
sub al, 0x25
mov byte [rsp + 0x44], al
movzx eax, byte [0x180010006]
sub ecx, eax
mov rax, qword [rsp + 0x70]
sub ecx, esi
add ecx, r9d
add eax, ecx
movzx ecx, word [rbp + 0x118]
mov qword [rbp - 0x28], rax
test ecx, ecx
je 0x180006af5
sub ecx, 1
je 0x180006ada
sub ecx, 1
je 0x180006ab9
cmp ecx, 1
jne 0x180006b2a
movsx edx, byte [0x18001001a]
movsx eax, r8b
sub edx, eax
mov eax, 0xffff7743
sub eax, r11d
xor r11d, r11d
cmp edx, eax
mov ecx, r11d
lea rax, [r10 + 0x799a]
sete cl
mov dword [0x180010008], ecx
mov qword [0x180010060], rax
mov al, byte [rbp + 0x108]
add al, byte [0x180135970]
mov byte [rbp + 0x108], al
jmp 0x180006b2d
mov al, byte [rsp + 0x5c]
sub al, 0x5c
mov byte [0x180010007], al
movsx ecx, byte [0x180010032]
not ecx
imul ecx, r13d
mov dword [0x18001000c], ecx
jmp 0x180006b2a
mov al, byte [rsp + 0x60]
mov cl, r10b
sub cl, byte [rbp - 0x80]
shl r10, cl
sub al, 0x2f
mov qword [rbp - 0x78], r10
mov byte [rbp + 0x108], al
jmp 0x180006b2a
movsx eax, word [0x180010030]
movzx edx, word [0x180010004]
imul edx, eax
movzx eax, word [0x180010030]
add ax, dx
mov word [0x180010030], ax
mov eax, dword [0x180010008]
imul eax, eax, 0xd7
cdqe
mov qword [rsp + 0x70], rax
xor r11d, r11d
mov rax, qword [rbp + 0x10]
mov edx, 2
mov rcx, qword [rbp - 0x10]
cmp byte [rcx + rax], dl
je 0x18000710d
movzx r8d, word [rsp + 0x48]
mov r9b, 0x1d
mov byte [rsp + 0x30], r10b
xor edx, edx
mov byte [rsp + 0x28], r11b
xor ecx, ecx
mov byte [rsp + 0x20], 0xdc
call fcn.18000132c
mov r11d, dword [rsp + 0x5c]
xor r8d, r8d
movsx ecx, al
mov edx, r8d
mov dword [0x180010008], ecx
mov ecx, r8d
mov eax, dword [0x180010008]
lea r9d, [r8 + 4]
cmp eax, r9d
mov eax, dword [0x180010008]
mov r9, qword [rbp - 0x28]
setge dl
test eax, eax
setns cl
cmp ecx, edx
jae 0x180006be3
cmp byte [0x18001001e], r8b
mov edi, dword [rsp + 0x64]
je 0x180006bca
mov al, byte [0x180010040]
movsx ecx, byte [0x180010034]
add al, 0x64
add byte [rsp + 0x44], al
movsx eax, r11b
imul ecx, eax
and r11b, cl
jmp 0x180006c08
movzx eax, word [rbp - 0x80]
add edi, eax
movzx eax, word [0x180010068]
shl eax, 8
mov qword [rbp - 0x18], rax
dec r9d
jmp 0x180006c08
mov rcx, qword [0x180010028]
movzx eax, byte [rsp + 0x68]
add rcx, rax
xor dil, 0x38
mov qword [0x180010028], rcx
mov byte [0x180010003], dil
mov edi, dword [rsp + 0x64]
movsx ecx, word [0x180010030]
mov al, byte [0x180010048]
sub ecx, 0xbf82
mov r10, qword [rbp - 0x70]
xor r9d, ecx
mov byte [0x1800d5c66], al
movzx eax, word [rsp + 0x4c]
movzx r8d, byte [rbp + 0x100]
imul r8d, eax
movzx eax, word [rsp + 0x4c]
mov qword [0x180010010], 0xf6
or r8w, ax
lea eax, [rsi + 0xf6]
movsxd rcx, eax
cmp qword [0x180010010], rcx
mov word [rsp + 0x4c], r8w
jne 0x180006cce
movsx rax, word [0x180010058]
lea rcx, [r10 + 0x81c5]
cmp rax, rcx
jne 0x180006cce
movzx eax, word [rsp + 0x50]
not r9w
sub r9w, ax
xor edx, edx
mov ecx, edx
movzx eax, r10w
not ax
not r9w
add r9w, ax
mov eax, dword [rsp + 0x58]
add r9w, word [0x180010018]
test eax, eax
movsx eax, r11b
sete cl
add cx, ax
movzx eax, r9w
not cx
movzx ecx, cx
imul ecx, eax
lea eax, [rsi - 0x43]
mov word [0x18001005c], cx
mov byte [0x180010007], al
movzx r8d, word [0x180010068]
mov rdx, qword [0x180010050]
and r8d, 0x6cc78732
mov rax, qword [rbp - 0x78]
mov rcx, rdx
mov r9, qword [0x180010038]
add rax, 0xffffffffffffca43
mov qword [0x180010040], rax
movzx eax, word [0x18001001c]
sub r9, rax
mov qword [0x180010010], 0xf6
movzx eax, word [0x18001005c]
and r9, rax
movzx eax, byte [0x180010006]
sub rcx, rax
movsx eax, r11b
xor rcx, r8
sub r9, rcx
movsx ecx, dl
imul ecx, eax
movsx edx, r11b
mov qword [rbp - 0x78], r9
movsx eax, cl
movzx ecx, word [rsp + 0x4c]
imul edx, eax
movzx eax, cx
shl ax, 2
add cx, ax
mov eax, 0xcb
add cx, cx
mov qword [rbp - 0x28], rax
mov eax, dword [0x1800cc2e8]
mov word [0x18001005c], cx
mov dword [rsp + 0x78], eax
mov rcx, qword [rbp - 0x68]
movsx rax, dl
mov dword [rsp + 0x5c], edx
cmp rcx, rax
je 0x180006d89
mov al, byte [0x18001001b]
mov r8d, 0x1b
mov r9d, 0xe3
mov edx, r10d
lea ecx, [r8 + 0x2f]
call fcn.1800011ac
mov byte [0x180010003], al
mov rax, qword [rbp - 0x80]
cmp ax, word [0x180010018]
jb 0x180006dba
mov al, byte [0x180010032]
movsx ecx, word [rsp + 0x40]
movzx eax, word [0x180010018]
cmp ecx, eax
je 0x180006e04
mov rax, qword [0x180010060]
imul eax, edi
imul edi, eax
movzx eax, byte [0x180010003]
movzx edx, byte [0x180010006]
imul edx, eax
mov eax, dword [0x180010008]
imul ecx, eax, 0x48c0
xor eax, eax
cmp edx, ecx
sete al
mov word [0x180010058], ax
jmp 0x180006e36
test edi, edi
jne 0x180006e14
mov al, byte [0x180010007]
mov al, byte [0x180010003]
mov eax, dword [0x180010038]
add eax, 0xffffd1c4
mov dword [0x18001000c], eax
movzx eax, word [rbp + 0x118]
inc ax
mov word [rbp + 0x118], ax
mov eax, dword [rsp + 0x78]
add eax, 0x578
mov dword [rsp + 0x64], edi
mov dword [rbp - 0x40], eax
movsx ecx, byte [0x180010032]
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov eax, eax
mov qword [0x180010028], rax
mov rax, qword [0x180010028]
test rax, rax
je 0x180006e98
movzx ecx, byte [0x180010003]
mov rax, qword [rbp - 0x68]
add rax, rcx
mov qword [rbp - 0x68], rax
movzx eax, byte [rbp + 0x100]
movsx ecx, word [0x180010034]
sub ecx, eax
mov al, byte [rbp + 0x100]
add al, cl
mov byte [rbp + 0x100], al
mov ecx, dword [rsp + 0x78]
mov eax, dword [rbp - 0x50]
add ecx, eax
mov dword [rbp + 0x110], ecx
movzx eax, word [rsp + 0x4c]
test ax, ax
jne 0x180006eb9
movzx r14d, word [0x180010068]
mov byte [0x18001001f], r14b
lea rcx, str.user32
mov eax, 1
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x78]
add eax, 0x404
mov dword [rbp - 0x50], eax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov r14d, dword [rsp + 0x64]
xor r11d, r11d
mov ecx, eax
mov edx, r11d
cmp rcx, 0x48
mov qword [0x180010010], rcx
mov eax, r11d
setne dl
test rcx, rcx
setne al
cmp eax, edx
jne 0x180006f29
lea eax, [r11 + 8]
mov dword [rbp - 0x48], eax
movzx eax, r15w
sub eax, ebx
not eax
add eax, 0xb7cc
cdqe
mov qword [0x180010010], rax
jmp 0x180006f93
movzx eax, word [0x180010068]
test r12d, r12d
je 0x180006f74
mov rdx, qword [rbp - 0x78]
movsx eax, dl
imul ecx, eax, 0x17
imul eax, esi, 0xf43f
movsx rdx, cl
movsxd r10, eax
mov rax, qword [0x180010050]
mov qword [rbp - 0x60], rcx
movabs rcx, 0x725eab232cce4
add rax, rcx
mov qword [rbp - 0x78], r10
add rax, rdx
mov qword [0x180010050], rax
jmp 0x180006f97
lea eax, [rbx - 0x20]
mov cl, r14b
add cl, cl
mov byte [rsp + 0x54], al
movzx eax, word [section..data]
sub cl, byte [rsp + 0x5c]
sub cl, al
mov byte [0x18001001e], cl
mov r10, qword [rbp - 0x78]
mov ecx, dword [rbp + 0x110]
mov eax, dword [rbp - 0x40]
add ecx, eax
mov eax, dword [rbp - 0x38]
sub eax, 0x2f1
mov word [rbp - 0x80], r15w
mov byte [rsp + 0x68], bl
cmp eax, ecx
je 0x180007122
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov ecx, eax
mov edi, 0xc50b4597
mov qword [0x180010060], rcx
jmp 0x180007011
movzx ecx, word [rsp + 0x50]
movzx eax, word [rsp + 0x50]
sub cx, ax
movzx eax, word [rbp + 0x118]
add cx, ax
mov word [rsp + 0x50], cx
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov ecx, eax
movzx eax, word [rbp + 0x118]
sub eax, 0x15bfa680
mov qword [0x180010048], rcx
cmp qword [0x180010050], rax
jne 0x180007044
mov rcx, qword [0x180010038]
mov dword [0x180010008], edi
call qword [sym.imp.USER32.dll_GetWindowTextLengthA]
mov byte [0x18001001e], al
movzx eax, byte [rbp + 0x100]
mov ecx, dword [0x180010008]
add eax, ecx
cdqe
cmp qword [0x180010040], rax
je 0x180006fd1
mov rcx, qword [0x180010020]
mov r10d, 1
mov eax, dword [0x18001000c]
and ecx, eax
mov r12, qword [rbp - 0x28]
add ecx, eax
mov rax, qword [0x180010020]
mov dword [0x18001000c], ecx
movzx ecx, al
imul eax, ecx, 0x11
mov word [rbp - 0x80], r15w
xor r11d, r11d
mov r15, qword [rbp - 0x58]
mov byte [rsp + 0x68], bl
mov rbx, qword [rbp - 0x10]
mov byte [0x18001001e], al
mov dword [section..upx1], r10d
mov dword [rsp + 0x64], r14d
mov r10, qword [rbp - 0x78]
inc rbx
mov qword [rbp - 0x10], rbx
cmp rbx, 0x80
jl 0x1800050cd
mov rdi, qword [rbp - 0x18]
movzx esi, word [rsp + 0x44]
mov qword [rbp - 0x38], r13
or rbx, 0xffffffffffffffff
lea r8, [rbp]
mov rcx, rbx
lea rdx, [rbp + 0x10]
mov r9d, 0x4000
call fcn.18000e2c0
mov rax, qword [0x180010028]
xor r10d, r10d
test rax, rax
je 0x180007133
lea eax, [rdi + 0x6d]
mov byte [0x18001001e], al
movsx eax, byte [0x18001001a]
mov word [0x180010030], ax
mov eax, dword [rsp + 0x60]
add word [0x18001005c], ax
jmp 0x1800071ad
mov r15, qword [rbp - 0x58]
mov rbx, rcx
mov r12, qword [rbp - 0x28]
mov r14d, dword [rsp + 0x64]
jmp 0x18000709c
mov r15, qword [rbp - 0x58]
mov r12, qword [rbp - 0x28]
mov rbx, qword [rbp - 0x10]
jmp 0x18000709c
mov rax, qword [rbp - 0x68]
add al, 0x25
mov byte [rbp + 0x100], al
movzx eax, word [rsp + 0x50]
mov al, byte [0x18001001b]
movsx eax, byte [0x180010032]
mov r9d, dword [0x180010008]
movsx ecx, byte [0x18001001b]
sub r9d, eax
movzx eax, byte [rbp + 0x100]
movsx r8d, byte [0x180010032]
imul eax, ecx
mov ecx, r10d
test r9d, r9d
mov byte [0x180010006], r10b
sete cl
sub cx, ax
movzx eax, word [0x180010030]
not ax
sub cx, r8w
add cx, ax
movsx eax, sil
add cx, ax
mov eax, dword [rsp + 0x60]
not cx
mov word [0x180010030], cx
mov r12, qword [0x180010020]
lea r9, [rbp]
mov r14d, 1
mov qword [rbp], 0x2625a00
add ax, r14w
mov qword [rbp + 0x18], r10
mov dword [rsp + 0x60], eax
lea rdx, [rbp + 0x18]
xor r12d, 0x3a4f73a6
xor r8d, r8d
lea eax, [r14 + 3]
mov qword [rbp + 0x110], r12
mov dword [rsp + 0x28], eax
mov rcx, rbx
mov dword [rsp + 0x20], 0x3000
call fcn.18000e1c0
mov r13, qword [rbp - 0x70]
movabs rbx, 0xa7a75a6e1f784
mov r12, qword [rbp - 0x78]
add rbx, r13
mov r10d, dword [rsp + 0x60]
xor r11d, r11d
mov al, byte [0x1800cc2e8]
mov byte [0x180010003], 0xe1
mov byte [0x180010032], al
movzx eax, byte [0x180010006]
shl eax, 2
mov qword [0x180010040], rax
movzx eax, byte [0x180010003]
movzx edx, word [rbp + 0x118]
add edx, eax
movsx eax, byte [0x18001001b]
cmp eax, edx
jne 0x18000746e
movsx eax, byte [0x18001001b]
test sil, sil
mov edx, r11d
sete dl
cmp eax, edx
jg 0x180007366
mov al, byte [0x18001001f]
mov sil, byte [0x180010003]
movzx eax, word [rbp + 0x118]
not sil
xor sil, 0x97
sub sil, al
movsx eax, byte [rsp + 0x5c]
imul eax, eax, 0x6e
mov dword [rsp + 0x64], eax
mov r14, qword [rbp - 0x80]
mov byte [rsp + 0x30], r11b
xor r9d, r9d
mov byte [rsp + 0x28], 0xc8
xor r8d, r8d
xor edx, edx
mov byte [rsp + 0x20], 0xaf
xor ecx, ecx
call fcn.18000132c
xor r11d, r11d
movsx r10d, al
cmp r10w, 0x33
mov ecx, r11d
mov eax, r11d
setbe cl
test r10w, r10w
sete al
cmp eax, ecx
jne 0x180007393
movzx eax, byte [rbp + 0x100]
mov edx, 0x13c
movsx rcx, word [rsp + 0x48]
xor eax, 0xd14661b4
movzx edi, word [rsp + 0x54]
mov qword [rbp - 0x38], rax
movabs rax, 0x6844bf6b16735
add r12, rax
movzx r9d, r14w
add r12, rcx
mov r8d, r15d
lea r14d, [r11 + 1]
movzx ecx, word [rbp + 0x118]
sub cl, byte [0x18001001c]
mov al, byte [0x180010038]
not cl
or dil, byte [0x1800d12d0]
add cl, r15b
not al
add al, r8b
add al, r9b
xor cl, al
not cl
mov byte [0x180010007], cl
sub rdx, r14
jne 0x180007322
mov word [rsp + 0x54], di
mov rdi, qword [rbp - 0x18]
jmp 0x18000745e
mov rax, qword [0x180010060]
test rax, rax
je 0x1800072a1
movsx eax, byte [0x18001001b]
mov r14, qword [rbp - 0x80]
imul esi, eax, 0xffffffdf
movzx eax, r14w
sub eax, 0x6f
mov dword [rbp - 0x48], eax
jmp 0x1800072a5
mov rax, qword [0x180010048]
mov r14d, 1
not rax
test rax, rax
je 0x1800073e6
cmp qword [0x180010010], r11
mov rdx, r11
mov eax, edi
sete dl
sub rdx, rax
mov rax, qword [rbp - 0x68]
movsx rcx, byte [0x180010032]
sub rdx, rax
mov eax, r11d
add rcx, rdx
sete al
mov dword [0x18001000c], eax
mov eax, 0xffffb5e6
mov word [0x180010034], ax
jmp 0x18000745e
mov rcx, qword [0x180010020]
movzx eax, byte [0x18001001e]
cmp rcx, rax
jne 0x18000743e
mov rcx, qword [0x180010070]
mov rax, qword [0x180010070]
imul rcx, rax
mov rax, qword [0x180010070]
sub rax, rcx
mov qword [0x180010070], rax
movzx eax, word [0x180010068]
test ax, ax
je 0x180007431
movzx eax, word [0x18001005c]
jmp 0x180007438
mov rax, qword [0x180010028]
mov qword [rbp - 0x38], rax
jmp 0x18000745e
test sil, sil
mov eax, r11d
sete al
add r13, r14
mov word [rsp + 0x4c], ax
add rbx, r14
mov al, byte [0x1800cc2e8]
mov byte [0x18001001f], al
movzx eax, byte [0x180010003]
cmp rax, rbx
je 0x18000721c
mov rbx, qword [rbp - 0x80]
mov r8d, 0x284
mov qword [rbp - 0x78], r12
mov r12, qword [rbp + 0x110]
movzx r9d, bx
mov dword [rsp + 0x60], r10d
mov word [rsp + 0x44], si
mov qword [rbp - 0x70], r13
movzx ecx, word [0x180010068]
movzx edx, word [rbp + 0x118]
not ecx
movzx eax, byte [rbp + 0x108]
add word [0x180010018], r13w
add eax, r9d
imul edx, ecx
movzx ecx, byte [0x180010003]
add eax, edx
cdqe
mov qword [0x180010038], rax
mov rax, qword [0x180010060]
add eax, ecx
mov dword [rsp + 0x58], eax
movzx eax, word [rsp + 0x50]
add ax, r14w
mov word [rsp + 0x50], ax
sub r8, r14
jne 0x180007495
mov ecx, dword [rbp - 8]
mov eax, dword [rbp - 8]
sub ecx, eax
mov edx, dword [rbp + 0x30]
add edx, ecx
mov ecx, dword [rbp + 0x34]
mov eax, dword [rbp + 0x38]
add ecx, eax
cmp ecx, edx
je 0x1800087eb
movsx eax, byte [rbp - 0x60]
movabs rcx, 0x567993d56c4d9
movsx r8, byte [rsp + 0x54]
sub ax, 0x71
mov edi, dword [0x1800cc2e8]
mov r9d, 1
mov word [0x180010004], ax
mov eax, dword [rsp + 0x58]
add al, 0x43
add sil, al
mov word [rsp + 0x44], si
add r8, rcx
movsx r14d, sil
mov eax, 0xe952
movzx r10d, r10w
mov word [0x180010018], ax
mov ecx, r9d
lea eax, [r14 + rdi]
or edi, eax
movsx eax, word [0x180010058]
sub cx, ax
mov edx, eax
movsx eax, cx
imul eax, edx
mov word [0x180010058], ax
movzx eax, byte [0x18001001e]
imul r10d, eax
movzx eax, word [0x18001001c]
cmp rax, r8
jne 0x1800075a7
movsx ecx, byte [0x180010032]
movzx eax, byte [rbp + 0x100]
add eax, ecx
cmp eax, r9d
je 0x180007549
mov r15d, dword [0x1800cc2e8]
mov rax, r13
shr rax, 6
mov rsi, r11
mov qword [rbp - 0x78], rax
mov dword [rsp + 0x60], r10d
jmp 0x1800075cb
mov r13, qword [rbp - 0x70]
mov rbx, qword [rbp - 0x80]
movzx r8d, byte [0x18001001e]
mov r9d, r15d
xor edx, edx
mov ecx, 0xe3
call fcn.1800011ac
xor r8d, r8d
mov word [0x180010004], ax
test ax, ax
je 0x18000762b
mov rcx, qword [0x180010010]
mov eax, edi
sub rcx, rax
movzx eax, r13w
and qword [0x180010010], rcx
mov ecx, 0xb3e9
and ax, cx
mov ecx, 0x14d
mov word [rbp + 0x118], ax
movzx eax, bx
xor ax, cx
mov word [0x18001001c], ax
jmp 0x180007646
movzx edx, word [rbp + 0x118]
mov ecx, 0x673b
imul edx, ecx
add r12d, dword [0x1801364b8]
mov word [rsp + 0x50], dx
mov eax, dword [0x1800cc2e8]
mov dword [rsp + 0x78], eax
movzx eax, byte [0x180010006]
cmp qword [0x180010050], rax
jl 0x180007676
movsx eax, byte [rsp + 0x5c]
not eax
test eax, eax
je 0x180007676
mov r13d, 1
mov edx, r13d
jmp 0x18000767f
mov edx, r8d
mov r13d, 1
mov ecx, r8d
mov eax, edi
not eax
cmp eax, 0x3c
setb cl
cmp ecx, edx
jb 0x1800076e9
movsx ecx, word [0x180010030]
mov r9d, 0xf0
mov dword [rsp + 0x20], r8d
xor edx, edx
lea r8d, [r9 - 0x1f]
call fcn.180001cb8
xor r8d, r8d
mov dl, al
cmp al, 0x10
mov dword [rsp + 0x68], edx
mov ecx, r8d
mov eax, r8d
setbe cl
test dl, dl
sete al
cmp eax, ecx
jne 0x1800076f4
call qword [sym.imp.USER32.dll_GetFocus]
xor r8d, r8d
test rax, rax
je 0x1800076f4
mov edx, r13d
mov rcx, rax
call qword [sym.imp.USER32.dll_GetSystemMenu]
xor r8d, r8d
jmp 0x1800076f4
mov rax, qword [0x180010028]
sub byte [rsp + 0x54], al
mov eax, dword [rsp + 0x78]
mov ebx, dword [rsp + 0x64]
add eax, 0x37d
mov dword [rbp - 0x2c], eax
mov eax, dword [rsp + 0x78]
add eax, 0x45f
movzx ecx, bx
mov dword [rbp + 0x110], eax
mov eax, 0xa7cc
imul ecx, eax
movzx eax, word [0x180010068]
lea r12d, [rax + r12*2]
mov word [0x180010018], cx
mov eax, 0x61
mov ecx, 2
mov word [0x18001001c], ax
mov eax, dword [rsp + 0x78]
add eax, 0x4e5
cmp word [0x18001005c], r8w
mov dword [rbp - 0x50], eax
mov rax, qword [rbp + 0x18]
mov byte [rax + rsi], cl
mov eax, 0x95
mov word [0x180010030], ax
je 0x180007783
movsx ecx, word [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov eax, eax
xor r8d, r8d
mov qword [0x180010040], rax
jmp 0x1800077b9
movzx eax, word [rsp + 0x40]
mov ecx, 0x75d5
or cx, word [0x180010048]
add ax, r13w
xor cx, word [0x180010004]
mov word [rsp + 0x40], ax
mov rax, qword [0x180010020]
not ax
add ax, cx
not ax
mov word [rsp + 0x60], ax
movzx edx, word [rbp + 0x118]
movsx eax, word [0x180010030]
add edx, r13d
cmp eax, edx
jne 0x180007906
movsx edi, word [rsp + 0x40]
mov eax, 0x35
mov word [0x180010058], ax
mov al, byte [rbp + 0x108]
shl edi, 2
cmp qword [0x180010038], r13
mov word [rbp - 0x80], r8w
jne 0x180007906
movsx ecx, word [0x180010030]
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov r13, qword [rbp - 0x58]
xor r8d, r8d
mov byte [0x18001001b], al
mov edx, r8d
mov al, byte [0x18001001b]
mov ecx, r8d
cmp al, 0xb
mov al, byte [0x18001001b]
setl dl
test al, al
sets cl
cmp ecx, edx
jne 0x180007871
movsx eax, byte [rbp - 0x60]
imul ecx, eax, 0x18b37373
mov eax, r8d
test ecx, ecx
movsx rcx, byte [0x18001001b]
sete al
imul rcx, qword [rbp - 0x78]
lea edx, [rax + r13]
movzx eax, byte [rbp + 0x100]
sub rdx, rcx
add rax, rdx
mov qword [rbp - 0x70], rax
jmp 0x18000790a
movzx eax, word [rbp + 0x118]
mov al, byte [0x180010003]
test al, al
je 0x1800078e6
movzx edx, byte [rbp + 0x100]
mov eax, r8d
movzx ecx, word [section..data]
not edx
cmp word [0x18001001c], r8w
sete al
add edx, eax
add ecx, edx
add cl, byte [0x18001001e]
mov byte [0x180010032], cl
mov cl, byte [rbp + 0x108]
xor cl, byte [0x18001001e]
movsx edx, byte [0x18001001f]
movsx ecx, cl
imul edx, ecx
movsx ecx, byte [0x180010007]
mov al, byte [0x180010007]
imul ecx, ebx
mov byte [rbp - 0x60], dl
and al, cl
mov byte [0x180010007], al
jmp 0x18000790a
movzx eax, word [0x18001005c]
cmp word [0x180010058], r8w
cmovne ax, word [0x180010038]
mov word [0x18001005c], ax
jmp 0x18000790a
mov r13, qword [rbp - 0x58]
mov eax, 0x95
mov word [0x180010030], ax
mov rax, qword [rbp - 0x68]
add al, 1
movsx ecx, al
movsx eax, byte [rsp + 0x5c]
imul eax, ecx
mov byte [rsp + 0x5c], al
mov al, byte [0x18001001f]
add r15d, dword [0x180010050]
add al, 0x6b
mov byte [rbp + 0x108], al
mov qword [rbp - 0x68], r8
mov rax, qword [0x180010028]
movsxd rcx, r15d
imul rcx, rax
cmp word [rsp + 0x60], r8w
movzx eax, byte [rsp + 0x68]
mov qword [0x180010010], rcx
movzx ecx, word [0x18001005c]
cmovne cx, ax
mov rax, qword [rbp - 0x68]
mov word [rsp + 0x60], cx
test rax, rax
jne 0x18000799f
movsx eax, byte [0x18001001a]
xor ebx, eax
mov byte [rsp + 0x5c], 0x46
movzx eax, byte [0x180010040]
imul ecx, eax, 0x47
mov dword [rsp + 0x64], ebx
mov byte [0x18001001f], cl
mov ecx, dword [rbp + 0x3c]
mov eax, dword [rbp - 0x20]
imul ecx, eax
mov eax, dword [rbp - 4]
imul edx, eax, 0x2d5
add edx, ecx
mov ecx, dword [rbp - 0x20]
mov eax, dword [rbp - 0x20]
imul ecx, eax
cmp edx, ecx
je 0x1800087d1
movsx ebx, byte [rsp + 0x54]
mov edi, dword [rsp + 0x64]
mov byte [0x180010003], 0xae
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
xor r11d, r11d
mov dword [0x18001000c], eax
test eax, eax
je 0x180007a05
movsx r10d, byte [0x18001001a]
add r10w, 0x17
movsxd rax, r15d
mov dword [rsp + 0x60], r10d
mov qword [0x180186958], rax
jmp 0x180007a38
movzx eax, word [rbp + 0x118]
mov r10d, dword [rsp + 0x60]
imul rcx, rax, 0x1639
mov al, byte [rsp + 0x68]
add al, 0x3b
mov qword [0x180010050], rcx
mov byte [0x180010006], al
mov rax, qword [rsp + 0x70]
add al, 0x7b
add byte [0x18001001a], al
movzx edx, byte [0x180010003]
movsx eax, byte [0x180010007]
add edx, ebx
cmp eax, edx
jne 0x180007c6a
movzx ecx, word [section..data]
mov r8d, r11d
movzx edx, byte [0x180010006]
mov eax, r11d
cmp dx, cx
seta r8b
cmp dl, 0x12
seta al
cmp r8d, eax
jb 0x180007bec
mov al, byte [rbp + 0x108]
mov ecx, 0x4aeb
movzx eax, word [rbp - 0x70]
sub ax, cx
mov qword [0x180010048], r11
mov word [0x180010030], ax
movsx eax, byte [0x180010032]
cmp qword [0x180010048], r11
mov qword [rbp - 0x80], rax
jne 0x180007b0e
mov rcx, qword [0x180010060]
mov r8d, r11d
movsx eax, byte [rbp - 0x60]
mov rdx, qword [0x180010040]
mov word [0x1800d43f2], ax
movzx eax, word [0x18001001c]
imul rcx, rax
test r10w, r10w
mov rax, r11
not rcx
sete al
add rcx, rax
mov rax, qword [0x180010060]
movzx ecx, al
sete r9b
mov byte [0x180010006], 0xe7
test rdx, rdx
cmove r8d, ecx
sub r9b, r8b
not r9b
mov byte [0x180010002], r9b
mov r8d, 1
mov eax, 0x1dd7
mov word [0x18001001c], ax
mov rax, qword [0x180010028]
mov edx, dword [0x1800cc2e8]
sub r10w, ax
mov eax, 0x68
mov dword [rsp + 0x60], r10d
mov dword [rsp + 0x58], edx
lea ecx, [rax - 0x60]
mov word [0x180010068], cx
mov word [rsp + 0x4c], dx
sub rax, r8
jne 0x180007b42
movsx rcx, byte [rsp + 0x54]
movabs rax, 0xa7a75a6e1f784
add rcx, rax
movzx eax, word [0x18001001c]
cmp rax, rcx
jne 0x180007c70
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
xor r8d, r8d
mov byte [0x18001001f], al
mov al, byte [0x18001001f]
mov edx, r8d
cmp al, 0x36
mov ecx, r8d
mov al, byte [0x18001001f]
seta dl
test al, al
setne cl
cmp ecx, edx
jbe 0x180007c3b
mov rdx, qword [rbp - 0x60]
mov ecx, r8d
movsx rax, dl
cmp rax, qword [0x180010010]
mov eax, r8d
mov r8d, 0x2e
setne cl
cmp dl, r8b
setne al
cmp ecx, eax
jbe 0x1800079cd
movsx r15d, word [0x180010058]
mov eax, 0xe7dc
mov word [rsp + 0x4c], ax
jmp 0x1800079cd
movzx eax, word [rbp - 0x80]
mov r8d, 1
not eax
cmp edi, eax
je 0x180007c15
movzx eax, word [rbp + 0x118]
mov ecx, r8d
sub ecx, eax
imul r13d, ecx
mov qword [rbp - 0x58], r13
jmp 0x180007b14
movsx eax, byte [0x18001001b]
imul eax, eax, 0xd2cad1f0
mov dword [rsp + 0x64], eax
mov eax, 4
mov edi, dword [rsp + 0x64]
mov qword [0x180010050], rax
jmp 0x180007b14
movsx eax, byte [rsp + 0x44]
and ax, word [0x180010048]
mov rcx, qword [0x180010060]
not ax
mov word [0x180010034], ax
movsxd rax, r15d
add rcx, rax
mov qword [0x180010060], rcx
jmp 0x1800079cd
mov edx, dword [0x1800cc2e8]
movzx eax, word [0x180010040]
mov ecx, 0x739a
sub ax, cx
mov dword [rsp + 0x78], edx
mov word [rbp + 0x118], ax
movzx r9d, r12w
movsx edi, byte [0x180010007]
movsx eax, word [0x180010030]
not edi
mov r8d, dword [0x1800cc2e8]
sub edi, eax
mov eax, dword [rsp + 0x78]
not r8w
add eax, 0x845d
mov dword [rbp - 0x40], eax
movsx eax, word [0x180010030]
movsx edx, byte [0x180010032]
imul edx, eax
movsx rax, byte [rsp + 0x44]
sub dx, ax
mov eax, dword [0x1800cc2e8]
mov qword [0x180010050], rax
add dx, r8w
not dx
mov word [0x180010030], dx
mov eax, dword [rsp + 0x78]
mov ecx, dword [0x18001000c]
add eax, 0x358
mov dword [rbp - 0x38], eax
movzx eax, byte [0x180010006]
sub ecx, eax
mov eax, dword [rsp + 0x64]
not eax
cmp ecx, eax
mov ecx, 0x6e2f
sete byte [0x180010032]
movzx eax, word [rbp + 0x118]
shl rax, 6
mov qword [0x180010028], rax
mov eax, dword [rsp + 0x78]
mov ebx, dword [0x180135f68]
add eax, 0x34d
mov dword [rbp - 0x40], eax
mov rax, qword [rbp - 0x80]
sub ax, cx
mov dword [0x18001000c], 0x74
mov word [0x18001001c], ax
movzx eax, byte [rbp + 0x100]
mov ecx, dword [0x180010008]
add cl, al
mov dword [rsp + 0x64], ebx
mov byte [rbp + 0x100], cl
movsx ecx, byte [0x18001001b]
and cl, byte [0x180010004]
mov byte [0x18001001b], cl
movzx eax, word [rbp + 0x118]
inc eax
mov qword [rbp - 0x80], r9
cmp dword [0x18001000c], eax
jne 0x180007e57
call qword [sym.imp.USER32.dll_GetMessagePos]
xor r13d, r13d
mov word [0x18001001c], ax
cmp ax, 0x64
mov edx, r13d
mov ecx, r13d
setne dl
test ax, ax
setne cl
cmp ecx, edx
je 0x180007de6
xor r9d, r9d
mov qword [rsp + 0x20], r13
xor edx, edx
lea r8d, [r13 + 0x7b]
xor ecx, ecx
call fcn.180001648
mov byte [0x180010007], al
mov al, byte [0x180010007]
jmp 0x180007df1
mov al, byte [rbp - 0x48]
sub al, 0x5b
mov byte [0x180010003], al
mov rcx, qword [0x180010028]
mov edx, r13d
movzx eax, byte [rsp + 0x68]
mov r8d, 0x2e
cmp rcx, rax
mov rax, qword [0x180010028]
mov ecx, r13d
setbe dl
cmp rax, r8
setbe cl
cmp edx, ecx
jae 0x180007e33
mov al, byte [rbp + 0x100]
mov rax, qword [0x180010020]
mov al, byte [rbp + 0x100]
mov eax, 1
cmp byte [0x18001001e], al
jne 0x180007e53
movzx ecx, word [rbp + 0x118]
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov eax, eax
mov qword [rbp - 0x78], rax
mov r9, qword [rbp - 0x80]
movzx ecx, word [rsp + 0x40]
mov r13d, 0x26ac864a
movzx eax, byte [0x180010010]
test cx, cx
movzx r11d, word [rsp + 0x54]
mov ecx, 0xe5ed
mov r10d, dword [rsp + 0x5c]
mov dword [0x18001000c], 0x74
movzx edx, r11b
cmovne edx, eax
mov qword [rbp - 0x70], r13
mov byte [rbp + 0x100], dl
movzx edx, byte [0x18001001e]
imul edx, ecx
mov ecx, 0xae
movsx eax, r10b
mov word [rsp + 0x4c], dx
mov word [0x180010030], ax
mov r8d, dword [rbp - 0x2c]
movzx eax, word [rsp + 0x60]
sub ecx, eax
mov eax, dword [rbp - 0x2c]
xor r8d, eax
add r15d, ecx
mov eax, dword [rbp + 0x110]
mov edx, dword [rbp + 0x110]
imul ecx, eax, 0x1f3
mov eax, dword [rbp + 0x110]
xor edx, eax
sub r8d, ecx
mov ecx, dword [rbp - 0x50]
mov eax, dword [rbp + 0x110]
imul edx, r8d
xor r8d, r8d
imul ecx, edx
mov edx, 0x365
imul eax, ecx
mov ecx, dword [rbp - 0x40]
sub edx, eax
mov eax, dword [rbp - 0x38]
xor ecx, eax
sub edx, ecx
mov ecx, r8d
mov dword [rbp - 0x38], edx
mov rdx, qword [rbp - 0x60]
movsx rax, dl
cmp rax, r13
mov eax, r8d
seta cl
cmp dl, 0x4a
setg al
cmp ecx, eax
jbe 0x180008009
mov rax, qword [0x180010028]
test rax, rax
mov al, byte [0x18001001b]
je 0x180007f6f
test al, al
je 0x180007f54
movzx eax, word [rsp + 0x48]
mov byte [rsp + 0x68], al
jmp 0x180007f59
mov byte [rsp + 0x68], r9b
imul ecx, ebx, 0x8a69
imul r13, rcx, 0x26ac864a
mov qword [rbp - 0x70], r13
jmp 0x180008009
test al, al
mov ecx, r8d
sete cl
cmp ecx, r12d
jge 0x180007fb7
mov rax, qword [0x180010060]
sub dword [0x18001000c], eax
movsx eax, word [rsp + 0x40]
movzx edx, word [rsp + 0x4c]
movsx ecx, al
movsx eax, byte [0x18001001a]
imul eax, ecx
mov byte [0x18001001a], al
movzx eax, word [rbp + 0x118]
imul eax, edx
mov word [rsp + 0x4c], ax
jmp 0x180008005
mov eax, dword [0x180010008]
test eax, eax
je 0x180008009
movsx eax, word [0x180010058]
mov dword [0x18013e860], eax
movzx eax, word [0x180010068]
movsx ecx, word [0x180010030]
neg ax
mov al, byte [0x18001001e]
not ecx
sbb edx, edx
mov byte [0x1800e9910], al
imul r12d, ecx, 0x8e38
neg edx
add edx, 0x26ac8649
not r12d
imul r12d, edx
mov rdx, qword [rbp - 0x60]
mov rax, qword [rbp + 0x18]
mov ecx, 2
cmp byte [rax + rsi], cl
je 0x1800087d1
cmp dword [rbp - 0x48], r8d
jne 0x180008061
movsx eax, dl
cmp r12d, eax
jl 0x180008061
mov eax, ebx
not eax
test eax, eax
je 0x180008061
movzx eax, word [0x180010004]
sub rax, 0x6f832cc3
mov qword [0x180010020], rax
cmp byte [rsp + 0x68], r8b
je 0x180008055
movzx ecx, word [0x180010068]
jmp 0x18000805c
mov rcx, qword [0x180010040]
mov word [rsp + 0x40], cx
movsxd rcx, dword [0x18001000c]
movzx eax, byte [0x180010006]
cmp ecx, eax
jge 0x1800080d0
movzx edx, word [0x180010018]
add rdx, rcx
movzx eax, r9w
test r10b, r10b
mov ecx, r8d
sete cl
sub ecx, eax
mov eax, r8d
not ecx
test r11b, r11b
sete al
xor eax, 0xdf2d
add ecx, eax
mov rax, qword [rsp + 0x70]
sub rdx, rax
movsxd rcx, ecx
not rdx
sub rdx, rcx
mov qword [rbp - 0x78], rdx
movsx rdx, byte [0x18001001b]
mov rax, qword [0x180010060]
movsx ecx, al
imul ecx, edx
mov byte [0x18001001b], cl
jmp 0x1800080f8
movzx ecx, word [0x180010068]
inc ecx
add ecx, ebx
add rcx, qword [0x180010050]
jne 0x1800080f8
movzx eax, word [0x18001001c]
mov ecx, 0xf3
sub ax, cx
mov word [rsp + 0x50], ax
mov eax, dword [0x1800cc2e8]
xor ecx, ecx
mov dword [rbp + 0x110], eax
movsx r9, word [rsp + 0x48]
movsx rdx, byte [0x18001001a]
mov qword [rsp + 0x20], 0xbd
call fcn.180001648
mov r10, qword [rbp - 0x80]
xor r11d, r11d
mov r9, qword [rbp - 0x48]
mov edx, r11d
mov dword [0x180010008], eax
mov eax, dword [0x180010008]
lea ecx, [r11 + 0x5c]
cmp eax, ecx
mov eax, dword [0x180010008]
mov ecx, r11d
setle dl
test eax, eax
setle cl
cmp ecx, edx
jb 0x18000817c
movzx eax, r10w
mov edi, r9d
sub edi, eax
xor r12w, di
mov word [rbp + 0x118], r12w
mov rax, qword [0x180010070]
add r13, rax
mov qword [rbp - 0x70], r13
jmp 0x180008190
movzx eax, word [0x180010068]
mov ecx, 0x191c
add ax, cx
mov word [rsp + 0x48], ax
mov eax, dword [rbp + 0x110]
mov ecx, 0x35b8
add eax, 0x2fb
mov qword [0x180010048], 0x6f
mov dword [rbp - 0x50], eax
movzx edx, byte [rbp + 0x108]
movsx ecx, cx
imul edx, ecx
mov word [rsp + 0x48], dx
mov eax, dword [rbp + 0x110]
add eax, 0x2e7
mov dword [rbp - 0x40], eax
movzx eax, word [rsp + 0x4c]
test ax, ax
jne 0x18000827a
mov al, byte [0x180010003]
test al, al
je 0x18000821a
movsx eax, byte [0x180010032]
mov rcx, qword [rsp + 0x70]
not eax
movsx edx, ax
movsx eax, cx
mov ecx, 0x3b2
imul eax, edx
mov word [rsp + 0x40], ax
movsx eax, byte [0x18001001a]
add ax, cx
mov word [0x18001005c], ax
jmp 0x18000827a
movsx edx, word [rsp + 0x48]
mov r8d, r11d
movsx eax, word [rsp + 0x48]
not edx
cmp eax, edx
mov eax, r11d
setl r8b
cmp word [0x18001005c], r11w
sete al
cmp eax, r8d
jb 0x18000827a
mov ecx, 1
mov byte [0x18001001b], cl
mov rax, qword [0x180010060]
add ax, cx
movzx ecx, ax
movzx eax, word [rsp + 0x60]
imul eax, ecx
mov word [rsp + 0x60], ax
mov al, byte [0x180010032]
mov eax, dword [0x180010008]
mov rax, qword [0x180010028]
mov eax, dword [rbp + 0x110]
mov edx, r11d
mov r8d, dword [rsp + 0x60]
add eax, 0xf461
mov dword [rbp + 0x110], eax
movzx eax, r10w
add rax, r13
movzx eax, word [0x180010068]
sete dl
sub edx, eax
mov eax, 1
add byte [0x18001001a], al
mov r13d, edx
mov al, r8b
mov qword [rbp - 0x58], r13
lea ecx, [rax + rax]
movzx eax, word [0x180010068]
mov dword [rsp + 0x5c], ecx
test ax, ax
je 0x1800082f0
movzx r13d, word [rbp + 0x118]
mov r12b, 0xb8
mov rbx, qword [rbp - 0x78]
mov dword [rsp + 0x68], r12d
mov qword [rbp - 0x58], r13
mov dword [rsp + 0x64], 0xca
jmp 0x18000832c
mov rax, qword [0x180010028]
mov r12d, dword [rsp + 0x68]
mov eax, ebx
shl eax, 5
mov dword [0x18001000c], eax
movsx eax, cl
movsx rcx, word [rsp + 0x48]
add eax, 0xe360
movsxd rbx, eax
movabs rax, 0xf42a2641810c2
xor rcx, rax
sub rbx, rcx
mov qword [rbp - 0x78], rbx
mov ecx, dword [rbp - 0x50]
mov edx, r11d
mov eax, dword [rbp + 0x110]
or ecx, eax
mov eax, dword [rbp + 0x110]
sub ecx, eax
mov eax, dword [rbp - 0x40]
add eax, ecx
xor eax, 0x580
mov dword [rbp - 0x50], eax
movsx rax, byte [0x180010032]
mov qword [0x1801f5378], rax
mov rax, qword [0x180010020]
movzx ecx, word [0x180010018]
mov word [0x180010058], ax
movzx eax, word [0x180010040]
not ax
mov word [0x180010034], ax
mov eax, dword [0x1800cc2e8]
mov dword [rbp + 0x110], eax
mov eax, dword [rsp + 0x58]
cmp eax, ecx
mov eax, dword [rsp + 0x58]
mov ecx, r11d
setl dl
cmp eax, 0x58
setl cl
cmp edx, ecx
ja 0x1800083c7
movzx eax, r8b
imul ecx, eax, 0xc6
mov eax, 2
mov byte [0x180010002], al
mov byte [0x18001001e], cl
jmp 0x1800083f1
cmp r15d, r9d
ja 0x1800083f1
movzx eax, word [0x180010004]
mov ecx, 0x99
sub ax, cx
mov word [rsp + 0x48], ax
mov ecx, dword [rsp + 0x58]
mov eax, dword [rsp + 0x58]
xor ecx, r15d
add eax, ecx
mov dword [rsp + 0x58], eax
mov eax, dword [rbp + 0x110]
mov edx, 0xca
add eax, 0x297
mov dword [rsp + 0x20], r11d
xor r9d, r9d
mov dword [rsp + 0x78], eax
lea ecx, [rdx + 0x15]
lea r8d, [rdx + 0x13]
call entry0
xor r9d, r9d
mov r15d, eax
test eax, eax
jne 0x180008489
cmp qword [0x180010048], r9
je 0x180008489
movsx r8d, byte [0x180010007]
mov ecx, r9d
mov al, byte [rbp + 0x108]
not r8d
movzx edx, r12b
xor edx, 0x4be
sub r8d, edx
test al, al
movzx eax, word [rsp + 0x50]
sete cl
sub r8d, ecx
movzx ecx, word [0x180010004]
add eax, ecx
mov rcx, qword [0x180010070]
add cx, ax
movzx eax, r8w
movzx edx, cx
imul edx, eax
mov al, byte [rbp - 0x60]
sub al, 0x15
add byte [0x18001001e], al
mov word [0x180010068], dx
mov eax, dword [rbp + 0x110]
add eax, 0x29b
mov dword [rbp - 0x40], eax
mov rcx, qword [rbp - 0x68]
movzx eax, byte [0x180010006]
sub rcx, rax
mov rax, qword [rbp - 0x68]
add rax, rcx
movsx rcx, word [0x180010058]
mov qword [rbp - 0x68], rax
movzx eax, word [rbp - 0x80]
sub eax, 0x5b
mov dword [rsp + 0x58], eax
mov rax, qword [0x180010060]
imul rcx, rax
mov rax, qword [0x180010028]
mov rax, qword [0x180010070]
imul rcx, rbx
test rcx, rcx
sete cl
xor al, byte [0x18001000c]
add al, cl
mov byte [0x180010006], al
mov eax, dword [rbp + 0x110]
add eax, 0x2dc
mov byte [0x180010002], 0xc5
mov dword [rbp + 0x110], eax
mov rax, qword [rbp - 0x70]
cmp rax, 0xffffffffffff7f00
jne 0x180008594
lea rcx, [rax + 0x22]
movsx rax, byte [0x18001001a]
cmp rax, rcx
jne 0x180008594
mov eax, 2
mov ecx, 0x281e
mov dword [rsp + 0x64], eax
movzx eax, word [0x1800cc2e8]
mov word [0x180010018], ax
mov rax, qword [0x180010028]
sub ax, cx
mov word [0x180010058], ax
mov rax, qword [rbp - 0x48]
mov byte [rbp + 0x100], al
movzx eax, word [rsp + 0x40]
mov dword [rsp + 0x60], eax
movzx eax, byte [0x18001001b]
imul eax, eax, 0x86
mov byte [rbp + 0x100], al
movzx edx, word [rbp + 0x118]
movzx eax, byte [0x1800e88ec]
imul eax, edx
mov word [rbp + 0x118], ax
movzx edx, byte [0x18001001f]
mov rcx, r9
movzx eax, byte [0x18001001e]
sub rdx, rax
mov byte [0x180010002], 0xc5
add rdx, qword [0x180010038]
mov rax, r9
sete cl
cmp word [rsp + 0x60], r9w
sete al
and rcx, rax
mov qword [0x180010020], rcx
mov eax, dword [0x180010008]
movzx r12d, byte [0x18001001f]
test eax, eax
jne 0x1800085e9
movzx r12d, word [rbp + 0x118]
mov edx, dword [0x180010038]
xor ecx, ecx
mov dword [rsp + 0x20], r9d
mov r9d, 0x2a
lea r8d, [r9 - 0x1d]
call fcn.1800014c0
movzx ebx, byte [rsp + 0x68]
mov dword [0x18001000c], eax
test eax, eax
jg 0x18000864d
movzx eax, word [0x18000f250]
lea rcx, [rbp + 0x70]
vmovups xmm0, xmmword [str._s:_s_exit]
mov word [rbp + 0x80], ax
mov al, byte [0x18000f252]
mov byte [rbp + 0x82], al
vmovups xmmword [rbp + 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_lstrlenA]
cdqe
mov qword [rbp - 0x70], rax
jmp 0x180008691
movsx edx, word [rsp + 0x40]
mov eax, r13d
imul eax, dword [0x180010040]
movsx ecx, byte [rsp + 0x5c]
or r13d, eax
movzx eax, byte [0x180010002]
mov qword [rbp - 0x58], r13
lea r15d, [rax + r15*2]
mov eax, ebx
not eax
imul edx, eax
movsx eax, byte [rbp - 0x60]
imul eax, r15d
add edx, r13d
add edx, ecx
or rdx, rax
mov qword [0x180010028], rdx
mov ecx, dword [rbp - 0x38]
mov eax, dword [rbp + 0x110]
mov edx, dword [rsp + 0x78]
imul ecx, eax
add edx, ecx
mov ecx, dword [rsp + 0x78]
mov eax, dword [rsp + 0x78]
add ecx, eax
cmp ecx, edx
je 0x1800087d1
movzx ecx, byte [0x180010002]
mov edx, 0xc
mov r9d, r13d
mov r8d, 0x9e
mov qword [rsp + 0x20], 0x66
call fcn.180001648
xor r8d, r8d
mov edx, eax
cmp eax, 0x53
mov qword [rbp - 0x48], rdx
mov ecx, r8d
mov eax, r8d
sete cl
test edx, edx
sete al
cmp eax, ecx
ja 0x180008736
mov eax, dword [0x180010008]
test eax, eax
je 0x1800087c8
mov eax, edi
movabs rcx, 0xfff67d5c527a3f82
sub rcx, rax
mov rax, qword [rsp + 0x70]
add rcx, rax
cmp dword [0x18001000c], r14d
mov qword [rsp + 0x70], rcx
sete al
sub al, r13b
mov byte [rsp + 0x54], al
jmp 0x1800087c8
movsx rax, byte [0x18001001b]
cmp qword [0x180010050], rax
jle 0x180008764
movzx ecx, word [0x18001005c]
mov eax, 0x6c23
imul ecx, eax
mov byte [rsp + 0x5c], 0xbe
mov word [0x18001001c], cx
jmp 0x1800087c8
test r13d, r13d
je 0x1800087a5
movzx eax, word [rsp + 0x40]
movzx ecx, word [0x180010034]
test ax, ax
movzx r11d, word [rsp + 0x54]
cmovne cx, bx
mov word [rbp + 0x118], cx
mov rax, qword [rsp + 0x70]
mov dword [0x18015931c], eax
mov al, byte [0x180010003]
add r11b, al
mov word [rsp + 0x54], r11w
jmp 0x1800087c8
test r12d, r12d
je 0x1800087c8
mov eax, 0x9f9d
movzx ecx, di
imul ecx, eax
mov eax, 1
add qword [0x180010038], rax
mov word [0x180010018], cx
mov eax, dword [rbp - 0x50]
mov dword [section..upx1], eax
inc rsi
cmp rsi, 0x80
jl 0x1800075c3
mov qword [rbp - 0x38], r15
mov r14d, 1
mov r9d, 0x4000
lea r8, [rbp]
lea rdx, [rbp + 0x18]
or rcx, 0xffffffffffffffff
call fcn.18000e2c0
mov r9d, dword [rbp - 0x30]
mov r10d, 0
mov eax, dword [rbp - 0x1c]
add r9d, r14d
mov r13, qword [rbp - 0x38]
cmp r9d, eax
mov r15, qword [rbp - 0x58]
mov r14d, dword [rsp + 0x64]
mov rbx, qword [rbp - 0x78]
movzx esi, word [rsp + 0x44]
movzx r11d, word [rsp + 0x54]
mov dword [rbp - 0x30], r9d
lea r9d, [r10 + 1]
jb 0x18000443f
add rsp, 0x1b8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret