Function at 0x140115610
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x30
movsxd r14, edx
mov rsi, rcx
mov edx, dword [rcx + 0x424]
mov r11d, r14d
movsxd rbp, r8d
mov eax, r14d
cmp edx, ebp
cmovne r11d, ebp
lea r8, [rax*8]
mov rax, qword [rcx + 0x3d8]
mov r9, qword [rax]
mov rax, qword [r9 + r8]
mov qword [rsp + 0x60], rax
mov eax, ebp
mov r13, qword [r9 + rax*8]
lea rdi, [rax*8]
mov r9, qword [rcx + 0x3b8]
mov rbx, qword [r9 + 0xf0]
cmp dword [rbx + r14*4], 0
jl 0x14011569f
mov rax, qword [r9 + 0x80]
movsxd rcx, dword [rax + r14*4]
test ecx, ecx
js 0x14011569f
mov rax, qword [r9 + 0x98]
cmp dword [rax + rcx*4], 0xffffffff
setne r12b
jmp 0x1401156bc
mov rax, qword [r9 + 0x188]
mov rcx, qword [rax]
mov rax, qword [rcx + r8]
mov rcx, qword [rax + 0x1a8]
movzx r12d, byte [rcx + 0x178]
cmp dword [rbx + rbp*4], 0
lea r8, [rbp*4]
mov qword [rsp + 0x68], r15
jl 0x1401156ef
mov rax, qword [r9 + 0x80]
movsxd rcx, dword [r8 + rax]
test ecx, ecx
js 0x1401156ef
mov rax, qword [r9 + 0x98]
cmp dword [rax + rcx*4], 0xffffffff
setne r15b
jmp 0x14011570c
mov rax, qword [r9 + 0x188]
mov rcx, qword [rax]
mov rax, qword [rcx + rdi]
mov rcx, qword [rax + 0x1a8]
movzx r15d, byte [rcx + 0x178]
cmp dword [rsi + 0x428], 1
jne 0x1401157f9
test edx, edx
js 0x14011572f
test r12b, r12b
je 0x14011594e
test r15b, r15b
je 0x14011594e
mov rax, qword [rsi + 0x228]
movsxd rax, dword [rax + 4]
cmp r14d, dword [rax + rsi + 0x230]
jge 0x1401157ca
cmp ebp, dword [rax + rsi + 0x234]
jge 0x1401157ca
mov rax, qword [rax + rsi + 0x238]
lea rcx, [r14 + r14*2]
mov rcx, qword [rax + rcx*8]
cmp dword [r8 + rcx], 0
jge 0x14011594e
test edx, edx
js 0x140115774
xor ebx, ebx
jmp 0x140115791
mov ebx, 1
mov edx, r14d
mov r8d, ebx
mov rcx, r9
call fcn.14011eb90
mov r9, qword [rsi + 0x3b8]
mov r11d, ebp
mov r8d, ebx
mov edx, r11d
mov rcx, r9
call fcn.14011eb90
mov rax, qword [rsi + 0x228]
mov r8d, ebp
mov edx, r14d
movsxd rcx, dword [rax + 4]
add rcx, 0x228
add rcx, rsi
mov rax, qword [rcx]
call qword [rax + 0x18]
mov rdi, qword [rsp + 0x60]
jmp 0x1401158bf
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.matrix_out_of_memory1
call fcn.1400092d0
lea rdx, [0x1400094a0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rdi, qword [rsp + 0x60]
test edx, edx
js 0x14011582a
mov rax, qword [rdi + 0x1a8]
cmp byte [rax + 0x178], 0
je 0x14011594e
mov rax, qword [r13 + 0x1a8]
cmp byte [rax + 0x178], 0
je 0x14011594e
mov rax, qword [rsi + 0x228]
movsxd rax, dword [rax + 4]
cmp r14d, dword [rax + rsi + 0x230]
jge 0x14011596c
cmp ebp, dword [rax + rsi + 0x234]
jge 0x14011596c
mov rax, qword [rax + rsi + 0x238]
lea rcx, [r14 + r14*2]
mov rcx, qword [rax + rcx*8]
cmp dword [r8 + rcx], 0
jl 0x14011594e
test edx, edx
js 0x140115873
xor ebx, ebx
jmp 0x140115890
mov ebx, 0xfffffffe
mov edx, r14d
mov r8d, ebx
mov rcx, r9
call fcn.14011eb90
mov r9, qword [rsi + 0x3b8]
mov r11d, ebp
mov r8d, ebx
mov edx, r11d
mov rcx, r9
call fcn.14011eb90
mov rax, qword [rsi + 0x228]
mov r8d, ebp
mov edx, r14d
movsxd rcx, dword [rax + 4]
add rcx, 0x228
add rcx, rsi
mov rax, qword [rcx]
call qword [rax + 0x20]
test r12b, r12b
jne 0x1401158d2
test r15b, r15b
jne 0x1401158d2
cmp byte [rsi + 0x42d], r15b
jne 0x14011594e
mov rcx, qword [rdi + 0x1a8]
mov r8d, ebp
mov rax, qword [r13 + 0x1a8]
mov edx, r14d
movzx edi, byte [rcx + 0x178]
movzx ebx, byte [rax + 0x178]
mov byte [rcx + 0x178], r12b
mov rcx, rsi
mov rax, qword [r13 + 0x1a8]
mov byte [rax + 0x178], r15b
call fcn.1401181d0
mov ecx, dword [rsi + 0x428]
mov r9, rax
mov r10, qword [rsi]
mov r8, r13
mov rbp, qword [rsp + 0x60]
mov dword [rsp + 0x20], ecx
mov rdx, rbp
mov rcx, rsi
call qword [r10 + 0x10]
mov rax, qword [rbp + 0x1a8]
mov byte [rax + 0x178], dil
mov rax, qword [r13 + 0x1a8]
mov byte [rax + 0x178], bl
mov r15, qword [rsp + 0x68]
mov al, 1
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
add rsp, 0x30
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.matrix_out_of_memory1
call fcn.1400092d0
lea rdx, [0x1400094a0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3