Function at 0x140017624
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r15, rcx
mov esi, 8
mov ecx, esi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffffd9ee8
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea r13d, [rsi - 4]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, r13d
mov rbx, rax
mov dword [rax], 0xffffba39
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
lea r12d, [rsi - 7]
xor r14d, r14d
mov rdi, rax
mov r8d, r14d
mov dword [rax], r12d
mov edx, dword [rax]
mov ecx, r8d
shl edx, cl
add r8d, r12d
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r8d, r13d
jl 0x14001768f
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0x2d897
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0x16ff6
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, r14d
mov dword [rax], r12d
mov ecx, dword [rax]
add ecx, edx
add edx, r12d
mov dword [rax], ecx
cmp edx, 0xe9
jl 0x1400176f7
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffff6d9b8
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xa6bf8
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rdi], 0xfff54af8
mov rbx, rax
mov dword [rax], r14d
mov ecx, dword [rdi]
and ecx, 0xfff8ca82
mov dword [rax], ecx
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 2
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov word [rax], r14w
mov word [rax], r12w
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rbx, rax
mov dword [rax], 0xfff3a621
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov r8d, r14d
mov dword [rax], r12d
mov edx, dword [rax]
mov ecx, r8d
shl edx, cl
add r8d, r12d
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r8d, r13d
jl 0x1400177c0
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rbx, rax
mov dword [rax], 0xfffa8b75
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov r8d, r14d
mov dword [rax], r12d
mov edx, dword [rax]
mov ecx, r8d
shl edx, cl
add r8d, r12d
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r8d, r13d
jl 0x14001780b
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0x13c833
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0xc
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x10
mov rbp, rax
mov dword [rax + 4], 0xe39fe
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x14
mov rsi, rax
mov dword [rax + 8], 0xfff9bd0f
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
mov dword [rax + 0xc], 0xfffebe56
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, dword [rdi + 0xc]
mov rbx, rax
mov ecx, dword [rdi + 0xc]
mov r8d, dword [rsi + 8]
imul edx, ecx
mov ecx, dword [rsi + 8]
imul r8d, ecx
add r8d, edx
mov edx, dword [rbp + 4]
mov ecx, dword [rbp + 4]
imul edx, ecx
mov rcx, rbp
add edx, r8d
mov dword [rax], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ebp, 2
mov ecx, ebp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov word [rax], r14w
mov word [rax], bp
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov dword [rax], 0x10188
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, dword [r15]
call fcn.14001651c
mov ecx, 0x1a0
mov r15, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, r14d
mov esi, 0xe9
mov dword [rax], r12d
mov ecx, dword [rax]
add ecx, edx
add edx, r12d
mov dword [rax], ecx
cmp edx, esi
jl 0x140017947
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov dword [rax], 0xcee66
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rbx, rax
mov dword [rax], 0x45011
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov r8d, r14d
mov dword [rax], r12d
mov edx, dword [rax]
mov ecx, r8d
shl edx, cl
add r8d, r12d
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r8d, r13d
jl 0x140017999
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, r14d
mov dword [rax], r12d
mov ecx, dword [rax]
add ecx, edx
add edx, r12d
mov dword [rax], ecx
cmp edx, esi
jl 0x1400179cf
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rbx, rax
mov dword [rax], 0xfff17ced
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov r8d, r14d
mov dword [rax], r12d
mov edx, dword [rax]
mov ecx, r8d
shl edx, cl
add r8d, r12d
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r8d, r13d
jl 0x140017a09
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov word [rax], r14w
mov word [rax], r12w
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0xc
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x10
mov rbp, rax
mov dword [rax + 4], 0x2ba4
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x14
mov rsi, rax
mov dword [rax + 8], 0xeca60
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
mov dword [rax + 0xc], 0x58c92
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, dword [rdi + 0xc]
mov rbx, rax
mov ecx, dword [rdi + 0xc]
mov r8d, dword [rsi + 8]
imul edx, ecx
mov ecx, dword [rsi + 8]
imul r8d, ecx
add r8d, edx
mov edx, dword [rbp + 4]
mov ecx, dword [rbp + 4]
imul edx, ecx
mov rcx, rbp
add edx, r8d
mov dword [rax], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0xc
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x10
mov rbp, rax
mov dword [rax + 4], 0xfffb7d7b
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x14
mov rsi, rax
mov dword [rax + 8], 0xbc6b6
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
mov dword [rax + 0xc], 0x7cb86
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, dword [rdi + 0xc]
mov rbx, rax
mov ecx, dword [rdi + 0xc]
mov r8d, dword [rsi + 8]
imul edx, ecx
mov ecx, dword [rsi + 8]
imul r8d, ecx
add r8d, edx
mov edx, dword [rbp + 4]
mov ecx, dword [rbp + 4]
imul edx, ecx
mov rcx, rbp
add edx, r8d
mov dword [rax], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0xc
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x10
mov rbp, rax
mov dword [rax + 4], 0x5e9fc
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x14
mov rsi, rax
mov dword [rax + 8], 0xfff578f8
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
mov dword [rax + 0xc], 0xfff6d6da
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, dword [rdi + 0xc]
mov rbx, rax
mov ecx, dword [rdi + 0xc]
mov r8d, dword [rsi + 8]
imul edx, ecx
mov ecx, dword [rsi + 8]
imul r8d, ecx
add r8d, edx
mov edx, dword [rbp + 4]
mov ecx, dword [rbp + 4]
imul edx, ecx
mov rcx, rbp
add edx, r8d
mov dword [rax], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, r14d
mov edi, 0xe9
mov dword [rax], r12d
mov ecx, dword [rax]
add ecx, edx
add edx, r12d
mov dword [rax], ecx
cmp edx, edi
jl 0x140017c1a
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov dword [rax], 0xfff1a668
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ebp, 2
mov ecx, ebp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov word [rax], r14w
mov word [rax], bp
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
or r12, 0xffffffffffffffff
mov dword [rsp + 0x28], r14d
mov r9d, r12d
mov qword [rsp + 0x20], r14
mov r8, r15
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea ebx, [rbp + 6]
movsxd rsi, eax
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0x9d7f7
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov dword [rax], 0x99c27
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
movabs rcx, 0x322b2a3179
mov qword [rax], rcx
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffff5a7da
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xffffffffffff79c3
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov eax, ebp
mul rsi
cmovo rax, r12
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov r12, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
lea ebp, [rbx - 7]
mov edx, r14d
mov dword [rax], ebp
mov ecx, dword [rax]
add ecx, edx
add edx, ebp
mov dword [rax], ecx
cmp edx, edi
jl 0x140017d2d
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rbx, rax
mov dword [rax], 0x6b731
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov r8d, r14d
mov dword [rax], ebp
mov edx, dword [rax]
mov ecx, r8d
shl edx, cl
add r8d, ebp
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r8d, r13d
jl 0x140017d65
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rbx, rax
mov dword [rax], 0x94dbd
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov r8d, r14d
mov dword [rax], ebp
mov edx, dword [rax]
mov ecx, r8d
shl edx, cl
add r8d, ebp
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r8d, r13d
jl 0x140017daf
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov dword [rax], 0xfffa6fb0
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x48
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 2
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov word [rax], r14w
mov word [rax], bp
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ebx, 8
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffffbd0bc
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
movabs rcx, 0xbd131939d6
mov qword [rax], rcx
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0xf0
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
or r9d, 0xffffffff
mov dword [rsp + 0x28], esi
mov r8, r15
mov qword [rsp + 0x20], r12
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
movabs rcx, 0xa775642b80
mov qword [rax], rcx
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx + 4]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
lea ecx, [rbx + 8]
mov rbp, rax
mov dword [rax + 4], 0xfff482e6
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
lea ecx, [rbx + 0xc]
mov rsi, rax
mov dword [rax + 8], 0xfff90dc2
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
mov dword [rax + 0xc], 0xfff501d8
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, dword [rdi + 0xc]
mov rbx, rax
mov ecx, dword [rdi + 0xc]
mov r8d, dword [rsi + 8]
imul edx, ecx
mov ecx, dword [rsi + 8]
imul r8d, ecx
add r8d, edx
mov edx, dword [rbp + 4]
mov ecx, dword [rbp + 4]
imul edx, ecx
mov rcx, rbp
add edx, r8d
mov dword [rax], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0xc
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x10
mov rbp, rax
mov dword [rax + 4], 0xfff8a53d
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x14
mov rsi, rax
mov dword [rax + 8], 0xfffaf3da
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
mov dword [rax + 0xc], 0xefa50
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, dword [rdi + 0xc]
mov rbx, rax
mov ecx, dword [rdi + 0xc]
mov r8d, dword [rsi + 8]
imul edx, ecx
mov ecx, dword [rsi + 8]
imul r8d, ecx
add r8d, edx
mov edx, dword [rbp + 4]
mov ecx, dword [rbp + 4]
imul edx, ecx
mov rcx, rbp
add edx, r8d
mov dword [rax], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rdi], 0xfffb522c
mov rbx, rax
mov dword [rax], r14d
mov ecx, dword [rdi]
and ecx, 0x41342
mov dword [rax], ecx
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ebp, 8
mov ecx, ebp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
movabs rcx, 0xffffffe9d2665d80
mov qword [rax], rcx
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov dword [rax], 0x2f063
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0xc0
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x150
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, ebp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
mov dword [rax], 0xfff448b1
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rbx, rax
mov dword [rax], r14d
mov ecx, dword [rdi]
test ecx, ecx
jns 0x140018097
mov dword [rax], 0xffffffff
lea esi, [rbp - 7]
jmp 0x1400180d3
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, dword [rdi]
mov esi, 1
mov r8, rax
mov dword [rax], ecx
lea r9d, [rsi + 9]
mov ecx, dword [r8]
mov eax, dword [rdi]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r9, rsi
jne 0x1400180b0
mov eax, dword [r8]
mov rcx, r8
mov dword [rbx], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 2
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov word [rax], r14w
mov word [rax], si
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r15
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xffffffffffe50998
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r15d, 1
mov edx, r14d
mov esi, 0xe9
mov dword [rax], r15d
mov ecx, dword [rax]
add ecx, edx
add edx, r15d
mov dword [rax], ecx
cmp edx, esi
jl 0x14001813c
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffffdb093
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rbx, rax
mov dword [rax], 0xa4b86
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov r8d, r14d
mov dword [rax], r15d
mov edx, dword [rax]
mov ecx, r8d
shl edx, cl
add r8d, r15d
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r8d, r13d
jl 0x14001818f
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rbx, rax
mov dword [rax], 0x1ea76
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov r8d, r14d
mov dword [rax], r15d
mov edx, dword [rax]
mov ecx, r8d
shl edx, cl
add r8d, r15d
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r8d, r13d
jl 0x1400181da
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0x22b8
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rdi], 0xfff409a0
mov rcx, rdi
mov rbx, rax
mov dword [rax], r14d
mov edx, dword [rdi]
and edx, 0x403e0
mov dword [rax], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0xc
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x10
mov rbp, rax
mov dword [rax + 4], 0xa8e2d
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 0x14
mov rsi, rax
mov dword [rax + 8], 0xfff9e2fd
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rdi, rax
mov dword [rax + 0xc], 0xfff70b11
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, dword [rdi + 0xc]
mov rbx, rax
mov ecx, dword [rdi + 0xc]
mov r9d, dword [rsi + 8]
imul edx, ecx
mov ecx, dword [rsi + 8]
mov r8d, dword [rbp + 4]
imul r9d, ecx
mov rcx, rbp
add r9d, edx
mov edx, dword [rbp + 4]
imul r8d, edx
add r8d, r9d
mov dword [rax], r8d
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 8
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
movabs rcx, 0x7e19d4f6ce
mov qword [rax], rcx
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, r13
mov rbx, rax
mov dword [rax], 0x856a5
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], r15d
mov edx, dword [rax]
mov ecx, r14d
shl edx, cl
add r14d, r15d
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r14d, r13d
jl 0x140018330
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x1e0
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rbx, qword [rsp + 0x60]
mov rax, r12
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret