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

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x10], rdx
push rbx
push r15
sub rsp, 0x158
mov qword [r11 - 0x18], rbp
xor eax, eax
xor ebp, ebp
mov qword [r11 - 0x20], rsi
mov qword [r11 - 0x28], rdi
mov ebx, ebp
mov qword [r11 - 0x30], r12
mov rsi, rcx
mov qword [r11 - 0x38], r13
mov r13, r8
mov dword [rsp + 0x6c], ebp
mov dword [rsp + 0x94], ebp
mov qword [rsp + 0x70], rax
mov qword [r11 - 0xb0], rax
mov r15, qword [rcx]
mov qword [rsp + 0xd0], r15
mov dword [rsp + 0x80], 0xffffffff
mov qword [rsp + 0x60], rbx
mov dword [rsp + 0x84], ebp
mov dword [rsp + 0x88], ebp
mov dword [rsp + 0x90], ebp
mov dword [rsp + 0x98], ebp
mov dword [rsp + 0x8c], ebp
mov dword [rsp + 0xa0], ebp
cmp dword [rcx + 0x30], eax
jne 0x140063d0a
cmp byte [r15 + 0x55], al
jne 0x140063d0a
mov qword [r11 - 0x40], r14
call fcn.1400632d0
mov r14, rax
test rax, rax
je 0x140063cf5
mov rax, qword [rsi]
mov edx, ebp
test dword [rax + 0x2c], 0x1000000
je 0x1400636e5
mov rdx, r14
mov rcx, rsi
call fcn.1400825b0
mov rdx, rax
mov rcx, rdx
test rdx, rdx
je 0x140063705
nop dword [rax]
cmp byte [rcx + 0x10], 0x6d
jne 0x1400636fc
movzx eax, byte [rcx + 0x11]
or ebx, eax
mov rcx, qword [rcx + 0x40]
test rcx, rcx
jne 0x1400636f0
mov r12, qword [r14 + 0x18]
test ebx, ebx
mov rdi, rbp
mov qword [rsp + 0xd8], r12
cmovne rdi, rdx
mov ebx, 1
mov qword [rsp + 0xe0], rdi
test rdi, rdi
jne 0x140063763
mov rax, qword [rsi]
test dword [rax + 0x2c], 0x80000
je 0x140063761
mov rcx, qword [r14 + 0x70]
lea r8, [rsp + 0x170]
mov rdx, qword [r14]
add rcx, 0x50
call fcn.140019b10
test rax, rax
je 0x14006375b
cmp qword [rax + 0x10], rbp
jne 0x140063763
cmp qword [r14 + 0x20], rbp
jne 0x140063763
mov ebx, ebp
mov rdx, r14
mov rcx, rsi
call fcn.14005ddd0
test eax, eax
jne 0x140064282
mov r8d, ebp
test rdi, rdi
mov rdx, r14
mov rcx, rsi
setne r8b
call fcn.1400633b0
test eax, eax
jne 0x140064282
mov rdx, qword [r14 + 0x70]
mov rcx, r15
call fcn.140075940
mov r8, qword [r14]
xor r9d, r9d
movsxd rbp, eax
mov rax, qword [r15 + 0x20]
mov rcx, rbp
shl rcx, 5
lea edx, [r9 + 9]
mov rcx, qword [rcx + rax]
mov qword [rsp + 0x20], rcx
mov rcx, rsi
call fcn.1400598f0
mov dword [rsp + 0x170], eax
cmp eax, 1
je 0x140063cf0
mov r13d, dword [rsi + 0x34]
xor edx, edx
mov rax, qword [rsp + 0x178]
mov dword [rsp + 0x68], r13d
mov dword [rsp + 0x9c], edx
mov dword [rax + 0x50], r13d
inc dword [rsi + 0x34]
mov rax, qword [r14 + 0x10]
mov ecx, dword [rsi + 0x34]
test rax, rax
je 0x140063827
nop word [rax + rax]
inc ecx
inc edx
mov dword [rsi + 0x34], ecx
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140063810
mov dword [rsp + 0x9c], edx
test r12, r12
je 0x14006384a
mov rax, qword [rsi + 0x210]
mov qword [rsp + 0x70], rax
mov rax, qword [r14]
mov qword [rsi + 0x210], rax
mov qword [rsp + 0xb8], rsi
mov rdi, qword [rsi + 0x10]
test rdi, rdi
jne 0x140063867
mov rcx, rsi
call fcn.14007a150
mov rdi, rax
test rax, rax
je 0x140063ce8
cmp byte [rsi + 0x1e], 0
jne 0x140063874
or dword [rdi + 0xc0], 0x10
mov r8d, ebp
mov edx, 1
mov rcx, rsi
call fcn.140061b20
test r12, r12
je 0x1400638ac
mov r8, qword [rsp + 0x180]
mov r9d, r13d
mov rdx, r14
mov rcx, rsi
call fcn.140063450
mov dword [rsp + 0x94], r13d
mov dword [rsp + 0x6c], r13d
mov rax, qword [rsp + 0x178]
lea rcx, [rsp + 0xe8]
mov r13, qword [rsp + 0x180]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov qword [rsp + 0x118], 0
mov rdx, r13
mov qword [rsp + 0xe8], rsi
movdqu xmmword [rsp + 0xf8], xmm0
mov qword [rsp + 0xf0], rax
movdqu xmmword [rsp + 0x108], xmm1
call fcn.14004c1f0
test eax, eax
jne 0x140063cf0
test byte [r15 + 0x2c], 0x80
lea r12, [rsi + 0x38]
mov qword [rsp + 0x78], r12
je 0x14006393b
inc dword [r12]
xor r8d, r8d
mov eax, dword [r12]
mov rcx, rdi
mov r9d, eax
mov dword [rsp + 0x80], eax
lea edx, [r8 + 0x4d]
call fcn.1400371a0
jmp 0x140063940
mov qword [rsp + 0x78], r12
cmp dword [rsp + 0x170], 0
jne 0x140063a82
test r13, r13
jne 0x140063a82
test ebx, ebx
jne 0x140063a82
cmp dword [r14 + 0x54], ebx
jne 0x140063a82
mov rax, qword [r14]
mov r9b, 1
mov r8d, dword [r14 + 0x38]
mov edx, ebp
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.1400599b0
test byte [r14 + 0x40], 0x20
jne 0x140063a4d
mov rax, qword [rdi + 0x18]
movsxd rdx, dword [rdi + 0xb8]
mov rbx, qword [r14]
mov r8d, dword [r14 + 0x38]
mov r10d, dword [rsp + 0x80]
cmp dword [rax + 0x3c], edx
jg 0x1400639c5
mov r9d, ebp
mov dword [rsp + 0x20], r10d
mov edx, 0x83
mov rcx, rdi
call fcn.140036ff0
mov edx, eax
jmp 0x1400639f3
lea rcx, [rdx + rdx*2]
xor r9d, r9d
lea eax, [rdx + 1]
mov dword [rdi + 0xb8], eax
mov rax, qword [rdi + 0x68]
mov dword [rax + rcx*8], 0x83
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r9
mov rcx, qword [rdi]
cmp byte [rcx + 0x55], 0
je 0x140063a0b
mov r8, rbx
mov edx, 0xfffffffe
call fcn.140037e90
jmp 0x140063a4d
test edx, edx
jns 0x140063a17
mov edx, dword [rdi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x68]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x140063a40
mov r9d, 0xfffffffe
mov r8, rbx
mov rcx, rdi
call fcn.1400380f0
jmp 0x140063a4d
test rbx, rbx
je 0x140063a4d
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xfe
mov rbx, qword [r14 + 0x10]
test rbx, rbx
je 0x1400641e4
nop word [rax + rax]
mov r8d, dword [rbx + 0x58]
mov r9d, ebp
mov edx, 0x83
mov rcx, rdi
call fcn.1400371a0
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140063a60
jmp 0x1400641e4
test byte [rsp + 0x118], 0x40
mov ecx, 1
mov eax, 0x414
mov r13d, 0x41c
cmovne ebx, ecx
test ebx, ebx
cmovne r13w, ax
test byte [r14 + 0x40], 0x20
jne 0x140063ae1
inc dword [rsi + 0x38]
lea r12, [rsi + 0x38]
xor eax, eax
mov word [rsp + 0x188], cx
mov ebp, eax
mov qword [rsp + 0x78], r12
mov eax, dword [r12]
lea edx, [rcx + 0x4f]
mov r9d, eax
mov dword [rsp + 0x90], eax
xor r8d, r8d
mov rcx, rdi
call fcn.1400371a0
jmp 0x140063b57
mov rbp, qword [r14 + 0x10]
test rbp, rbp
je 0x140063b02
nop word [rax + rax]
mov eax, dword [rbp + 0x64]
and al, 3
cmp al, 2
je 0x140063b02
mov rbp, qword [rbp + 0x28]
test rbp, rbp
jne 0x140063af0
movsx ebx, word [rbp + 0x5e]
mov edx, 0x6c
mov eax, dword [r12]
mov r9d, ebx
mov word [rsp + 0x188], bx
lea ecx, [rax + 1]
add eax, ebx
mov dword [rsp + 0x84], ecx
mov ecx, dword [rsi + 0x34]
mov r8d, ecx
mov dword [r12], eax
mov dword [rsp + 0x88], ecx
lea eax, [rcx + 1]
mov rcx, rdi
mov dword [rsi + 0x34], eax
call fcn.1400371a0
mov rdx, rbp
mov dword [rsp + 0xa0], eax
mov rcx, rsi
call fcn.1400382b0
mov eax, dword [rsp + 0x68]
xor r9d, r9d
mov rdx, qword [rsp + 0x178]
inc eax
mov dword [rsp + 0x30], eax
mov rcx, rsi
mov word [rsp + 0x28], r13w
xor eax, eax
mov r13, qword [rsp + 0x180]
mov r8, r13
mov qword [rsp + 0x20], rax
call fcn.140094910
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x140063cf0
test byte [r15 + 0x2c], 0x80
mov rbx, qword [rax + 0x24]
movzx eax, byte [rax + 0x3d]
mov byte [rsp + 0x170], al
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xb0], rbx
je 0x140063be0
mov r10d, dword [rsp + 0x80]
mov r9d, 1
mov r8d, r10d
mov rcx, rdi
lea edx, [r9 + 0x5b]
call fcn.1400371a0
test rbp, rbp
je 0x140063c66
movsx rax, word [rsp + 0x188]
mov qword [rsp + 0xc0], rax
test rax, rax
jle 0x140063c57
mov r13d, dword [rsp + 0x84]
xor eax, eax
mov rbx, qword [rsp + 0xc0]
mov r12d, eax
mov r15d, dword [rsp + 0x68]
nop dword [rax]
mov rax, qword [rbp + 8]
mov r8d, r15d
mov rdx, r14
mov dword [rsp + 0x20], r13d
mov rcx, rdi
movsx r9d, word [rax + r12*2]
call fcn.140052420
inc r13d
inc r12
cmp r12, rbx
jl 0x140063c20
mov rbx, qword [rsp + 0xc8]
mov r15, qword [rsp + 0xd0]
mov r13d, dword [rsp + 0x84]
mov r12, qword [rsp + 0x78]
jmp 0x140063c98
mov eax, dword [r12]
mov r8d, 0xffffffff
mov r9d, dword [rsp + 0x68]
inc eax
mov byte [rsp + 0x28], 0
mov rdx, r14
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140052560
mov r13d, eax
cmp eax, dword [r12]
jle 0x140063c98
mov dword [r12], eax
cmp byte [rsp + 0x170], 0
je 0x140063e03
movzx eax, word [rsp + 0x188]
mov rcx, r15
movsxd r12, dword [rsp + 0x9c]
mov dword [rsp + 0x78], eax
lea eax, [r12 + 2]
movsxd rdx, eax
call fcn.1400157c0
mov qword [rsp + 0x60], rax
mov rcx, rax
test rax, rax
jne 0x140063d94
mov rcx, qword [rsp + 0xa8]
call fcn.140095700
mov r13, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x178]
mov rax, qword [rsp + 0x70]
mov r14, qword [rsp + 0x128]
mov rsi, qword [rsp + 0xb8]
mov r12, qword [rsp + 0x138]
mov rdi, qword [rsp + 0x140]
mov rbp, qword [rsp + 0x150]
test rsi, rsi
je 0x140063d36
mov qword [rsi + 0x210], rax
mov rcx, r15
call fcn.140061070
mov rsi, qword [rsp + 0x148]
test r13, r13
je 0x140063d56
mov rdx, r13
mov rcx, r15
call fcn.14004dd40
mov r13, qword [rsp + 0x130]
test rbx, rbx
je 0x1400642c7
test r15, r15
je 0x1400642bf
cmp qword [r15 + 0x298], 0
je 0x14006428a
mov rdx, rbx
mov rcx, r15
call fcn.140015440
add rsp, 0x158
pop r15
pop rbx
ret
lea eax, [r12 + 1]
mov edx, 1
movsxd r8, eax
call fcn.1400a6c90
mov rdx, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x68]
mov byte [r12 + rdx + 1], 0
test ebx, ebx
js 0x140063dc2
sub ebx, ecx
movsxd rax, ebx
mov byte [rax + rdx], 0
mov r12d, dword [rsp + 0xb4]
test r12d, r12d
js 0x140063dda
mov eax, r12d
sub eax, ecx
cdqe
mov byte [rax + rdx], 0
mov eax, dword [rsp + 0xa0]
test eax, eax
je 0x140063def
mov edx, eax
mov rcx, rdi
call fcn.140038090
mov rcx, rdi
call fcn.140037930
mov dword [rsp + 0x98], eax
jmp 0x140063eac
test rbp, rbp
je 0x140063e75
inc dword [r12]
xor eax, eax
mov rcx, qword [rsi]
mov rdx, rbp
mov r13d, dword [r12]
movsx ebx, word [rsp + 0x188]
mov dword [rsp + 0x78], eax
call fcn.14006b7b0
mov r12d, dword [rsp + 0x84]
mov r9d, ebx
mov dword [rsp + 0x30], ebx
mov r8d, r12d
mov qword [rsp + 0x28], rax
mov edx, 0x64
mov rcx, rdi
mov dword [rsp + 0x20], r13d
call fcn.1400374e0
mov r8d, dword [rsp + 0x88]
mov r9d, r13d
mov edx, 0x7e
mov dword [rsp + 0x28], ebx
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.140037810
jmp 0x140063e97
mov r8d, dword [rsp + 0x90]
mov eax, 1
mov r9d, r13d
mov word [rsp + 0x78], ax
mov edx, 0x8f
mov rcx, rdi
call fcn.1400371a0
mov rcx, qword [rsp + 0xa8]
call fcn.140095700
mov r12d, dword [rsp + 0xb4]
cmp qword [rsp + 0xd8], 0
jne 0x140063f2a
xor eax, eax
cmp byte [rsp + 0x170], 2
mov ebx, eax
jne 0x140063ed2
lea edx, [rax + 0x14]
mov rcx, rdi
call fcn.1400370c0
mov ebx, eax
lea rax, [rsp + 0x94]
mov r9b, 8
mov qword [rsp + 0x38], rax
mov r8d, 0x6a
lea rax, [rsp + 0x6c]
mov rdx, r14
mov qword [rsp + 0x30], rax
mov rcx, rsi
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x20], eax
call fcn.14006f580
movzx r10d, byte [rsp + 0x170]
cmp r10b, 2
jne 0x140063f33
mov edx, ebx
mov rcx, rdi
call fcn.140037c50
jmp 0x140063f38
movzx r10d, byte [rsp + 0x170]
test r10b, r10b
je 0x140063f88
cmp dword [r14 + 0x54], 0
mov edx, dword [rsp + 0x6c]
mov ebx, dword [rsp + 0x78]
jne 0x140063fff
mov rcx, qword [rsp + 0x60]
mov eax, edx
sub eax, dword [rsp + 0x68]
cdqe
cmp byte [rax + rcx], 0
je 0x140063ff4
mov r9d, dword [rsp + 0x98]
mov r8d, edx
movsx eax, bx
mov edx, 0x1e
mov dword [rsp + 0x28], eax
mov rcx, rdi
mov dword [rsp + 0x20], r13d
call fcn.140037810
jmp 0x140063fe7
mov rcx, rdi
test rbp, rbp
je 0x140063fc3
mov r8d, dword [rsp + 0x88]
mov edx, 0x3a
call fcn.140037130
mov r8d, dword [rsp + 0x88]
mov r9d, r13d
mov edx, 0x7a
mov dword [rsp + 0x8c], eax
mov rcx, rdi
call fcn.1400371a0
jmp 0x140063fe3
mov r8d, dword [rsp + 0x90]
xor r9d, r9d
mov dword [rsp + 0x20], r13d
lea edx, [r9 + 0x3f]
call fcn.140037050
mov dword [rsp + 0x8c], eax
mov ebx, dword [rsp + 0x78]
movzx r10d, byte [rsp + 0x170]
mov edx, dword [rsp + 0x6c]
cmp dword [r14 + 0x54], 0
je 0x140064116
mov rbx, qword [r14 + 0x60]
test rbx, rbx
je 0x140064016
cmp qword [rbx], r15
je 0x140064016
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140064008
mov rdx, r14
mov rcx, rsi
call fcn.140088a00
mov rax, qword [rdi + 0x18]
mov r9d, 1
movsxd rdx, dword [rdi + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x14006404f
xor r8d, r8d
mov dword [rsp + 0x20], r13d
lea edx, [r9 + 0xb]
mov rcx, rdi
call fcn.140036ff0
mov edx, eax
jmp 0x14006407a
lea rcx, [rdx + rdx*2]
xor r8d, r8d
lea eax, [rdx + 1]
mov dword [rdi + 0xb8], eax
mov rax, qword [rdi + 0x68]
mov qword [rax + rcx*8], 0xc
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r8
mov rax, qword [rdi]
cmp byte [rax + 0x55], 0
jne 0x1400640c8
test edx, edx
jns 0x14006408f
mov edx, dword [rdi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x68]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1400640b8
mov r9d, 0xfffffff8
mov r8, rbx
mov rcx, rdi
call fcn.1400380f0
jmp 0x1400640c8
test rbx, rbx
je 0x1400640c8
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xf8
inc dword [rbx + 0x18]
movsxd rax, dword [rdi + 0xb8]
test eax, eax
jle 0x1400640e5
lea rcx, [rax + rax*2]
mov edx, 2
mov rax, qword [rdi + 0x68]
mov word [rax + rcx*8 - 0x16], dx
mov rax, qword [rsi + 0xa0]
mov rcx, rsi
test rax, rax
cmovne rcx, rax
movzx eax, byte [rsp + 0x170]
mov byte [rcx + 0x21], 1
cmp al, 1
jne 0x140064163
cmp qword [rsi + 0xa0], 0
jne 0x140064163
mov byte [rsi + 0x20], 0
jmp 0x140064163
cmp byte [rsi + 0x1e], 0
mov r9d, edx
mov r8, qword [rsp + 0xe0]
mov rdx, r14
mov dword [rsp + 0x50], r12d
sete al
mov byte [rsp + 0x48], r10b
mov rcx, rsi
mov byte [rsp + 0x40], 0xa
mov byte [rsp + 0x38], al
mov eax, dword [rsp + 0x94]
mov word [rsp + 0x30], bx
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], eax
call fcn.1400642e0
movzx eax, byte [rsp + 0x170]
test al, al
je 0x140064198
mov rax, qword [rdi + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x140064189
mov eax, dword [rsp + 0x98]
not eax
movsxd rcx, eax
mov eax, dword [rdi + 0xb8]
mov dword [rdx + rcx*4], eax
mov rcx, qword [rsp + 0xa8]
call fcn.140095700
jmp 0x1400641dc
mov rcx, rdi
test rbp, rbp
je 0x1400641c1
mov ebx, dword [rsp + 0x8c]
mov edx, 7
mov r8d, dword [rsp + 0x88]
lea r9d, [rbx + 1]
call fcn.1400371a0
mov edx, ebx
jmp 0x1400641d4
mov edx, dword [rsp + 0x8c]
call fcn.140037210
mov edx, dword [rsp + 0x8c]
mov rcx, rdi
call fcn.140037c50
mov r13, qword [rsp + 0x180]
cmp byte [rsi + 0x1e], 0
jne 0x140064206
cmp qword [rsi + 0xa8], 0
jne 0x140064206
cmp qword [rsi + 0x98], 0
je 0x140064206
mov rcx, rsi
call fcn.14006bdd0
test byte [r15 + 0x2c], 0x80
je 0x140063cf0
cmp byte [rsi + 0x1e], 0
jne 0x140063cf0
cmp qword [rsi + 0xa8], 0
jne 0x140063cf0
mov r8d, dword [rsp + 0x80]
mov ebx, 1
mov r9d, ebx
mov rcx, rdi
lea edx, [rbx + 0x57]
call fcn.1400371a0
mov edx, ebx
mov rcx, rdi
call fcn.1400396e0
mov rax, qword [rdi]
cmp byte [rax + 0x55], 0
jne 0x140063cf0
mov rcx, qword [rdi + 0x80]
lea r8d, [rbx - 2]
xor eax, eax
lea rdx, str.rows_deleted
movzx r9d, bl
mov qword [rsp + 0x20], rax
call fcn.1400361f0
jmp 0x140063cf0
mov rbx, rbp
jmp 0x140063cf5
cmp rbx, qword [r15 + 0x180]
jb 0x1400642bf
cmp rbx, qword [r15 + 0x188]
jae 0x1400642bf
mov rax, qword [r15 + 0x178]
mov qword [rbx], rax
dec dword [r15 + 0x160]
mov qword [r15 + 0x178], rbx
add rsp, 0x158
pop r15
pop rbx
ret
mov rcx, rbx
call fcn.1400153d0
add rsp, 0x158
pop r15
pop rbx
ret