Function at 0x14001c140
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov qword [rax + 8], rcx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rsi, rcx
mov ecx, 2
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
xor r14d, r14d
mov rcx, rax
mov word [rax], r14w
lea ebp, [r14 + 1]
mov word [rax], bp
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea r13d, [r14 + 4]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdx, rax
mov ecx, r14d
mov dword [rax], ebp
mov eax, dword [rdx]
add eax, ecx
add ecx, ebp
mov dword [rdx], eax
cmp ecx, 0xe9
jl 0x14001c19a
mov rcx, rdx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov r12d, 8
mov ecx, r12d
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], 0x31a89
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
or rcx, 0xffffffffffffffff
lea r15d, [r12 + 2]
mov rdi, rax
mov dword [rax], r14d
mov eax, dword [rbx]
test eax, eax
jns 0x14001c1ed
mov dword [rdi], ecx
jmp 0x14001c224
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov r9, r15
mov eax, dword [rbx]
mov dword [r8], eax
mov ecx, dword [r8]
mov eax, dword [rbx]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r9, rbp
jne 0x14001c201
mov eax, dword [r8]
mov rcx, r8
mov dword [rdi], eax
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 rbx, rax
mov dword [rax], 0xfff736dc
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov ecx, r14d
mov dword [rax], ebp
mov edx, dword [rdi]
mov eax, dword [rbx]
shl edx, cl
add ecx, ebp
xor eax, edx
mov dword [rbx], eax
cmp ecx, r13d
jl 0x14001c259
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, r12
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffff53248
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 rdx, rax
mov ecx, r14d
mov dword [rax], ebp
mov eax, dword [rdx]
add eax, ecx
add ecx, ebp
mov dword [rdx], eax
cmp ecx, 0xe9
jl 0x14001c2a6
mov rcx, rdx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xece58
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ebx, 0x48
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
xor edx, edx
mov dword [rax], 0x5b63
mov dword [rax + 4], 0x28865
mov dword [rax + 8], 0x187ce
mov dword [rax + 0xc], 0x35f8
mov dword [rax + 0x10], 0x1fd12
mov dword [rax + 0x14], 0x9b18
mov dword [rax + 0x18], 0x1dbad
mov dword [rax + 0x1c], 0x3ed7c
mov dword [rax + 0x20], 0x4dfc2
mov dword [rax + 0x24], 0x12001
mov dword [rax + 0x28], 0x2df98
mov dword [rax + 0x2c], 0x11245
mov dword [rax + 0x30], 0x56a90
mov dword [rax + 0x34], 0x24d6
mov dword [rax + 0x38], 0x7ec0
mov dword [rax + 0x3c], 0x47df0
mov dword [rax + 0x40], 0x416bf
mov dword [rax + 0x44], 0x3c961
mov r8d, dword [rax + 0x10]
mov eax, dword [rax + 4]
mov ecx, dword [r9 + 0x3c]
imul eax, r8d
div ecx
mov ecx, dword [r9 + 0x2c]
mov eax, edx
xor edx, edx
div ecx
xor edx, edx
mov r8d, eax
mov eax, dword [r9 + 0x2c]
mov ecx, dword [r9 + 0x14]
div ecx
mov ecx, dword [r9 + 0x2c]
xor edx, edx
div ecx
mov ecx, dword [r9 + 0x30]
mov eax, dword [r9 + 0x18]
sub r8d, edx
add ecx, r8d
add eax, ecx
mov rcx, r9
mov dword [r9 + 0x44], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x38]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov qword [rax], 0x1b615
mov qword [rax + 8], 0x3d7f0
mov rax, qword [rax]
mov rcx, qword [r8]
cqo
idiv rcx
mov rax, qword [r8]
mov rcx, qword [r8]
imul rax, rdx
cqo
idiv rcx
mov rcx, r8
mov qword [r8 + 8], rdx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea edi, [rbx - 0x24]
mov ecx, edi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov dword [rax], 0xfc18
mov dword [rax + 4], 0x302a9
mov dword [rax + 8], 0x10ccd
mov dword [rax + 0xc], 0x3926e
mov dword [rax + 0x10], 0x1a841
mov dword [rax + 0x14], 0x3ed0d
mov dword [rax + 0x18], 0x1ea9d
mov dword [rax + 0x1c], 0x78765
mov dword [rax + 0x20], 0x5ebe4
mov eax, dword [rax + 0xc]
mov ecx, dword [r8]
cdq
idiv ecx
mov ecx, dword [r8]
cdq
idiv ecx
mov rcx, r8
mov dword [r8 + 0x20], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x2c]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r10, rax
xor edx, edx
mov dword [rax], 0x5fa87
mov dword [rax + 4], 0x276b4
mov dword [rax + 8], 0x29c54
mov dword [rax + 0xc], 0x3df79
mov dword [rax + 0x10], 0x20f23
mov dword [rax + 0x14], 0x2134c
mov dword [rax + 0x18], 0x6e252
mov r8d, dword [rax + 0x14]
mov eax, dword [rax + 8]
mov ecx, dword [r10 + 0x10]
imul eax, r8d
mov r8d, dword [r10 + 0xc]
div ecx
mov eax, dword [r10 + 4]
mov ecx, dword [r10 + 0x10]
mov r9d, edx
xor edx, edx
imul eax, r8d
div ecx
mov eax, dword [r10 + 0xc]
mov ecx, dword [r10 + 0xc]
sub r9d, edx
xor edx, edx
div ecx
mov rcx, r10
add edx, r9d
mov dword [r10 + 0x18], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, edi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdx, rax
mov dword [rax], 0x3bcd8
mov dword [rax + 4], 0x5f8f7
mov dword [rax + 8], 0x2bd3b
mov dword [rax + 0xc], 0x57203
mov dword [rax + 0x10], 0x6515
mov dword [rax + 0x14], 0x715b9
mov dword [rax + 0x18], 0x67bb6
mov dword [rax + 0x1c], 0x4da0b
mov dword [rax + 0x20], 0x12cee
mov ecx, dword [rax + 0xc]
mov eax, dword [rax]
sub ecx, eax
mov dword [rdx + 0x20], ecx
mov rcx, rdx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx + 0x40]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0x1cb9a
mov qword [rax + 8], 0x62d4c
mov qword [rax + 0x10], 0x2ecde
mov qword [rax + 0x18], 0x73429
mov qword [rax + 0x20], 0x3a076
mov qword [rax + 0x28], 0x5a868
mov qword [rax + 0x30], 0x3901e
mov qword [rax + 0x38], 0x6a007
mov qword [rax + 0x40], 0x2736a
mov qword [rax + 0x48], 0x30580
mov qword [rax + 0x50], 0x305aa
mov qword [rax + 0x58], 0x43f26
mov qword [rax + 0x60], 0x1339b
mov qword [rax + 0x68], 0x34072
mov qword [rax + 0x70], 0x6e64a
mov qword [rax + 0x78], 0x91a0
mov qword [rax + 0x80], 0x1147f
mov rdx, qword [rax + 0x68]
mov rax, qword [rax + 0x60]
add rdx, rax
mov qword [rcx + 0x80], rdx
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 r9, rax
xor edx, edx
mov dword [rax], 0x4e56a
mov dword [rax + 4], 0x710b1
mov dword [rax + 8], 0x4a613
mov dword [rax + 0xc], 0x12ed9
mov dword [rax + 0x10], 0xd81e
mov dword [rax + 0x14], 0x44e9
mov dword [rax + 0x18], 0x4638d
mov dword [rax + 0x1c], 0x5bf3e
mov dword [rax + 0x20], 0x4b5dc
mov dword [rax + 0x24], 0x15612
mov dword [rax + 0x28], 0x51eb3
mov dword [rax + 0x2c], 0x912b
mov dword [rax + 0x30], 0x27c0b
mov dword [rax + 0x34], 0x1cf2b
mov dword [rax + 0x38], 0x79998
mov dword [rax + 0x3c], 0x2b0e9
mov dword [rax + 0x40], 0x2cba
mov dword [rax + 0x44], 0x6fa10
mov ecx, dword [rax + 0x2c]
mov eax, dword [rax + 0x2c]
imul ecx, eax
mov eax, dword [r9 + 0x28]
imul eax, ecx
mov ecx, dword [r9 + 0x10]
imul ecx, eax
mov eax, dword [r9 + 0x10]
mov r8d, dword [r9]
imul eax, ecx
mov ecx, dword [r9 + 0x28]
imul eax, r8d
div ecx
mov ecx, eax
mov eax, dword [r9 + 0x38]
sub ecx, eax
mov dword [r9 + 0x44], ecx
mov rcx, r9
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x30]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
xor edx, edx
mov dword [rax], 0x10255
mov dword [rax + 4], 0x26146
mov dword [rax + 8], 0x5c7e9
mov dword [rax + 0xc], 0x22e81
mov dword [rax + 0x10], 0x64313
mov dword [rax + 0x14], 0x4e78b
mov eax, dword [rax + 0x10]
mov ecx, dword [r8 + 0xc]
div ecx
mov ecx, dword [r8 + 0xc]
mov eax, edx
xor edx, edx
div ecx
mov ecx, dword [r8 + 0x10]
mov eax, edx
xor edx, edx
div ecx
mov ecx, dword [r8 + 0xc]
mov eax, edx
xor edx, edx
div ecx
mov ecx, dword [r8 + 8]
add ecx, eax
mov dword [r8 + 0x14], ecx
mov rcx, r8
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x3c]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rax], 0x1c896
mov r8, rax
mov dword [rax + 4], 0x30c7a
mov dword [rax + 8], 0x6e835
mov edx, dword [rax + 4]
mov eax, dword [rax]
mov ecx, dword [r8 + 4]
imul edx, eax
mov eax, dword [r8 + 4]
add ecx, edx
add eax, ecx
mov rcx, r8
mov dword [r8 + 8], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x10]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
mov dword [rax], 0x368b4
mov dword [rax + 4], 0x1ae94
mov dword [rax + 8], 0x56c94
mov dword [rax + 0xc], 0x13227
mov dword [rax + 0x10], 0x5bc71
mov dword [rax + 0x14], 0x3ca90
mov dword [rax + 0x18], 0x18ff
mov dword [rax + 0x1c], 0x34d49
mov dword [rax + 0x20], 0x56a92
mov dword [rax + 0x24], 0x377da
mov dword [rax + 0x28], 0x333c3
mov dword [rax + 0x2c], 0x4e004
mov dword [rax + 0x30], 0x5a9af
mov dword [rax + 0x34], 0x2d8ab
mov ecx, dword [rax + 0x18]
mov eax, dword [rax]
cdq
idiv ecx
mov ecx, dword [r9 + 0x14]
mov eax, edx
cdq
idiv ecx
mov edx, dword [r9 + 8]
mov r8d, eax
mov eax, dword [r9]
mov ecx, dword [r9 + 0xc]
imul eax, edx
cdq
idiv ecx
mov edx, dword [r9 + 0x24]
lea ecx, [r8 + rax]
mov eax, dword [r9]
imul edx, eax
mov eax, dword [r9 + 0x28]
add edx, ecx
mov rcx, r9
add eax, edx
mov dword [r9 + 0x34], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0x99ed3
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xffffffffffff0d29
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], 0x6dcf0
mov rcx, rdi
mov rbx, rax
mov dword [rax], r14d
mov eax, dword [rdi]
and eax, 0xfffc349b
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, 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], 0x49947
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov ecx, r14d
mov dword [rax], ebp
mov edx, dword [rdi]
mov eax, dword [rbx]
shl edx, cl
add ecx, ebp
xor eax, edx
mov dword [rbx], eax
cmp ecx, r13d
jl 0x14001c8b1
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], bp
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x90
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 r9, 0xffffffffffffffff
mov dword [rsp + 0x28], r14d
mov r8, rsi
mov qword [rsp + 0x20], r14
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov rcx, r13
movsxd r12, eax
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], 0x1fe0b
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov ecx, r14d
mov dword [rax], ebp
mov edx, dword [rdi]
mov eax, dword [rbx]
shl edx, cl
add ecx, ebp
xor eax, edx
mov dword [rbx], eax
cmp ecx, r13d
jl 0x14001c944
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 esi, 8
mov ecx, esi
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], 0xfffac031
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], r14d
mov eax, dword [rbx]
test eax, eax
jns 0x14001c99a
or rax, 0xffffffffffffffff
mov dword [rdi], eax
jmp 0x14001c9d1
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov r9, r15
mov eax, dword [rbx]
mov dword [r8], eax
mov ecx, dword [r8]
mov eax, dword [rbx]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r9, rbp
jne 0x14001c9ae
mov eax, dword [r8]
mov rcx, r8
mov dword [rdi], eax
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, rsi
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], 0x54a8c
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], r14d
mov eax, dword [rbx]
test eax, eax
jns 0x14001ca12
or rax, 0xffffffffffffffff
mov dword [rdi], eax
jmp 0x14001ca49
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov r9, r15
mov eax, dword [rbx]
mov dword [r8], eax
mov eax, dword [rbx]
mov ecx, dword [r8]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r9, rbp
jne 0x14001ca26
mov eax, dword [r8]
mov rcx, r8
mov dword [rdi], eax
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, 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 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], 0xf2683
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov ecx, r14d
mov dword [rax], ebp
mov edx, dword [rdi]
mov eax, dword [rbx]
shl edx, cl
add ecx, ebp
xor eax, edx
mov dword [rbx], eax
cmp ecx, r13d
jl 0x14001ca99
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__]
movabs rcx, 0x12c6c2ba93
mov qword [rax], rcx
mov rcx, rax
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], 0xc16d
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], 0xfff4345e
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], 0xfffc25d3
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, dword [rdi + 0xc]
mov rbx, rax
mov eax, dword [rdi + 0xc]
mov edx, dword [rsi + 8]
imul ecx, eax
mov eax, dword [rsi + 8]
imul edx, eax
add edx, ecx
mov ecx, dword [rbp + 4]
mov eax, dword [rbp + 4]
imul ecx, eax
add ecx, edx
mov dword [rbx], ecx
mov rcx, rbp
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, 8
mov ecx, ebp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffff1d160
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, rax
mov qword [rax], 0x878cd
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea rcx, [rbp - 9]
lea eax, [rbp - 6]
mul r12
cmovo rax, rcx
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
lea esi, [rbp - 4]
mov r13, rax
mov ecx, esi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, esi
mov rbx, rax
mov dword [rax], 0xfff8c5d3
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], 1
mov edx, dword [rax]
mov ecx, r8d
shl edx, cl
inc r8d
mov ecx, dword [rbx]
xor ecx, edx
mov dword [rbx], ecx
cmp r8d, esi
jl 0x14001cbe2
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], 0xffffffffffeb8516
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, rsi
mov rdi, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rdi], 0xd3946
mov rcx, rdi
mov rbx, rax
mov dword [rax], r14d
mov edx, dword [rdi]
and edx, 0x6ddcb
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], 0xffff92fc
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], 0xfffda067
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 4
mov rdi, rax
mov dword [rax + 0xc], 0xfffb4853
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 esi, 4
mov ecx, esi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, esi
mov rdi, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rdi], 0xc48b0
mov rbx, rax
mov dword [rax], r14d
mov ecx, dword [rdi]
and ecx, 0x54cae
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_]
lea ecx, [rsi + 4]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xffffffffffefbad7
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov dword [rsp + 0x28], r12d
mov r8, qword [rsp + 0x60]
or r9, 0xffffffffffffffff
xor edx, edx
mov qword [rsp + 0x20], r13
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea r12d, [rsi + 4]
mov ecx, r12d
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffffd418c
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, r12d
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffff8059b
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, esi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
lea ebp, [rsi - 3]
mov edx, r14d
mov dword [rax], ebp
mov ecx, dword [rax]
add ecx, edx
add edx, ebp
mov dword [rax], ecx
cmp edx, 0xe9
jl 0x14001cdb1
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, rsi
mov rbx, rax
mov dword [rax], 0x12e8e
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, esi
jl 0x14001cded
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 ebx, 0x4c
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov dword [rax], 0x668ec
mov dword [rax + 4], 0x5a1d
mov dword [rax + 8], 0x3305d
mov dword [rax + 0xc], 0x5bff4
mov dword [rax + 0x10], 0xfe4c
mov dword [rax + 0x14], 0xdde6
mov dword [rax + 0x18], 0x662ae
mov dword [rax + 0x1c], 0x3ff24
mov dword [rax + 0x20], 0x735bf
mov dword [rax + 0x24], 0x3b472
mov dword [rax + 0x28], 0xa3a2
mov dword [rax + 0x2c], 0x4ee75
mov dword [rax + 0x30], 0x74868
mov dword [rax + 0x34], 0x1cff2
mov dword [rax + 0x38], 0x1a618
mov dword [rax + 0x3c], 0x3afa6
mov dword [rax + 0x40], 0x60bd4
mov dword [rax + 0x44], 0x76a2a
mov dword [rax + 0x48], 0x1e6ef
mov eax, dword [rax + 0x40]
mov ecx, dword [r8 + 0x20]
cdq
idiv ecx
mov edx, dword [r8 + 8]
mov ecx, dword [r8]
imul eax, edx
cdq
idiv ecx
mov ecx, dword [r8]
mov eax, edx
cdq
idiv ecx
mov rcx, r8
mov dword [r8 + 0x48], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x18]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r10, rax
mov dword [rax], 0x4afe9
mov dword [rax + 4], 0x5e4c6
mov dword [rax + 8], 0x73671
mov dword [rax + 0xc], 0x2f4ab
mov dword [rax + 0x10], 0x21afd
mov dword [rax + 0x14], 0x4e347
mov dword [rax + 0x18], 0x34d88
mov dword [rax + 0x1c], 0xd1e7
mov dword [rax + 0x20], 0x2c1c7
mov dword [rax + 0x24], 0x17e5b
mov dword [rax + 0x28], 0x60a4a
mov dword [rax + 0x2c], 0x6025b
mov dword [rax + 0x30], 0x706de
mov eax, dword [rax + 0x2c]
mov ecx, dword [r10 + 0x18]
imul eax, ecx
mov ecx, dword [r10 + 8]
cdq
idiv ecx
mov ecx, dword [r10 + 0x2c]
mov eax, edx
cdq
idiv ecx
mov eax, dword [r10 + 0x24]
mov rcx, r10
mov r8d, dword [r10 + 0xc]
mov r9d, edx
cdq
idiv r8d
mov r8d, dword [r10 + 0x28]
imul r8d, eax
mov eax, dword [r10 + 0x20]
imul eax, r8d
sub r9d, eax
mov dword [r10 + 0x30], r9d
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x34]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
mov dword [rax], 0x1f111
mov dword [rax + 4], 0x20893
mov dword [rax + 8], 0x53c92
mov dword [rax + 0xc], 0x394d8
mov dword [rax + 0x10], 0x6aacf
mov dword [rax + 0x14], 0x11f7
mov eax, dword [rax + 0x10]
mov ecx, dword [r9 + 0x10]
cdq
idiv ecx
mov eax, dword [r9 + 0x10]
mov ecx, dword [r9 + 0xc]
imul eax, edx
cdq
idiv ecx
mov eax, dword [r9 + 0xc]
mov r8d, dword [r9]
mov ecx, dword [r9 + 0x10]
imul eax, edx
imul r8d, eax
mov eax, dword [r9 + 8]
cdq
idiv ecx
mov rcx, r9
sub r8d, edx
mov dword [r9 + 0x14], r8d
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea edi, [rbx - 0x14]
mov ecx, edi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdx, rax
mov dword [rax], 0x666bd
mov dword [rax + 4], 0x5605e
mov dword [rax + 8], 0x4f37e
mov dword [rax + 0xc], 0x4478
mov dword [rax + 0x10], 0x41344
mov dword [rax + 0x14], 0x2a0ce
mov dword [rax + 0x18], 0x41289
mov dword [rax + 0x1c], 0x77c2b
mov dword [rax + 0x20], 0xa1be
mov dword [rax + 0x24], 0x2fadd
mov dword [rax + 0x28], 0x4193a
mov dword [rax + 0x2c], 0x3f9c8
mov dword [rax + 0x30], 0x1ca4c
mov dword [rax + 0x34], 0x3ace9
mov ecx, dword [rax + 4]
mov eax, dword [rax + 4]
imul ecx, eax
mov eax, dword [rdx + 0x10]
add eax, ecx
mov rcx, rdx
mov dword [rdx + 0x34], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x10]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r10, rax
xor edx, edx
mov dword [rax], 0x2c241
mov dword [rax + 4], 0x74cd8
mov dword [rax + 8], 0x4f9d6
mov dword [rax + 0xc], 0x2bc34
mov dword [rax + 0x10], 0xf538
mov dword [rax + 0x14], 0x24151
mov dword [rax + 0x18], 0x50b43
mov dword [rax + 0x1c], 0x2ed60
mov dword [rax + 0x20], 0x74fae
mov dword [rax + 0x24], 0x730f5
mov dword [rax + 0x28], 0x45c80
mov dword [rax + 0x2c], 0x4166b
mov dword [rax + 0x30], 0x4cf3a
mov dword [rax + 0x34], 0x14a71
mov dword [rax + 0x38], 0x2bf99
mov ecx, dword [rax + 0x30]
mov eax, dword [rax + 0x18]
div ecx
mov ecx, dword [r10 + 0x10]
mov eax, edx
xor edx, edx
div ecx
mov ecx, dword [r10 + 8]
mov eax, edx
xor edx, edx
div ecx
mov ecx, dword [r10 + 0x24]
mov r9d, dword [r10 + 0x34]
mov eax, edx
mov r8d, dword [r10 + 0x20]
xor edx, edx
div ecx
xor edx, edx
mov rcx, r10
imul eax, r9d
div r8d
mov r8d, dword [r10]
mov eax, edx
xor edx, edx
div r8d
mov edx, dword [r10 + 0x2c]
add edx, eax
mov dword [r10 + 0x38], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x30]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r10, rax
mov dword [rax], 0x2ebc2
mov dword [rax + 4], 0x15711
mov dword [rax + 8], 0x1ab96
mov dword [rax + 0xc], 0x1d138
mov dword [rax + 0x10], 0x270e9
mov dword [rax + 0x14], 0x5557d
mov dword [rax + 0x18], 0x34c4e
mov ecx, dword [rax + 0x10]
mov eax, dword [rax + 0xc]
cdq
idiv ecx
mov ecx, dword [r10 + 4]
mov eax, edx
cdq
idiv ecx
mov ecx, dword [r10 + 4]
mov r8d, dword [r10 + 0xc]
mov eax, edx
cdq
idiv ecx
mov rcx, r10
cdq
idiv r8d
mov eax, dword [r10 + 0x14]
mov r8d, dword [r10]
mov r9d, edx
cdq
idiv r8d
sub r9d, eax
mov dword [r10 + 0x18], r9d
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x28]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rax], 0x354e0
mov dword [rax + 4], 0x86fb
mov dword [rax + 8], 0x5886b
mov dword [rax + 0xc], 0x46a9f
mov dword [rax + 0x10], 0x2b7a7
mov dword [rax + 0x14], 0x5b035
mov dword [rax + 0x18], 0x3d21c
mov dword [rax + 0x1c], 0x14ad9
mov dword [rax + 0x20], 0x52da1
mov edx, dword [rax + 0xc]
mov ecx, dword [rax + 8]
imul edx, ecx
mov ecx, dword [rax + 0x18]
sub ecx, edx
mov dword [rax + 0x20], ecx
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx - 0x20]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov dword [rax], 0x6bd3b
mov dword [rax + 4], 0x195bd
xor edx, edx
mov dword [rax + 8], 0x1c06d
mov dword [rax + 0xc], 0x36e78
mov dword [rax + 0x10], 0x663c9
mov dword [rax + 0x14], 0x2450
mov dword [rax + 0x18], 0x5d9af
mov dword [rax + 0x1c], 0x40ac6
mov dword [rax + 0x20], 0x5d2f7
mov dword [rax + 0x24], 0x46cf9
mov dword [rax + 0x28], 0x21479
mov eax, dword [rax + 0x10]
mov ecx, dword [r8 + 8]
div ecx
mov rcx, r8
mov dword [r8 + 0x28], edx
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 edx, r14d
mov dword [rax], ebp
mov ecx, dword [rax]
add ecx, edx
add edx, ebp
mov dword [rax], ecx
cmp edx, 0xe9
jl 0x14001d2a8
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r10, rax
mov dword [rax], 0x14a3d
mov dword [rax + 4], 0x4899d
mov dword [rax + 8], 0xeade
mov dword [rax + 0xc], 0x94a8
mov dword [rax + 0x10], 0x67a4f
mov dword [rax + 0x14], 0x36c4c
mov dword [rax + 0x18], 0x40a29
mov dword [rax + 0x1c], 0x1512e
mov dword [rax + 0x20], 0x2e9b4
mov dword [rax + 0x24], 0x3d275
mov dword [rax + 0x28], 0x66e0b
mov dword [rax + 0x2c], 0x4a44c
mov dword [rax + 0x30], 0x293cc
mov dword [rax + 0x34], 0x19b61
mov dword [rax + 0x38], 0x2934c
mov dword [rax + 0x3c], 0x772ac
mov dword [rax + 0x40], 0x13dbc
mov dword [rax + 0x44], 0x7391b
mov dword [rax + 0x48], 0x1dbb4
mov eax, dword [rax + 0x30]
mov ecx, dword [r10 + 8]
imul eax, ecx
mov ecx, dword [r10 + 0x24]
cdq
idiv ecx
mov ecx, dword [r10 + 0x24]
mov r9d, dword [r10 + 0x20]
mov eax, edx
cdq
idiv ecx
mov rcx, r10
imul r9d, eax
mov eax, dword [r10]
mov r8d, dword [r10]
cdq
idiv r8d
mov eax, dword [r10 + 0x34]
add edx, r9d
add eax, edx
mov dword [r10 + 0x48], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
xor edx, edx
mov dword [rax], 0x62894
mov dword [rax + 4], 0x2bc8d
mov dword [rax + 8], 0x5f540
mov dword [rax + 0xc], 0x7056f
mov dword [rax + 0x10], 0x5129b
mov dword [rax + 0x14], 0x4dbbb
mov dword [rax + 0x18], 0x2073b
mov dword [rax + 0x1c], 0x53ddb
mov dword [rax + 0x20], 0x12eab
mov dword [rax + 0x24], 0x1d92d
mov dword [rax + 0x28], 0x7919
mov dword [rax + 0x2c], 0xf9cb
mov dword [rax + 0x30], 0x6d094
mov dword [rax + 0x34], 0x1068b
mov dword [rax + 0x38], 0x48212
mov dword [rax + 0x3c], 0x5150d
mov dword [rax + 0x40], 0x191d6
mov dword [rax + 0x44], 0x165a1
mov dword [rax + 0x48], 0xe792
mov ecx, dword [rax + 0x18]
mov eax, dword [rax + 0xc]
div ecx
mov ecx, dword [r9 + 0x18]
mov eax, edx
xor edx, edx
div ecx
mov eax, dword [r9 + 0x18]
mov ecx, dword [r9 + 0x38]
imul eax, edx
xor edx, edx
div ecx
mov eax, dword [r9 + 0x44]
mov r8d, dword [r9 + 0x28]
imul eax, edx
xor edx, edx
imul r8d, eax
mov eax, dword [r9 + 0x2c]
mov ecx, dword [r9 + 0x20]
div ecx
mov rcx, r9
sub eax, r8d
mov dword [r9 + 0x48], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x40
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
xor edx, edx
mov dword [rax], 0x32810
mov dword [rax + 4], 0x548a0
mov dword [rax + 8], 0x2c31e
mov dword [rax + 0xc], 0x35725
mov dword [rax + 0x10], 0x70b2f
mov dword [rax + 0x14], 0x1448a
mov dword [rax + 0x18], 0x46518
mov dword [rax + 0x1c], 0x6fd2b
mov dword [rax + 0x20], 0x302a2
mov dword [rax + 0x24], 0x41df3
mov dword [rax + 0x28], 0x688a1
mov dword [rax + 0x2c], 0x72d9
mov dword [rax + 0x30], 0x264c6
mov dword [rax + 0x34], 0x249dd
mov dword [rax + 0x38], 0x288f2
mov dword [rax + 0x3c], 0x6fa49
mov eax, dword [rax + 0x20]
mov ecx, dword [r9 + 0x10]
mov r8d, dword [r9 + 0x10]
div ecx
mov ecx, dword [r9 + 0x34]
sub r8d, eax
mov eax, dword [r9 + 0x30]
mov edx, dword [r9 + 0x14]
imul ecx, eax
mov eax, dword [r9]
imul edx, eax
mov eax, dword [r9 + 0x34]
sub r8d, ecx
mov rcx, r9
sub r8d, edx
sub r8d, eax
mov eax, dword [r9 + 0x10]
add eax, r8d
mov dword [r9 + 0x3c], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r10, rax
mov dword [rax], 0x56907
mov dword [rax + 4], 0x58d3
mov dword [rax + 8], 0x5cd04
mov dword [rax + 0xc], 0x6a20
mov dword [rax + 0x10], 0x1e74f
mov dword [rax + 0x14], 0x369a2
mov dword [rax + 0x18], 0x37f06
mov dword [rax + 0x1c], 0x656bb
mov dword [rax + 0x20], 0x389fc
mov dword [rax + 0x24], 0x22cc5
mov dword [rax + 0x28], 0x405c0
mov dword [rax + 0x2c], 0x3c136
mov dword [rax + 0x30], 0x47a8
mov dword [rax + 0x34], 0x9434
mov eax, dword [rax + 0x28]
mov ecx, dword [r10 + 0x20]
cdq
idiv ecx
mov ecx, dword [r10 + 0x2c]
mov eax, dword [r10]
mov r8d, edx
cdq
idiv ecx
mov eax, dword [r10 + 0x2c]
mov r9d, edx
sub r9d, r8d
mov ecx, dword [r10]
cdq
idiv ecx
mov eax, dword [r10 + 0x20]
mov rcx, r10
add edx, r9d
sub edx, eax
mov eax, dword [r10 + 0x18]
sub edx, eax
mov eax, dword [r10 + 0x24]
sub edx, eax
mov dword [r10 + 0x34], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0x73ec4
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
movabs rcx, 0xffffff57c3bb568a
mov qword [rax], rcx
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rsi
mov rbx, rax
mov dword [rax], 0x39ce3
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], r14d
mov ecx, dword [rbx]
test ecx, ecx
jns 0x14001d653
or rax, 0xffffffffffffffff
mov dword [rdi], eax
jmp 0x14001d689
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, dword [rbx]
mov r9, r15
mov r8, rax
mov dword [rax], ecx
mov eax, dword [rbx]
mov ecx, dword [r8]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r9, rbp
jne 0x14001d666
mov eax, dword [r8]
mov rcx, r8
mov dword [rdi], eax
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, r12
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rsi
mov rbx, rax
mov dword [rax], 0xfff1751d
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], r14d
mov ecx, dword [rbx]
test ecx, ecx
jns 0x14001d6ca
or rax, 0xffffffffffffffff
mov dword [rdi], eax
jmp 0x14001d6fd
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, dword [rbx]
mov r8, rax
mov dword [rax], ecx
mov eax, dword [rbx]
mov ecx, dword [r8]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r15, rbp
jne 0x14001d6da
mov eax, dword [r8]
mov rcx, r8
mov dword [rdi], eax
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, rsi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, r14d
mov r15d, 0xe9
mov dword [rax], ebp
mov ecx, dword [rax]
add ecx, edx
add edx, ebp
mov dword [rax], ecx
cmp edx, r15d
jl 0x14001d723
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_]
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffff6945b
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffffc81b1
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, rsi
mov rbx, rax
mov dword [rax], 0xfff6202b
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov ecx, r14d
mov dword [rax], ebp
mov r8d, dword [rax]
mov edx, dword [rbx]
shl r8d, cl
add ecx, ebp
xor edx, r8d
mov dword [rbx], edx
cmp ecx, esi
jl 0x14001d7a2
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 dword [rax], ebp
mov ecx, dword [rax]
add ecx, r14d
add r14d, ebp
mov dword [rax], ecx
cmp r14d, r15d
jl 0x14001d7d2
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rbx, qword [rsp + 0x68]
mov rax, r13
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret