Function at 0x14002155c
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov r12, rcx
mov r14d, 0x58
mov ecx, r14d
mov r13, rdx
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_]
lea esi, [r14 - 0x54]
mov ecx, esi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
lea r15d, [r14 - 0x57]
xor ebp, ebp
mov edx, ebp
mov edi, 0xe9
mov dword [rax], r15d
mov ecx, dword [rax]
add ecx, edx
add edx, r15d
mov dword [rax], ecx
cmp edx, edi
jl 0x1400215b2
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], bp
mov word [rax], r15w
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, ebp
mov dword [rax], r15d
mov ecx, dword [rax]
add ecx, edx
add edx, r15d
mov dword [rax], ecx
cmp edx, edi
jl 0x1400215f1
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 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], 0x4ea46
mov dword [rax + 4], 0x5c994
mov dword [rax + 8], 0x427c3
mov dword [rax + 0xc], 0x6e66f
mov dword [rax + 0x10], 0x723d4
mov dword [rax + 0x14], 0x355d1
mov dword [rax + 0x18], 0xac1a
mov dword [rax + 0x1c], 0x6959a
mov dword [rax + 0x20], 0x1d7f8
mov dword [rax + 0x24], 0x2b048
mov dword [rax + 0x28], 0x63c9
mov dword [rax + 0x2c], 0x16176
mov dword [rax + 0x30], 0x6c4c
mov dword [rax + 0x34], 0x3fd8d
mov dword [rax + 0x38], 0x6740a
mov dword [rax + 0x3c], 0x1a4e
mov dword [rax + 0x40], 0x16095
mov dword [rax + 0x44], 0x6ac3b
mov dword [rax + 0x48], 0x7143b
mov ecx, dword [rax + 0x38]
mov eax, dword [rax + 0x30]
cdq
idiv ecx
mov ecx, dword [r8 + 0x18]
cdq
idiv ecx
mov rcx, r8
mov dword [r8 + 0x48], eax
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], 0x69484
mov dword [rax + 4], 0x30f14
mov dword [rax + 8], 0x3cf5f
mov dword [rax + 0xc], 0x67c6f
mov dword [rax + 0x10], 0x37ce6
mov dword [rax + 0x14], 0x61312
mov dword [rax + 0x18], 0x48382
mov ecx, dword [rax + 0x10]
mov eax, dword [rax + 8]
div ecx
mov ecx, dword [r8]
mov eax, edx
xor edx, edx
div ecx
mov eax, dword [r8 + 0xc]
mov rcx, r8
sub eax, edx
mov dword [r8 + 0x18], eax
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__]
mov rcx, rax
mov dword [rax], 0x39d50
mov dword [rax + 4], 0x11478
mov dword [rax + 8], 0x39cd0
mov dword [rax + 0xc], 0x27731
mov dword [rax + 0x10], 0x3042d
mov dword [rax + 0x14], 0x21950
mov dword [rax + 0x18], 0x5daff
mov dword [rax + 0x1c], 0x4842d
mov dword [rax + 0x20], 0x21f1a
mov dword [rax + 0x24], 0x1f635
mov dword [rax + 0x28], 0x13ff
mov dword [rax + 0x2c], 0x67f95
mov dword [rax + 0x30], 0x4d87b
mov dword [rax + 0x34], 0x17826
mov dword [rax + 0x38], 0x41979
mov dword [rax + 0x3c], 0x46fc3
mov dword [rax + 0x40], 0xc093
mov dword [rax + 0x44], 0x1b8b6
mov eax, dword [rax + 0x20]
mov edx, dword [rcx + 0x1c]
sub edx, eax
mov eax, dword [rcx + 0x18]
add eax, edx
mov dword [rcx + 0x44], eax
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 r8, rax
xor edx, edx
mov dword [rax], 0x4afe8
mov dword [rax + 4], 0x1ba32
mov dword [rax + 8], 0xcb63
mov dword [rax + 0xc], 0xeea
mov dword [rax + 0x10], 0x55e7f
mov dword [rax + 0x14], 0x5af18
mov dword [rax + 0x18], 0x6d17a
mov dword [rax + 0x1c], 0x6d49e
mov dword [rax + 0x20], 0x6b36d
mov dword [rax + 0x24], 0x1b880
mov dword [rax + 0x28], 0x6b860
mov dword [rax + 0x2c], 0x1e0e
mov dword [rax + 0x30], 0x39057
mov dword [rax + 0x34], 0xf5c4
mov dword [rax + 0x38], 0x59580
mov dword [rax + 0x3c], 0x1f843
mov dword [rax + 0x40], 0x15dcc
mov dword [rax + 0x44], 0x41cde
mov dword [rax + 0x48], 0x46f83
mov eax, dword [rax + 0x30]
mov ecx, dword [r8 + 0xc]
div ecx
mov ecx, dword [r8 + 0xc]
add ecx, eax
mov dword [r8 + 0x48], ecx
mov rcx, r8
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0xd8
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_]
lea ecx, [rbx + 0x1c]
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, rsi
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, ebp
mov dword [rax], r15d
mov ecx, dword [rax]
add ecx, edx
add edx, r15d
mov dword [rax], ecx
cmp edx, edi
jl 0x1400218ae
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 edx, ebp
mov dword [rax], r15d
mov ecx, dword [rax]
add ecx, edx
add edx, r15d
mov dword [rax], ecx
cmp edx, edi
jl 0x1400218d2
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x98
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov qword [rax], 0x589c3
mov qword [rax + 8], 0x6b66d
mov qword [rax + 0x10], 0x5c614
mov qword [rax + 0x18], 0x12e6
mov qword [rax + 0x20], 0x27bf9
mov qword [rax + 0x28], 0x20702
mov qword [rax + 0x30], 0x50a87
mov qword [rax + 0x38], 0x420cd
mov qword [rax + 0x40], 0x3b8cb
mov qword [rax + 0x48], 0x21031
mov qword [rax + 0x50], 0x438d5
mov qword [rax + 0x58], 0x20607
mov qword [rax + 0x60], 0x74f3a
mov qword [rax + 0x68], 0x5a4fd
mov qword [rax + 0x70], 0x265d9
mov qword [rax + 0x78], 0x260fa
mov qword [rax + 0x80], 0x55883
mov qword [rax + 0x88], 0xa285
mov qword [rax + 0x90], 0x5c97e
mov rax, qword [rax + 0x30]
mov rcx, qword [r8 + 0x20]
cqo
idiv rcx
mov rcx, qword [r8 + 0x78]
add rcx, rax
mov qword [r8 + 0x90], rcx
mov rcx, r8
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x1c
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov dword [rax], 0x31c89
mov dword [rax + 4], 0x62d49
mov dword [rax + 8], 0x6fb6d
mov dword [rax + 0xc], 0x16b4a
mov dword [rax + 0x10], 0x6fd24
mov dword [rax + 0x14], 0x5d7d5
mov dword [rax + 0x18], 0x59fbd
mov ecx, dword [rax + 8]
mov eax, dword [rax + 4]
cdq
idiv ecx
mov rcx, r8
mov dword [r8 + 0x18], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x38
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov dword [rax], 0x38c5c
mov dword [rax + 4], 0x174b3
mov dword [rax + 8], 0x5e098
mov dword [rax + 0xc], 0x6eebb
mov dword [rax + 0x10], 0x78528
mov dword [rax + 0x14], 0x2697d
mov dword [rax + 0x18], 0x575c4
mov dword [rax + 0x1c], 0x29a87
mov dword [rax + 0x20], 0x6cea6
mov dword [rax + 0x24], 0xcd0f
mov dword [rax + 0x28], 0x3b9b2
mov dword [rax + 0x2c], 0x5a23b
mov dword [rax + 0x30], 0x38fe
mov dword [rax + 0x34], 0x4e79f
mov eax, dword [rax + 0x18]
mov ecx, dword [r8 + 4]
cdq
idiv ecx
mov eax, dword [r8 + 4]
mov rcx, r8
add eax, edx
mov dword [r8 + 0x34], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x14
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
mov dword [rax], 0x594a3
mov dword [rax + 4], 0x45e7e
mov dword [rax + 8], 0xa4e8
mov dword [rax + 0xc], 0x4dcd1
mov dword [rax + 0x10], 0x3cf51
mov ecx, dword [rax + 0xc]
mov eax, dword [rax + 4]
mov r8d, dword [r9 + 8]
cdq
idiv ecx
mov ecx, dword [r9]
imul r8d, edx
add ecx, r8d
mov dword [r9 + 0x10], ecx
mov rcx, r9
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 r10, rax
mov dword [rax], 0x3dc9b
mov dword [rax + 4], 0x68fbd
mov dword [rax + 8], 0x4520b
mov dword [rax + 0xc], 0x4a3d4
mov dword [rax + 0x10], 0x56561
mov dword [rax + 0x14], 0x3ef03
mov dword [rax + 0x18], 0x5603a
mov dword [rax + 0x1c], 0x341bb
mov dword [rax + 0x20], 0x36a2e
mov dword [rax + 0x24], 0x6c426
mov dword [rax + 0x28], 0xf036
mov dword [rax + 0x2c], 0x4823a
mov dword [rax + 0x30], 0x53eee
mov dword [rax + 0x34], 0x411e8
mov dword [rax + 0x38], 0x4413d
mov dword [rax + 0x3c], 0x5acfc
mov ecx, dword [rax + 0x14]
mov eax, dword [rax + 8]
mov r8d, dword [r10 + 0x1c]
cdq
idiv ecx
mov rcx, r10
mov eax, edx
cdq
idiv r8d
mov eax, dword [r10 + 0x28]
mov r8d, dword [r10 + 0xc]
mov r9d, edx
cdq
idiv r8d
add edx, r9d
mov dword [r10 + 0x3c], edx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
mov qword [rax], 0x506aa
mov qword [rax + 8], 0x2a1cc
mov qword [rax + 0x10], 0x399f5
mov qword [rax + 0x18], 0x5e338
mov qword [rax + 0x20], 0x27dfd
mov qword [rax + 0x28], 0xfd0
mov qword [rax + 0x30], 0x750bc
mov qword [rax + 0x38], 0x63b1
mov qword [rax + 0x40], 0x44794
mov qword [rax + 0x48], 0x300cc
mov qword [rax + 0x50], 0x3e3f9
mov r8, qword [rax + 0x38]
mov rcx, qword [rax + 0x30]
mov rax, qword [rax + 0x38]
imul r8, rcx
mov rcx, qword [r9 + 8]
cqo
idiv rcx
mov rcx, r9
sub rax, r8
mov qword [r9 + 0x50], rax
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__]
mov rcx, rsi
mov rbx, rax
mov dword [rax], 0x5dbc3
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rax], ebp
mov rdi, rax
mov ecx, dword [rbx]
mov r14d, 0xa
test ecx, ecx
jns 0x140021c5f
mov dword [rax], 0xffffffff
jmp 0x140021c95
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, r14
mov r8, rax
mov dword [rax], ecx
mov ecx, dword [r8]
mov eax, dword [rbx]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r9, r15
jne 0x140021c72
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, 8
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xc0934
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov rcx, rsi
mov r15d, ebp
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], 0xfff27ce5
mov rbx, rax
mov dword [rax], ebp
mov ecx, dword [rdi]
and ecx, 0x28c12
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 ebx, 8
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
movabs rcx, 0x8c6be477f9
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], 0x7f6de
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x120
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, ebx
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], 0xfff441f5
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], ebp
mov ecx, dword [rbx]
test ecx, ecx
jns 0x140021d7d
mov dword [rax], 0xffffffff
jmp 0x140021db4
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, r14
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, 1
jne 0x140021d90
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 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], 0x991c0
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
cmp dword [r13], ebp
jle 0x1400222a2
mov rsi, r12
mov rcx, qword [rsi]
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x140021df7
mov rcx, rbx
add r15d, eax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffff73951
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x30
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov qword [rax], 0x561da
mov qword [rax + 8], 0x45f0d
mov qword [rax + 0x10], 0x50729
mov qword [rax + 0x18], 0x2bf77
mov qword [rax + 0x20], 0x21b24
mov qword [rax + 0x28], 0x533e6
mov rdx, qword [rax + 0x10]
mov rcx, qword [rax]
sub rdx, rcx
mov rcx, rax
mov qword [rax + 0x28], rdx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov edi, 0x48
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], 0x5dc30
mov dword [rax + 4], 0xc863
mov dword [rax + 8], 0x32a32
mov dword [rax + 0xc], 0x2ae1e
mov dword [rax + 0x10], 0x2043d
mov dword [rax + 0x14], 0x52f1f
mov dword [rax + 0x18], 0x4624b
mov dword [rax + 0x1c], 0x3dd8d
mov dword [rax + 0x20], 0x16569
mov dword [rax + 0x24], 0x23eea
mov dword [rax + 0x28], 0x39e43
mov dword [rax + 0x2c], 0x39f62
mov dword [rax + 0x30], 0x34cc7
mov dword [rax + 0x34], 0x6558
mov dword [rax + 0x38], 0x16dfc
mov dword [rax + 0x3c], 0x48fad
mov dword [rax + 0x40], 0x35c31
mov dword [rax + 0x44], 0x69903
mov eax, dword [rax + 0x28]
mov ecx, dword [r8 + 4]
cdq
idiv ecx
mov ecx, dword [r8 + 0x30]
mov eax, edx
cdq
idiv ecx
mov eax, dword [r8 + 0x40]
mov rcx, r8
sub edx, eax
mov eax, dword [r8 + 0x3c]
add eax, edx
mov dword [r8 + 0x44], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rdi - 0x1c]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
mov dword [rax], 0x2233f
mov dword [rax + 4], 0x4601c
mov dword [rax + 8], 0x616e6
mov dword [rax + 0xc], 0x474ef
mov dword [rax + 0x10], 0x2e1b2
mov dword [rax + 0x14], 0x41376
mov dword [rax + 0x18], 0x28f98
mov dword [rax + 0x1c], 0x30fe
mov dword [rax + 0x20], 0x2ca27
mov dword [rax + 0x24], 0x18d34
mov dword [rax + 0x28], 0x195c7
mov eax, dword [rax + 0x1c]
mov ecx, dword [r9 + 0x10]
cdq
idiv ecx
mov ecx, dword [r9 + 4]
mov eax, edx
cdq
idiv ecx
mov ecx, dword [r9 + 8]
cdq
idiv ecx
mov eax, dword [r9 + 0x24]
mov ecx, dword [r9 + 8]
mov r8d, edx
imul eax, ecx
mov ecx, dword [r9 + 4]
cdq
idiv ecx
mov ecx, dword [r9 + 4]
add eax, r8d
add ecx, eax
mov dword [r9 + 0x28], ecx
mov rcx, r9
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rdi - 0x20]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov dword [rax], 0x245b6
mov dword [rax + 4], 0x73a73
mov dword [rax + 8], 0x24575
mov dword [rax + 0xc], 0x76141
mov dword [rax + 0x10], 0x2d5b5
mov dword [rax + 0x14], 0x1bac
mov dword [rax + 0x18], 0x6df46
mov dword [rax + 0x1c], 0x5299c
mov dword [rax + 0x20], 0x678f8
mov dword [rax + 0x24], 0x524c5
mov edx, dword [rax + 0x14]
mov ecx, dword [rax + 0xc]
mov eax, dword [rax + 0x18]
imul edx, ecx
mov rcx, r8
add eax, edx
mov dword [r8 + 0x24], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rdi - 0x38]
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], 0x1be20
mov dword [rax + 4], 0x61b3d
mov dword [rax + 8], 0x71569
mov dword [rax + 0xc], 0x4bd7
mov eax, dword [rax + 4]
mov ecx, dword [r8]
div ecx
mov ecx, dword [r8 + 8]
xor edx, edx
div ecx
mov ecx, dword [r8 + 4]
sub eax, ecx
mov ecx, dword [r8]
sub eax, ecx
mov ecx, dword [r8 + 4]
add ecx, eax
mov eax, dword [r8]
add eax, ecx
mov rcx, r8
mov dword [r8 + 0xc], eax
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 r8, rax
mov dword [rax], 0x40d2f
mov dword [rax + 4], 0x30746
mov dword [rax + 8], 0x182a4
mov dword [rax + 0xc], 0x3df4b
mov dword [rax + 0x10], 0x9ad9
mov dword [rax + 0x14], 0x43227
mov dword [rax + 0x18], 0x66b65
mov dword [rax + 0x1c], 0x4f8c3
mov dword [rax + 0x20], 0x6d19b
mov dword [rax + 0x24], 0x5b7ed
mov dword [rax + 0x28], 0x2c6ac
mov dword [rax + 0x2c], 0x44385
mov dword [rax + 0x30], 0x20bc0
mov dword [rax + 0x34], 0x40017
mov dword [rax + 0x38], 0x1ca52
mov dword [rax + 0x3c], 0x5752c
mov dword [rax + 0x40], 0x25dc5
mov dword [rax + 0x44], 0x1f9e0
mov ecx, dword [rax + 0x40]
mov eax, dword [rax + 0x14]
cdq
idiv ecx
mov ecx, dword [r8]
mov eax, dword [r8 + 0x1c]
imul ecx, edx
sub ecx, eax
mov eax, dword [r8 + 0x20]
sub ecx, eax
mov eax, dword [r8 + 0x2c]
add eax, ecx
mov ecx, dword [r8 + 0x1c]
add ecx, eax
mov eax, dword [r8 + 0x1c]
add eax, ecx
mov rcx, r8
mov dword [r8 + 0x44], 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__]
lea ecx, [rdi - 0x44]
mov rbx, rax
mov dword [rax], 0xfff265e5
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], 0
mov ecx, dword [rbx]
test ecx, ecx
jns 0x14002217f
mov dword [rax], 0xffffffff
jmp 0x1400221b8
mov ecx, 4
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, dword [rbx]
mov r9, r14
mov r8, rax
mov dword [rax], ecx
mov ecx, dword [r8]
mov eax, dword [rbx]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r9, 1
jne 0x140022194
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, 8
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, 4
mov rbx, rax
mov dword [rax], 0x464b4
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], 0
mov ecx, dword [rbx]
test ecx, ecx
jns 0x140022200
mov dword [rax], 0xffffffff
jmp 0x140022239
mov ecx, 4
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, dword [rbx]
mov r9, r14
mov r8, rax
mov dword [rax], ecx
mov ecx, dword [r8]
mov eax, dword [rbx]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r9, 1
jne 0x140022215
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 ebx, 4
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, ebx
mov rdi, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rdi], 0xfff94387
mov rbx, rax
mov dword [rax], 0
mov ecx, dword [rdi]
and ecx, 0x25503
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 ebx, 8
inc ebp
add rsi, rbx
cmp ebp, dword [r13]
jl 0x140021df0
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xffffffffffe80560
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], 0xfffb27cd
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], 0xfff5be45
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], 0x12cb7
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov edx, dword [rsi + 8]
mov rbx, rax
mov ecx, dword [rsi + 8]
mov r8d, dword [rbp + 4]
imul edx, ecx
mov ecx, dword [rbp + 4]
imul r8d, ecx
add r8d, edx
mov edx, dword [rdi + 0xc]
mov ecx, dword [rdi + 0xc]
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, 8
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov esi, 4
mov rbx, rax
mov ecx, esi
mov dword [rax], 0xfff2a57f
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
xor ebp, ebp
mov rdi, rax
mov dword [rax], ebp
mov ecx, dword [rbx]
test ecx, ecx
jns 0x140022387
mov dword [rax], 0xffffffff
jmp 0x1400223be
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, r14
mov r8, rax
mov dword [rax], ecx
mov ecx, dword [r8]
mov eax, dword [rbx]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r9, 1
jne 0x14002239a
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, ebp
mov dword [rax], 1
mov ecx, dword [rax]
add ecx, edx
inc edx
mov dword [rax], ecx
cmp edx, 0xe9
jl 0x1400223e1
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ebx, 2
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov word [rax], bp
mov word [rax], bx
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], 0xfffffffffff01e86
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
movsxd rcx, r15d
inc rcx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov ecx, ebx
mov r15, rax
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], 0xfff1bbee
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], ebp
mov ecx, dword [rbx]
test ecx, ecx
jns 0x14002246f
mov dword [rax], 0xffffffff
jmp 0x1400224a6
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, r14
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, 1
jne 0x140022482
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, 8
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffffa8fba
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], 0xfff6d672
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], 0xfff83752
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], 0x23ef0
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 ebx, 8
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
movabs rcx, 0xffffffe6a356edfe
mov qword [rax], rcx
mov rcx, rax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
xor ebp, ebp
lea ecx, [rbx + 0x38]
mov byte [r15], bpl
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov dword [rax], 0x3361f
mov dword [rax + 4], 0x7521e
mov dword [rax + 8], 0x74ef8
mov dword [rax + 0xc], 0x72dc5
mov dword [rax + 0x10], 0x76e0f
mov dword [rax + 0x14], 0x4a4aa
mov dword [rax + 0x18], 0x226c8
mov dword [rax + 0x1c], 0x13ac7
mov dword [rax + 0x20], 0xb7e7
mov dword [rax + 0x24], 0x67c04
mov dword [rax + 0x28], 0x50608
mov dword [rax + 0x2c], 0x661d2
mov dword [rax + 0x30], 0xcc42
mov dword [rax + 0x34], 0x3a24b
mov dword [rax + 0x38], 0x62bb2
mov dword [rax + 0x3c], 0x63a8c
mov eax, dword [rax + 0x14]
mov ecx, dword [r8 + 0xc]
cdq
idiv ecx
mov ecx, dword [r8 + 0xc]
imul ecx, eax
mov eax, dword [r8 + 0x30]
add eax, ecx
mov ecx, dword [r8 + 0x24]
add ecx, eax
mov eax, dword [r8 + 0x14]
add eax, ecx
mov rcx, r8
mov dword [r8 + 0x3c], eax
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 r9, rax
mov dword [rax], 0x6b9f7
mov dword [rax + 4], 0x2ef8b
mov dword [rax + 8], 0x31378
mov dword [rax + 0xc], 0xdc92
mov dword [rax + 0x10], 0x6c8c6
mov dword [rax + 0x14], 0x248e1
mov dword [rax + 0x18], 0x3ac9b
mov dword [rax + 0x1c], 0x461e5
mov dword [rax + 0x20], 0x2ce9f
mov dword [rax + 0x24], 0x1fd05
mov dword [rax + 0x28], 0x5586f
mov dword [rax + 0x2c], 0x1a30e
mov dword [rax + 0x30], 0x71769
mov dword [rax + 0x34], 0x6b770
mov dword [rax + 0x38], 0x65add
mov dword [rax + 0x3c], 0x5afef
mov dword [rax + 0x40], 0x29385
mov dword [rax + 0x44], 0x129f9
mov eax, dword [rax + 0x34]
mov ecx, dword [r9 + 0x28]
cdq
idiv ecx
mov ecx, dword [r9 + 0x2c]
mov eax, edx
cdq
idiv ecx
mov eax, dword [r9 + 0x14]
mov ecx, dword [r9 + 0xc]
mov r8d, edx
cdq
idiv ecx
mov eax, dword [r9 + 0x40]
mov ecx, dword [r9 + 0x20]
imul eax, edx
sub r8d, eax
mov eax, dword [r9 + 0x10]
cdq
idiv ecx
mov eax, dword [r9 + 0x28]
mov rcx, r9
sub r8d, edx
add eax, r8d
mov dword [r9 + 0x44], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx + 0x1c]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r10, rax
mov dword [rax], 0x47aa5
mov dword [rax + 4], 0x3e2d1
mov dword [rax + 8], 0x28df1
mov dword [rax + 0xc], 0x64221
mov dword [rax + 0x10], 0xc696
mov dword [rax + 0x14], 0x30f9b
mov dword [rax + 0x18], 0x571e0
mov dword [rax + 0x1c], 0x4a2e1
mov dword [rax + 0x20], 0x43ad2
mov eax, dword [rax + 0x1c]
mov ecx, dword [r10 + 0x1c]
cdq
mov r8d, dword [r10 + 0x1c]
idiv ecx
mov eax, dword [r10 + 0x10]
mov ecx, dword [r10 + 0xc]
imul eax, ecx
mov ecx, dword [r10]
imul r8d, edx
cdq
idiv ecx
mov eax, dword [r10 + 0x10]
mov ecx, dword [r10 + 0x10]
mov r9d, edx
sub r9d, r8d
cdq
idiv ecx
mov eax, dword [r10 + 8]
mov rcx, r10
sub r9d, edx
sub r9d, eax
mov dword [r10 + 0x20], r9d
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], 0xfffffffffff86ecc
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__]
lea esi, [rbp + 4]
mov rbx, rax
mov ecx, esi
mov dword [rax], 0xfff40c4c
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], ebp
mov ecx, dword [rbx]
test ecx, ecx
jns 0x1400227ee
mov dword [rax], 0xffffffff
jmp 0x140022825
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, r14
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, 1
jne 0x140022801
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 ebx, 2
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov word [rax], bp
mov word [rax], bx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
lea ecx, [rbx + 6]
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
movabs rcx, 0xffffffe89e5787d0
mov qword [rax], rcx
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 rdi, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rdi], 0xfff8ad3c
mov rcx, rdi
mov rbx, rax
mov dword [rax], ebp
mov edx, dword [rdi]
and edx, 0x21709
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, 0x98
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
mov qword [rax], 0x6f563
mov qword [rax + 8], 0x44460
mov qword [rax + 0x10], 0x26195
mov qword [rax + 0x18], 0x2a3d6
mov qword [rax + 0x20], 0x45073
mov qword [rax + 0x28], 0xdd09
mov qword [rax + 0x30], 0x21de2
mov qword [rax + 0x38], 0x384db
mov qword [rax + 0x40], 0x6383e
mov qword [rax + 0x48], 0x9572
mov qword [rax + 0x50], 0x55e0a
mov qword [rax + 0x58], 0x150ea
mov qword [rax + 0x60], 0x2eb52
mov qword [rax + 0x68], 0x11526
mov qword [rax + 0x70], 0x523f4
mov qword [rax + 0x78], 0x1470c
mov qword [rax + 0x80], 0x6cf9c
mov qword [rax + 0x88], 0x1c3f2
mov qword [rax + 0x90], 0x20b9e
mov rcx, qword [rax + 0x68]
mov rax, qword [rax + 0x58]
cqo
idiv rcx
mov rcx, qword [r9 + 0x40]
mov r8, qword [r9 + 0x80]
mov rax, rdx
cqo
idiv rcx
mov rcx, qword [r9 + 0x40]
mov rax, qword [r9]
sub r8, rdx
imul rcx, rax
mov rax, qword [r9 + 0x88]
sub r8, rcx
mov rcx, r9
add rax, r8
mov qword [r9 + 0x90], rax
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 r8, rax
mov dword [rax], 0x51563
mov dword [rax + 4], 0x18a61
mov dword [rax + 8], 0x402c1
mov dword [rax + 0xc], 0x42c0d
mov dword [rax + 0x10], 0x471c0
mov dword [rax + 0x14], 0x58da
xor edx, edx
mov dword [rax + 0x18], 0x1112c
mov dword [rax + 0x1c], 0x12405
mov dword [rax + 0x20], 0x6562d
mov dword [rax + 0x24], 0x227c4
mov dword [rax + 0x28], 0x138fd
mov dword [rax + 0x2c], 0x45870
mov dword [rax + 0x30], 0x42c61
mov dword [rax + 0x34], 0x6ee4f
mov dword [rax + 0x38], 0x588f9
mov dword [rax + 0x3c], 0x56c2f
mov ecx, dword [rax + 0x34]
mov eax, dword [rax + 4]
div ecx
mov ecx, dword [r8 + 0x30]
xor edx, edx
div ecx
mov edx, dword [r8 + 0x34]
mov ecx, dword [r8 + 0x1c]
imul edx, ecx
mov ecx, dword [r8 + 0x28]
sub eax, edx
add ecx, eax
mov dword [r8 + 0x3c], ecx
mov rcx, r8
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x1c
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov dword [rax], 0x58b52
mov dword [rax + 4], 0x438dc
mov dword [rax + 8], 0x42ac5
mov dword [rax + 0xc], 0x47736
mov dword [rax + 0x10], 0xe91
mov dword [rax + 0x14], 0x75dca
mov dword [rax + 0x18], 0x2ccdb
mov edx, dword [rax + 0x14]
mov ecx, dword [rax]
imul edx, ecx
mov ecx, dword [rax + 0x14]
mov eax, dword [rax + 0x14]
sub edx, ecx
mov ecx, dword [r8 + 0x10]
add eax, edx
add ecx, eax
mov eax, dword [r8]
add eax, ecx
mov rcx, r8
mov dword [r8 + 0x18], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x3c
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r11, rax
mov dword [rax], 0x3e04d
mov dword [rax + 4], 0x41218
mov dword [rax + 8], 0x58fa8
mov dword [rax + 0xc], 0x4f1b5
mov dword [rax + 0x10], 0x39d02
mov dword [rax + 0x14], 0x2927a
mov dword [rax + 0x18], 0x665d4
mov dword [rax + 0x1c], 0x4b39d
mov dword [rax + 0x20], 0x23602
mov dword [rax + 0x24], 0x3f8e6
mov dword [rax + 0x28], 0x49f8e
mov dword [rax + 0x2c], 0x659f0
mov dword [rax + 0x30], 0x1d183
mov dword [rax + 0x34], 0x43d92
mov dword [rax + 0x38], 0x4a140
mov ecx, dword [rax + 0x28]
mov eax, dword [rax + 0x10]
cdq
idiv ecx
mov edx, dword [r11 + 0x20]
mov ecx, dword [r11 + 0x24]
mov r8d, dword [r11 + 0x30]
imul eax, edx
cdq
idiv ecx
mov r9d, eax
mov eax, dword [r11]
cdq
mov rcx, r11
idiv r8d
mov eax, dword [r11 + 8]
mov r8d, dword [r11]
mov r10d, edx
cdq
sub r10d, r9d
idiv r8d
sub r10d, edx
mov dword [r11 + 0x38], r10d
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x38
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r10, rax
mov qword [rax], 0x60da4
mov qword [rax + 8], 0x1ab05
mov qword [rax + 0x10], 0x26c5
mov qword [rax + 0x18], 0x63c3c
mov qword [rax + 0x20], 0x726a0
mov qword [rax + 0x28], 0x412af
mov qword [rax + 0x30], 0x4cb51
mov rax, qword [rax + 0x18]
mov rcx, qword [r10 + 0x10]
cqo
idiv rcx
mov rdx, qword [r10 + 0x28]
mov rcx, r10
mov r8, qword [r10 + 8]
imul rax, rdx
cqo
idiv r8
mov r9, rax
mov rax, qword [r10 + 0x28]
mov r8, qword [r10 + 8]
cqo
idiv r8
sub r9, rax
mov qword [r10 + 0x30], r9
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x24
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r8, rax
mov dword [rax], 0x61648
mov dword [rax + 4], 0x587c0
mov dword [rax + 8], 0x254c8
mov dword [rax + 0xc], 0xb398
mov dword [rax + 0x10], 0x4873e
mov dword [rax + 0x14], 0x63b91
mov dword [rax + 0x18], 0x4dc7b
mov dword [rax + 0x1c], 0x4f5b3
mov dword [rax + 0x20], 0x5bac0
mov eax, dword [rax + 8]
mov ecx, dword [r8 + 8]
cdq
idiv ecx
mov eax, dword [r8 + 0x10]
mov ecx, dword [r8 + 0xc]
imul eax, edx
imul ecx, eax
mov eax, dword [r8]
imul eax, ecx
mov rcx, r8
mov dword [r8 + 0x20], eax
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], 0xfff6be8b
mov rbx, rax
mov dword [rax], ebp
mov ecx, dword [rdi]
and ecx, 0x120ef
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 dword [rsp + 0x58], ebp
cmp dword [r13], ebp
jle 0x140023143
lea rcx, [r15 - 1]
inc rcx
cmp byte [rcx], bpl
jne 0x140022cc2
mov r8, qword [r12]
xor edx, edx
mov al, byte [r8 + rdx]
mov byte [rcx + rdx], al
inc rdx
test al, al
jne 0x140022cd0
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], 0x73160
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], 0xea390
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], 0xfffa25a3
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, 8
mov ecx, ebp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
lea esi, [rbp - 4]
mov rbx, rax
mov ecx, esi
mov dword [rax], 0xb5fd
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
xor eax, eax
mov dword [rdi], eax
mov ecx, dword [rbx]
test ecx, ecx
jns 0x140022daa
mov dword [rdi], 0xffffffff
jmp 0x140022de1
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, r14
mov r8, rax
mov dword [rax], ecx
mov ecx, dword [r8]
mov eax, dword [rbx]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r9, 1
jne 0x140022dbd
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, rbp
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rcx, rax
mov qword [rax], 0xfffffffffff45829
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], 0x3be94
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], 0x553c7
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], 0x4cbb6
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, 0x40
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
mov dword [rax], 0x2f4b1
mov dword [rax + 4], 0x6cc71
mov dword [rax + 8], 0x5e48b
mov dword [rax + 0xc], 0x4065
mov dword [rax + 0x10], 0x2bd22
mov dword [rax + 0x14], 0xb1a8
mov dword [rax + 0x18], 0x24375
mov dword [rax + 0x1c], 0x64815
mov dword [rax + 0x20], 0x565f5
mov dword [rax + 0x24], 0x5a075
mov dword [rax + 0x28], 0x6ca83
mov dword [rax + 0x2c], 0xa7b4
mov dword [rax + 0x30], 0x7987c
mov dword [rax + 0x34], 0x3c465
mov dword [rax + 0x38], 0x5731d
mov dword [rax + 0x3c], 0x588a4
mov eax, dword [rax + 0x28]
mov ecx, dword [r9 + 0x10]
cdq
idiv ecx
mov eax, dword [r9 + 0x30]
mov ecx, dword [r9 + 0x24]
mov r8d, dword [r9 + 0x20]
imul eax, edx
imul ecx, eax
mov eax, dword [r9 + 0x38]
cdq
imul r8d, ecx
mov ecx, dword [r9 + 0x10]
idiv ecx
mov ecx, dword [r9 + 0x1c]
mov eax, edx
cdq
idiv ecx
sub r8d, eax
mov rcx, r9
mov eax, dword [r9 + 0x14]
add eax, r8d
mov dword [r9 + 0x3c], eax
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
mov ecx, 0x1c
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov r9, rax
mov dword [rax], 0x2702d
mov dword [rax + 4], 0x446da
mov dword [rax + 8], 0x37e6f
mov dword [rax + 0xc], 0x42ad4
mov dword [rax + 0x10], 0x2b23f
mov dword [rax + 0x14], 0x713cb
mov dword [rax + 0x18], 0x44b78
mov eax, dword [rax + 0x14]
mov ecx, dword [r9 + 8]
cdq
mov r8d, dword [r9 + 4]
idiv ecx
mov ecx, dword [r9]
mov eax, dword [r9 + 0xc]
imul r8d, ecx
mov rcx, r9
add r8d, edx
sub r8d, eax
mov dword [r9 + 0x18], r8d
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 r8, rax
mov dword [rax], 0x20002
mov dword [rax + 4], 0x301e2
mov dword [rax + 8], 0x162fa
mov dword [rax + 0xc], 0x265e7
mov dword [rax + 0x10], 0x3dcb2
mov dword [rax + 0x14], 0x63fdd
mov dword [rax + 0x18], 0x79144
mov dword [rax + 0x1c], 0x788bc
mov dword [rax + 0x20], 0x334c1
mov dword [rax + 0x24], 0x13b65
mov dword [rax + 0x28], 0x46c6c
mov dword [rax + 0x2c], 0x37d5a
mov dword [rax + 0x30], 0xfeaa
mov dword [rax + 0x34], 0x13156
mov dword [rax + 0x38], 0x249a6
mov dword [rax + 0x3c], 0x31878
mov dword [rax + 0x40], 0x5f9a9
mov dword [rax + 0x44], 0x1f9cf
mov ecx, dword [rax + 0x20]
mov eax, dword [rax + 0x18]
imul ecx, eax
mov eax, dword [r8 + 0x1c]
add eax, ecx
mov ecx, dword [r8 + 0x1c]
mov edx, dword [r8 + 0x18]
add ecx, eax
mov eax, dword [r8 + 0x18]
add edx, ecx
add eax, edx
mov rcx, r8
mov dword [r8 + 0x44], eax
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], 0xfffa8088
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], 0xfff1d5b7
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], 0xfff38a91
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 eax, dword [rsp + 0x58]
add r12, 8
inc eax
mov ebp, 0
mov dword [rsp + 0x58], eax
cmp eax, dword [r13]
jl 0x140022cbe
lea esi, [rbp + 4]
mov ecx, 8
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], 0xfff0d3d3
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov rdi, rax
mov dword [rax], ebp
mov ecx, dword [rbx]
test ecx, ecx
jns 0x140023173
mov dword [rax], 0xffffffff
jmp 0x1400231a7
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 ecx, dword [r8]
mov eax, dword [rbx]
cdq
idiv ecx
mov ecx, dword [r8]
add ecx, eax
mov dword [r8], ecx
sub r14, 1
jne 0x140023183
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, rsi
mov rdi, rax
call qword [sym.imp.msvcrt.dll_void____ptr64___cdecl_operator_new___unsigned_long_long_unsigned___int64__]
mov dword [rdi], 0xc4ef1
mov rbx, rax
mov dword [rax], ebp
mov ecx, dword [rdi]
and ecx, 0xfffe5cb9
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, 0xa0
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 + 0x50]
mov rax, r15
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret