Function at 0x140059e90
Capabilities:
Create thread

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x48], edx
mov byte [rsp + 0x4c], r8b
mov ecx, 0x10
call fcn.140104610
test rax, rax
je 0x140059659
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rax], xmm0
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140054e20]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x1400596bb
cmp dword [rsp + 0x38], 0
je 0x1400596ce
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call sub.MSVCP140.dll__Thrd_detach
test eax, eax
jne 0x1400596b3
add rsp, 0x58
ret
mov ecx, eax
call sub.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_
nop
mov dword [rsp + 0x38], 0
mov ecx, 6
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
nop
mov ecx, 1
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3
sub rsp, 0x58
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x48], edx
mov ecx, 0x10
call fcn.140104610
test rax, rax
je 0x140059eb4
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rax], xmm0
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140054e50]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x140059f16
cmp dword [rsp + 0x38], 0
je 0x140059f29
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call sub.MSVCP140.dll__Thrd_detach
test eax, eax
jne 0x140059f0e
add rsp, 0x58
ret
mov ecx, eax
call sub.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_
nop
mov dword [rsp + 0x38], 0
mov ecx, 6
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
nop
mov ecx, 1
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3
mov rax, rsp
push rbp
push rsi
push r14
sub rsp, 0x60
movsxd rsi, r8d
mov r14, rcx
movsxd rbp, edx
cmp ebp, esi
je 0x14005d930
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
jge 0x14005d754
mov edx, esi
call fcn.1400596e0
lea edi, [rsi + 1]
add edi, eax
jmp 0x14005d756
mov edi, esi
lea rcx, [rsp + 0x30]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QModelIndex::constructor_void____ptr64]
lea rcx, [rsp + 0x48]
mov rbx, rax
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QModelIndex::constructor_void____ptr64]
mov dword [rsp + 0x28], edi
mov r9d, ebp
mov rdx, rax
mov qword [rsp + 0x20], rbx
mov r8d, ebp
mov rcx, r14
call qword [sym.imp.Qt5Core.dll_protected:_bool___cdecl_QAbstractItemModel::beginMoveRows_class_QModelIndex_const____ptr64__int__int__class_QModelIndex_const____ptr64__int____ptr64]
cmp ebp, esi
jge 0x14005d84e
mov edx, esi
mov qword [rsp + 0x90], r15
mov rcx, r14
call fcn.1400596e0
mov rdi, qword [0x14048b660]
lea edx, [rsi + 1]
add rdi, 0x300
movsxd r15, eax
add edx, r15d
mov rcx, qword [rdi]
cmp edx, dword [rcx + 4]
mov edx, ebp
mov rcx, rdi
jl 0x14005d7da
call fcn.140018e90
mov rdx, rax
mov rcx, rdi
call fcn.14005dc80
jmp 0x14005d814
call fcn.140018e90
mov rcx, qword [0x14048b660]
mov rbx, rax
add rcx, 0x300
call fcn.14002b420
lea rdx, [rsi + 1]
mov r9, rbx
add rdx, r15
mov r8d, 1
shl rdx, 4
mov rcx, rdi
add rdx, rax
call fcn.14005bf90
mov rbx, qword [0x14048b660]
lea rcx, [rbx + 0x300]
call fcn.14002b420
mov rdx, rbp
lea rcx, [rbx + 0x300]
shl rdx, 4
add rdx, rax
lea r8, [rdx + 0x10]
call fcn.14005b230
mov r15, qword [rsp + 0x90]
jmp 0x14005d90f
mov rdi, qword [0x14048b660]
mov edx, ebp
lea rcx, [rdi + 0x300]
call fcn.140018e90
mov rcx, qword [0x14048b660]
mov rbx, rax
add rcx, 0x300
call fcn.14002b420
mov rdx, rsi
lea rcx, [rdi + 0x300]
shl rdx, 4
mov r9, rbx
add rdx, rax
mov r8d, 1
call fcn.14005bf90
mov rbx, qword [0x14048b660]
lea rcx, [rbx + 0x300]
call fcn.14002b420
lea rdx, [rbp + 1]
shl rdx, 4
lea rcx, [rbx + 0x300]
add rdx, rax
lea r8, [rdx + 0x10]
call fcn.14005b230
mov rcx, qword [0x14048b660]
mov edx, esi
add rcx, 0x300
call fcn.140018e90
mov rcx, qword [0x14048b660]
mov edx, esi
add rcx, 0x300
mov rbx, rax
call fcn.140018e90
lea rcx, [r14 + 0x10]
mov rdx, qword [rax]
add rdx, 0x44
call fcn.140055d10
mov rdx, rbx
lea rcx, [rax + 0x20]
call fcn.1400559a0
mov rcx, r14
call fcn.140063450
mov rcx, r14
call qword [sym.imp.Qt5Core.dll_protected:_void___cdecl_QAbstractItemModel::endMoveRows_void____ptr64]
mov rdi, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x80]
add rsp, 0x60
pop r14
pop rsi
pop rbp
ret
mov qword [rsp + 0x18], rbp
push rsi
sub rsp, 0x50
mov rsi, r9
mov rbp, rcx
test edx, edx
jne 0x1400680f7
cmp r8d, 0xc
ja case.default.0x140067f06
lea rcx, [0x140000000]
movsxd rax, r8d
mov edx, dword [rcx + rax*4 + 0x681b4]
add rdx, rcx
jmp rdx
mov r8d, 1
jmp 0x140068196
mov rax, qword [r9 + 8]
mov rcx, rbp
mov edx, dword [rax]
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
jmp fcn.1400681f0
mov rcx, qword [r9 + 8]
mov rax, qword [r9 + 0x10]
mov edx, dword [rcx]
mov rcx, rbp
mov r8d, dword [rax]
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
jmp 0x14005d720
mov rcx, qword [r9 + 8]
mov rax, qword [r9 + 0x10]
mov edx, dword [rcx]
mov rcx, rbp
movzx r8d, byte [rax]
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
jmp 0x140059630
mov rax, qword [r9 + 0x20]
mov rcx, qword [r9 + 0x18]
mov r8, qword [r9 + 0x10]
mov rdx, qword [r9 + 8]
movzx eax, byte [rax]
movzx r9d, byte [rcx]
mov rcx, rbp
mov r8d, dword [r8]
mov edx, dword [rdx]
mov byte [rsp + 0x20], al
call fcn.14005a050
mov rcx, qword [rsi]
test rcx, rcx
je case.default.0x140067f06
mov byte [rcx], al
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
mov rax, qword [r9 + 8]
mov rcx, rbp
mov edx, dword [rax]
call fcn.1400596e0
mov rcx, qword [rsi]
test rcx, rcx
je case.default.0x140067f06
mov dword [rcx], eax
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
mov rax, qword [r9 + 8]
mov rcx, rbp
mov edx, dword [rax]
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
jmp 0x140059e90
mov rdx, qword [r9 + 8]
lea rcx, [rsp + 0x30]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::constructor_class_QString_const____ptr64____ptr64]
mov rdx, rax
mov rcx, rbp
call fcn.140062530
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
mov rcx, qword [r9 + 8]
mov rax, qword [r9 + 0x10]
mov edx, dword [rcx]
mov rcx, rbp
movzx r8d, byte [rax]
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
jmp fcn.140061400
mov rax, qword [r9 + 0x20]
lea rcx, [rsp + 0x30]
mov rdx, qword [r9 + 0x18]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rdi
movzx edi, byte [rax]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::constructor_class_QString_const____ptr64____ptr64]
mov rdx, qword [rsi + 0x10]
lea rcx, [rsp + 0x38]
mov rbx, rax
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::constructor_class_QString_const____ptr64____ptr64]
mov rcx, qword [rsi + 8]
mov r9, rbx
mov r8, rax
mov byte [rsp + 0x20], dil
mov edx, dword [rcx]
mov rcx, rbp
call fcn.14005f3d0
mov rcx, qword [rsi]
mov rdi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
test rcx, rcx
je case.default.0x140067f06
mov dword [rcx], eax
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
mov rdx, qword [r9 + 8]
lea rcx, [rsp + 0x38]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::constructor_class_QString_const____ptr64____ptr64]
mov rdx, rax
mov rcx, rbp
call fcn.14005f980
mov rcx, qword [rsi]
test rcx, rcx
je case.default.0x140067f06
mov byte [rcx], al
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
mov rax, qword [r9 + 8]
mov rcx, rbp
mov edx, dword [rax]
call fcn.14005b3e0
mov rcx, qword [rsi]
test rcx, rcx
je case.default.0x140067f06
mov byte [rcx], al
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
cmp edx, 0xa
jne 0x14006815d
mov rax, qword [r9 + 8]
mov rcx, qword [r9]
mov rdx, qword [rax]
lea rax, [fcn.1400649d0]
cmp rdx, rax
jne 0x140068123
mov dword [rcx], 0
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
lea rax, [fcn.140068230]
cmp rdx, rax
jne 0x140068140
mov dword [rcx], 1
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
lea rax, [fcn.1400681f0]
cmp rdx, rax
jne case.default.0x140067f06
mov dword [rcx], 2
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
cmp edx, 1
jne 0x14006817b
test r8d, r8d
jne case.default.0x140067f06
mov rcx, qword [r9]
movzx eax, byte [rbp + 0x20]
mov byte [rcx], al
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
cmp edx, 2
jne case.default.0x140067f06
test r8d, r8d
jne case.default.0x140067f06
mov rax, qword [r9]
movzx ecx, byte [rax]
cmp byte [rbp + 0x20], cl
je case.default.0x140067f06
mov byte [rbp + 0x20], cl
xor r8d, r8d
xor r9d, r9d
lea rdx, [0x1404851d0]
mov rcx, rbp
call qword [sym.imp.Qt5Core.dll_public:_static_void___cdecl_QMetaObject::activate_class_QObject____ptr64__struct_QMetaObject_const____ptr64__int__void____ptr64____ptr64_]
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret