Function at 0x140059da0
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.1401155a8
test rax, rax
je 0x140059569
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, [0x140054d30]
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 0x1400595cb
cmp dword [rsp + 0x38], 0
je 0x1400595de
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call sub.MSVCP140.dll__Thrd_detach
test eax, eax
jne 0x1400595c3
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.1401155a8
test rax, rax
je 0x140059dc4
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, [0x140054d60]
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 0x140059e26
cmp dword [rsp + 0x38], 0
je 0x140059e39
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call sub.MSVCP140.dll__Thrd_detach
test eax, eax
jne 0x140059e1e
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 0x14005d840
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
jge 0x14005d664
mov edx, esi
call fcn.1400595f0
lea edi, [rsi + 1]
add edi, eax
jmp 0x14005d666
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 0x14005d75e
mov edx, esi
mov qword [rsp + 0x90], r15
mov rcx, r14
call fcn.1400595f0
mov rdi, qword [0x140492660]
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 0x14005d6ea
call fcn.140018fa0
mov rdx, rax
mov rcx, rdi
call fcn.14005db90
jmp 0x14005d724
call fcn.140018fa0
mov rcx, qword [0x140492660]
mov rbx, rax
add rcx, 0x300
call fcn.14002b530
lea rdx, [rsi + 1]
mov r9, rbx
add rdx, r15
mov r8d, 1
shl rdx, 4
mov rcx, rdi
add rdx, rax
call fcn.14005bea0
mov rbx, qword [0x140492660]
lea rcx, [rbx + 0x300]
call fcn.14002b530
mov rdx, rbp
lea rcx, [rbx + 0x300]
shl rdx, 4
add rdx, rax
lea r8, [rdx + 0x10]
call fcn.14005b140
mov r15, qword [rsp + 0x90]
jmp 0x14005d81f
mov rdi, qword [0x140492660]
mov edx, ebp
lea rcx, [rdi + 0x300]
call fcn.140018fa0
mov rcx, qword [0x140492660]
mov rbx, rax
add rcx, 0x300
call fcn.14002b530
mov rdx, rsi
lea rcx, [rdi + 0x300]
shl rdx, 4
mov r9, rbx
add rdx, rax
mov r8d, 1
call fcn.14005bea0
mov rbx, qword [0x140492660]
lea rcx, [rbx + 0x300]
call fcn.14002b530
lea rdx, [rbp + 1]
shl rdx, 4
lea rcx, [rbx + 0x300]
add rdx, rax
lea r8, [rdx + 0x10]
call fcn.14005b140
mov rcx, qword [0x140492660]
mov edx, esi
add rcx, 0x300
call fcn.140018fa0
mov rcx, qword [0x140492660]
mov edx, esi
add rcx, 0x300
mov rbx, rax
call fcn.140018fa0
lea rcx, [r14 + 0x10]
mov rdx, qword [rax]
add rdx, 0x44
call fcn.140055c20
mov rdx, rbx
lea rcx, [rax + 0x20]
call fcn.1400558b0
mov rcx, r14
call fcn.140063360
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 0x140068007
cmp r8d, 0xc
ja case.default.0x140067e16
lea rcx, [0x140000000]
movsxd rax, r8d
mov edx, dword [rcx + rax*4 + 0x680c4]
add rdx, rcx
jmp rdx
mov r8d, 1
jmp 0x1400680a6
mov rax, qword [r9 + 8]
mov rcx, rbp
mov edx, dword [rax]
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
jmp fcn.140068100
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 0x14005d630
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 0x140059540
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.140059f60
mov rcx, qword [rsi]
test rcx, rcx
je case.default.0x140067e16
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.1400595f0
mov rcx, qword [rsi]
test rcx, rcx
je case.default.0x140067e16
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 0x140059da0
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.140062440
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.140061310
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.14005f2e0
mov rcx, qword [rsi]
mov rdi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
test rcx, rcx
je case.default.0x140067e16
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.14005f890
mov rcx, qword [rsi]
test rcx, rcx
je case.default.0x140067e16
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.14005b2f0
mov rcx, qword [rsi]
test rcx, rcx
je case.default.0x140067e16
mov byte [rcx], al
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
cmp edx, 0xa
jne 0x14006806d
mov rax, qword [r9 + 8]
mov rcx, qword [r9]
mov rdx, qword [rax]
lea rax, [fcn.1400648e0]
cmp rdx, rax
jne 0x140068033
mov dword [rcx], 0
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
lea rax, [fcn.140068140]
cmp rdx, rax
jne 0x140068050
mov dword [rcx], 1
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
lea rax, [fcn.140068100]
cmp rdx, rax
jne case.default.0x140067e16
mov dword [rcx], 2
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rsi
ret
cmp edx, 1
jne 0x14006808b
test r8d, r8d
jne case.default.0x140067e16
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.0x140067e16
test r8d, r8d
jne case.default.0x140067e16
mov rax, qword [r9]
movzx ecx, byte [rax]
cmp byte [rbp + 0x20], cl
je case.default.0x140067e16
mov byte [rbp + 0x20], cl
xor r8d, r8d
xor r9d, r9d
lea rdx, [0x14048c1d0]
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