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

Disassembly:
mov r11, rsp
push rbx
push r15
sub rsp, 0x198
mov rax, qword [0x140132020]
xor rax, rsp
mov qword [rsp + 0x160], rax
mov r15, qword [rcx]
mov qword [r11 + 0x20], rbp
xor ebp, ebp
mov ebx, ebp
mov qword [r11 - 0x28], r12
mov qword [r11 - 0x38], r14
mov r14, rcx
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0xe0], r8
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0x118], rcx
mov dword [rsp + 0x7c], ebp
mov dword [rsp + 0x98], ebp
mov dword [rsp + 0xa0], ebp
mov dword [rsp + 0x80], 0xffffffff
mov dword [rsp + 0x9c], ebp
mov dword [rsp + 0x78], ebp
mov dword [rsp + 0x90], ebp
mov dword [rsp + 0xbc], ebp
mov dword [rsp + 0x64], ebp
mov dword [rsp + 0xb8], ebp
mov qword [rsp + 0x108], rbp
mov qword [rsp + 0x100], rbp
mov qword [rsp + 0xa8], r15
cmp dword [rcx + 0x30], ebp
jne 0x1400611bd
cmp byte [r15 + 0x55], bl
jne 0x1400611bd
mov qword [r11 - 0x30], r13
call fcn.14005f970
mov r13, rax
test rax, rax
je 0x1400611b5
mov rax, qword [r14]
mov qword [rsp + 0x190], rsi
mov esi, ebp
mov qword [rsp + 0x188], rdi
mov edi, ebp
test dword [rax + 0x2c], 0x1000000
je 0x14005fe44
mov rdx, r13
mov rcx, r14
call fcn.140088b20
mov rsi, rax
mov rbx, rsi
test rsi, rsi
je 0x14005fe74
nop dword [rax]
cmp byte [rbx + 0x10], 0x6d
jne 0x14005fe6b
mov rcx, qword [rbx + 0x20]
xor edx, edx
call fcn.14008a360
test eax, eax
je 0x14005fe6b
movzx eax, byte [rbx + 0x11]
or edi, eax
mov rbx, qword [rbx + 0x40]
test rbx, rbx
jne 0x14005fe50
test edi, edi
lea rbx, [r13 + 0x68]
mov rdi, qword [r13 + 0x18]
cmovne rbp, rsi
mov qword [rsp + 0xf0], rdi
mov qword [rsp + 0x120], rbp
mov esi, 1
test rbp, rbp
jne 0x14005fee9
mov rax, qword [r14]
test dword [rax + 0x2c], 0x80000
je 0x14005fedc
mov rcx, qword [rbx]
lea r8, [rsp + 0xc0]
mov rdx, qword [r13]
add rcx, 0x50
call fcn.14000b390
test rax, rax
je 0x14005fecb
cmp qword [rax + 0x10], rbp
jne 0x14005fed6
cmp qword [r13 + 0x20], 0
jne 0x14005fed6
xor eax, eax
jmp 0x14005fed8
mov eax, esi
test eax, eax
jne 0x14005fee9
mov dword [rsp + 0x94], 0
jmp 0x14005fef0
mov dword [rsp + 0x94], esi
mov rdx, r13
mov rcx, r14
call fcn.140058de0
test eax, eax
jne 0x14006119d
xor r8d, r8d
mov rdx, r13
test rbp, rbp
mov rcx, r14
setne r8b
call fcn.14005fa50
test eax, eax
jne 0x14006119d
mov rdx, qword [rbx]
mov ebx, 0xfff0bdc0
test rdx, rdx
je 0x14005ff4f
mov ecx, dword [r15 + 0x28]
xor ebx, ebx
test ecx, ecx
jle 0x14005ff4f
mov rax, qword [r15 + 0x20]
add rax, 0x18
nop
cmp qword [rax], rdx
je 0x14005ff4f
inc ebx
add rax, 0x20
cmp ebx, ecx
jl 0x14005ff40
mov rax, qword [r15 + 0x20]
xor r9d, r9d
mov r8, qword [r13]
movsxd rcx, ebx
shl rcx, 5
lea edx, [r9 + 9]
mov rcx, qword [rcx + rax]
mov qword [rsp + 0x20], rcx
mov rcx, r14
call fcn.140053de0
mov ebp, eax
cmp eax, esi
je 0x14006119d
mov r12d, dword [r14 + 0x34]
xor edx, edx
mov rax, qword [rsp + 0xd0]
mov dword [rsp + 0x68], r12d
mov dword [rsp + 0xc0], edx
mov dword [rax + 0x50], r12d
mov ecx, dword [r14 + 0x34]
inc ecx
mov dword [r14 + 0x34], ecx
mov rax, qword [r13 + 0x10]
test rax, rax
je 0x14005ffc9
inc ecx
inc edx
mov dword [r14 + 0x34], ecx
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14005ffb1
mov dword [rsp + 0xc0], edx
test rdi, rdi
je 0x14005fff0
mov rax, qword [r14 + 0x218]
mov qword [rsp + 0x108], rax
mov rax, qword [r13]
mov qword [r14 + 0x218], rax
mov qword [rsp + 0x100], r14
mov rsi, qword [r14 + 0x10]
test rsi, rsi
je 0x140060006
mov rax, rsi
mov qword [rsp + 0xc8], rax
enter 0, 0
jmp 0x140060022
mov rcx, r14
call fcn.14007e9c0
mov qword [rsp + 0xc8], rax
mov rsi, rax
test rax, rax
je 0x1400607f8
cmp byte [r14 + 0x1e], 0
jne 0x140060030
or dword [rsi + 0xc0], 0x10
mov rdi, qword [r14 + 0xa0]
test rdi, rdi
je 0x140060041
mov rcx, rdi
jmp 0x14006004f
mov rdi, r14
mov qword [rsp + 0xc8], rax
mov rcx, r14
mov eax, dword [rcx + 0x7c]
bt eax, ebx
jb 0x140060067
bts eax, ebx
mov dword [rcx + 0x7c], eax
cmp ebx, 1
jne 0x140060067
call fcn.14005d8c0
mov eax, dword [rdi + 0x78]
or byte [rdi + 0x20], 1
bts eax, ebx
cmp qword [rsp + 0xf0], 0
mov dword [rdi + 0x78], eax
mov rdi, qword [rsp + 0xe0]
je 0x1400600ae
mov r9d, r12d
mov r8, rdi
mov rdx, r13
mov rcx, r14
call fcn.14005faf0
mov eax, r12d
mov dword [rsp + 0x7c], r12d
mov dword [rsp + 0x98], eax
mov dword [rsp + 0xa0], eax
mov rax, qword [rsp + 0xd0]
lea rcx, [rsp + 0x128]
xorps xmm0, xmm0
mov qword [rsp + 0x130], rax
xorps xmm1, xmm1
mov qword [rsp + 0x158], 0
mov rdx, rdi
mov qword [rsp + 0x128], r14
movdqu xmmword [rsp + 0x138], xmm0
movdqu xmmword [rsp + 0x148], xmm1
call fcn.140043c30
test eax, eax
jne 0x1400607f8
test byte [r15 + 0x2c], 0x80
je 0x14006017a
inc dword [r14 + 0x38]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
mov r12d, dword [r14 + 0x38]
mov dword [rsp + 0x80], r12d
cmp dword [rax + 0x3c], ecx
jg 0x140060145
xor r8d, r8d
mov dword [rsp + 0x20], 0
mov r9d, r12d
mov rcx, rsi
lea edx, [r8 + 0x4c]
call fcn.14002c4b0
jmp 0x140060182
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x4c
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r9d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x140060185
mov r12d, dword [rsp + 0x80]
xor r9d, r9d
test ebp, ebp
jne 0x14006031d
test rdi, rdi
jne 0x14006031d
cmp dword [rsp + 0x94], edi
jne 0x14006031d
test byte [r13 + 0x46], 0x10
jne 0x14006031d
mov rax, qword [r13]
mov r9b, 1
mov r8d, dword [r13 + 0x38]
mov edx, ebx
mov rcx, r14
mov qword [rsp + 0x20], rax
call fcn.140053ea0
test byte [r13 + 0x46], 0x20
jne 0x1400602a2
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
mov rdi, qword [r13]
mov r10d, dword [r13 + 0x38]
cmp dword [rax + 0x3c], edx
jg 0x140060213
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov r8d, r10d
mov edx, 0x83
mov rcx, rsi
call fcn.14002c4b0
mov r8, qword [rsp + 0xc8]
mov edx, eax
add r8, 0x68
jmp 0x140060249
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
lea r8, [rsi + 0x68]
mov rax, qword [r8]
mov word [rax + rcx*8], 0x83
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r10d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], 0
mov rcx, qword [rsi]
cmp byte [rcx + 0x55], 0
je 0x140060261
mov r8, rdi
mov edx, 0xfffffffe
call fcn.14002d250
jmp 0x1400602a2
test edx, edx
jns 0x14006026d
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r8]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x140060295
mov r9d, 0xfffffffe
mov r8, rdi
mov rcx, rsi
call fcn.14002d570
jmp 0x1400602a2
test rdi, rdi
je 0x1400602a2
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xfe
mov rdi, qword [r13 + 0x10]
test rdi, rdi
je 0x1400610b2
nop
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
mov edx, dword [rdi + 0x58]
cmp dword [rax + 0x3c], ecx
jg 0x1400602e0
mov r8d, edx
mov dword [rsp + 0x20], 0
mov edx, 0x83
mov r9d, ebx
mov rcx, rsi
call fcn.14002c4b0
jmp 0x14006030f
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8 + 4], edx
xor edx, edx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov word [rax + rcx*8], 0x83
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 8], ebx
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x1400602b0
jmp 0x1400610b2
test byte [rsp + 0x158], 0x40
mov ecx, 1
mov ebx, dword [rsp + 0x94]
mov edi, 0x41c
cmovne ebx, ecx
mov eax, 0x414
test ebx, ebx
mov dword [rsp + 0x94], ebx
cmovne di, ax
test byte [r13 + 0x46], 0x20
jne 0x1400603eb
mov edx, dword [r14 + 0x38]
lea r12, [r14 + 0x38]
inc edx
mov word [rsp + 0x62], cx
mov dword [r12], edx
lea rbx, [rsi + 0x18]
mov rax, qword [rbx]
lea r15, [rsi + 0xb8]
movsxd rcx, dword [r15]
mov rbp, r9
mov qword [rsp + 0xd8], r9
mov qword [rsp + 0x70], r12
mov dword [rsp + 0x90], edx
mov qword [rsp + 0x88], rbx
cmp dword [rax + 0x3c], ecx
jg 0x1400603ba
xor r8d, r8d
mov dword [rsp + 0x20], r9d
mov r9d, edx
mov rcx, rsi
lea edx, [r8 + 0x4f]
call fcn.14002c4b0
jmp 0x14006054d
lea eax, [rcx + 1]
mov dword [r15], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x4f
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r9d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x14006054d
mov rbp, qword [r13 + 0x10]
mov qword [rsp + 0xd8], rbp
test rbp, rbp
je 0x14006041a
nop dword [rax]
mov eax, dword [rbp + 0x64]
and al, 3
cmp al, 2
je 0x140060412
mov rbp, qword [rbp + 0x28]
test rbp, rbp
jne 0x140060400
mov qword [rsp + 0xd8], rbp
movsx ecx, word [rbp + 0x5e]
lea r12, [r14 + 0x38]
mov eax, dword [r12]
lea r15, [rsi + 0xb8]
mov r8d, dword [r14 + 0x34]
mov word [rsp + 0x62], cx
mov qword [rsp + 0x70], r12
lea edx, [rax + 1]
mov dword [rsp + 0x78], r8d
add eax, ecx
mov dword [rsp + 0x9c], edx
mov dword [r12], eax
mov edx, ecx
lea eax, [r8 + 1]
mov dword [r14 + 0x34], eax
lea rax, [rsi + 0x18]
movsxd rcx, dword [r15]
mov qword [rsp + 0x88], rax
mov rax, qword [rax]
mov dword [rsp + 0xb8], ecx
cmp dword [rax + 0x3c], ecx
jg 0x140060496
mov dword [rsp + 0x20], r9d
mov rcx, rsi
mov r9d, edx
mov edx, 0x6b
call fcn.14002c4b0
mov dword [rsp + 0xb8], eax
jmp 0x1400604c2
lea eax, [rcx + 1]
mov dword [r15], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x6b
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov rbx, qword [r14 + 0x10]
mov rdx, rbp
mov rcx, r14
call fcn.14005e6f0
mov rcx, qword [rbx]
mov r8, rax
cmp byte [rcx + 0x55], 0
je 0x1400604f5
mov edx, 0xfffffffa
call fcn.14002d250
lea rbx, [rsi + 0x18]
mov qword [rsp + 0x88], rbx
jmp 0x140060548
movsxd rax, dword [rbx + 0xb8]
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
cmp byte [rax + rdx*8 - 0x17], 0
lea rcx, [rax + rdx*8]
je 0x14006052f
lea rdx, [rcx - 0x18]
mov r9d, 0xfffffffa
mov rcx, rbx
call fcn.14002d570
lea rbx, [rsi + 0x18]
mov qword [rsp + 0x88], rbx
jmp 0x140060548
test r8, r8
je 0x14006054d
lea rax, [rsi + 0x18]
mov qword [rcx - 8], r8
mov qword [rsp + 0x88], rax
mov byte [rcx - 0x17], 0xfa
mov qword [rsp + 0x70], r12
mov eax, dword [rsp + 0x68]
xor r9d, r9d
mov r8, qword [rsp + 0xe0]
inc eax
mov rdx, qword [rsp + 0xd0]
mov rcx, r14
mov dword [rsp + 0x30], eax
mov word [rsp + 0x28], di
xor edi, edi
mov qword [rsp + 0x20], rdi
call fcn.14009f940
mov qword [rsp + 0xe8], rax
test rax, rax
je 0x1400607f0
mov rbx, qword [rax + 0x24]
movzx eax, byte [rax + 0x3d]
mov byte [rsp + 0x60], al
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x110], rbx
mov qword [rsp + 0xf8], rbx
test byte [rax + 0x2c], 0x80
je 0x1400605f4
mov rax, qword [rsp + 0x88]
movsxd rcx, dword [r15]
mov rax, qword [rax]
cmp dword [rax + 0x3c], ecx
jg 0x140060671
mov r8d, dword [rsp + 0x80]
lea r9d, [rdi + 1]
lea edx, [rdi + 0x5b]
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.14002c4b0
lea r12, [r14 + 0x38]
mov qword [rsp + 0x70], r12
xor r9d, r9d
test rbp, rbp
je 0x1400606b0
movsx r12, word [rsp + 0x62]
test r12, r12
jle 0x14006065f
mov ebp, dword [rsp + 0x9c]
mov rdi, r9
mov rbx, qword [rsp + 0xd8]
mov r14d, dword [rsp + 0x68]
mov rax, qword [rbx + 8]
mov r8d, r14d
mov rdx, r13
mov dword [rsp + 0x20], ebp
mov rcx, rsi
movsx r9d, word [rax + rdi*2]
call fcn.14004a6f0
inc ebp
inc rdi
cmp rdi, r12
jl 0x140060622
mov rbx, qword [rsp + 0x110]
mov r14, qword [rsp + 0x118]
mov rbp, qword [rsp + 0xd8]
mov r12d, dword [rsp + 0x9c]
mov rax, qword [rsp + 0x70]
jmp 0x1400607a0
mov edx, dword [rsp + 0x80]
lea eax, [rcx + 1]
mov dword [r15], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
xor r9d, r9d
mov qword [rsp + 0x70], r12
mov word [rax + rcx*8], 0x5b
mov byte [rax + rcx*8 + 3], dil
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 1
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x1400605f7
mov r12d, dword [r12]
lea r8, [r14 + 0xc4]
movzx ecx, byte [r14 + 0x25]
inc r12d
mov r10, qword [r14 + 0x10]
mov eax, r9d
mov edi, dword [rsp + 0x68]
test ecx, ecx
je 0x1400606e9
cmp dword [r8], edi
jne 0x1400606df
cmp word [r8 + 4], 0xffff
je 0x140060713
inc eax
add r8, 0x14
cmp eax, ecx
jl 0x1400606d2
mov rax, qword [r10 + 0x18]
movsxd rdx, dword [r10 + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x140060750
mov dword [rsp + 0x20], r9d
mov r8d, edi
mov r9d, r12d
mov edx, 0x7b
mov rcx, r10
call fcn.14002c4b0
jmp 0x140060780
mov eax, dword [r14 + 0x50]
xor edx, edx
mov dword [r8 + 0x10], eax
inc dword [r14 + 0x50]
mov r9d, dword [r8 + 0xc]
cmp byte [r14 + 0x25], dl
jbe 0x14006074a
lea rcx, [r14 + 0xca]
cmp dword [rcx + 6], r9d
jne 0x14006073b
mov byte [rcx], 0
movzx eax, byte [r14 + 0x25]
inc edx
add rcx, 0x14
cmp edx, eax
jl 0x140060732
mov r12d, dword [r8 + 0xc]
jmp 0x140060793
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r10 + 0xb8], eax
mov rax, qword [r10 + 0x68]
mov word [rax + rcx*8], 0x7b
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov r9d, r12d
mov r8d, 0xffffffff
mov edx, edi
mov rcx, r14
call fcn.14004a3b0
mov rax, qword [rsp + 0x70]
cmp r12d, dword [rax]
jle 0x1400607a0
mov dword [rax], r12d
movzx edi, byte [rsp + 0x60]
test dil, dil
je 0x1400608bc
movzx eax, word [rsp + 0x62]
movsxd rdi, dword [rsp + 0xc0]
mov rcx, qword [rsp + 0xa8]
mov word [rsp + 0x70], ax
lea eax, [rdi + 2]
movsxd rdx, eax
call fcn.140007000
mov qword [rsp + 0xb0], rax
mov rcx, rax
test rax, rax
jne 0x140060825
mov rcx, qword [rsp + 0xe8]
call fcn.1400a0630
mov r15, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x100]
mov rbx, qword [rsp + 0xb0]
test rax, rax
je 0x1400611a5
mov rcx, qword [rsp + 0x108]
mov qword [rax + 0x218], rcx
jmp 0x1400611a5
lea r8, [rdi + 1]
mov edx, 1
call fcn.1400d8b40
mov rdx, qword [rsp + 0xb0]
mov ecx, dword [rsp + 0x68]
mov byte [rdi + rdx + 1], 0
test ebx, ebx
js 0x140060851
sub ebx, ecx
movsxd rax, ebx
mov byte [rax + rdx], 0
mov edi, dword [rsp + 0xfc]
test edi, edi
js 0x140060866
mov eax, edi
sub eax, ecx
cdqe
mov byte [rax + rdx], 0
movsxd rax, dword [rsp + 0xb8]
test eax, eax
je 0x1400608a3
mov rcx, qword [rsi]
cmp byte [rcx + 0x55], 0
jne 0x1400608a3
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
mov r8, qword [rax + rdx*8 + 0x10]
lea rbx, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.14002d250
mov word [rbx], 0xa1
mov qword [rbx + 0x10], 0
mov rcx, rsi
call fcn.14002cb60
movzx edi, byte [rsp + 0x60]
mov dword [rsp + 0xbc], eax
jmp 0x1400609e6
test rbp, rbp
je 0x140060966
inc dword [rax]
mov rdx, rbp
mov rcx, qword [r14]
mov r12d, dword [rax]
movsx ebx, word [rsp + 0x62]
mov dword [rsp + 0x70], 0
call fcn.14006a3d0
mov r8d, dword [rsp + 0x9c]
mov r9d, ebx
mov dword [rsp + 0x30], ebx
mov edx, 0x63
mov qword [rsp + 0x28], rax
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.14002c800
mov rax, qword [rsp + 0x88]
movsxd rcx, dword [r15]
mov rax, qword [rax]
cmp dword [rax + 0x3c], ecx
jg 0x14006093d
mov r8d, dword [rsp + 0x78]
mov r9d, r12d
mov edx, 0x7e
mov dword [rsp + 0x20], 0
mov rcx, rsi
call fcn.14002c4b0
jmp 0x1400609d9
mov edx, dword [rsp + 0x78]
lea eax, [rcx + 1]
mov dword [r15], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
xor ebx, ebx
mov word [rax + rcx*8], 0x7e
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
jmp 0x1400609cf
movsxd rcx, dword [r15]
mov eax, 1
mov word [rsp + 0x70], ax
mov rax, qword [rsp + 0x88]
mov rax, qword [rax]
cmp dword [rax + 0x3c], ecx
jg 0x1400609a5
mov r8d, dword [rsp + 0x90]
mov r9d, r12d
mov edx, 0x8e
mov dword [rsp + 0x20], 0
mov rcx, rsi
call fcn.14002c4b0
jmp 0x1400609d9
mov edx, dword [rsp + 0x90]
lea eax, [rcx + 1]
mov dword [r15], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8 + 4], edx
xor edx, edx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov word [rax + rcx*8], 0x8e
mov dword [rax + rcx*8 + 8], r12d
mov byte [rax + rcx*8 + 3], 0
mov rcx, qword [rsp + 0xe8]
call fcn.1400a0630
cmp qword [rsp + 0xf0], 0
jne 0x140060b18
xor edx, edx
mov ebx, edx
cmp dil, 2
jne 0x140060a2e
mov rax, qword [rsp + 0x88]
movsxd rbx, dword [r15]
mov rax, qword [rax]
cmp dword [rax + 0x3c], ebx
jg 0x140060ab1
xor r9d, r9d
mov dword [rsp + 0x20], edx
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x14]
call fcn.14002c4b0
mov ebx, eax
mov rdi, qword [rsp + 0xc8]
add rdi, 0x68
lea rax, [rsp + 0xa0]
mov r9b, 8
mov qword [rsp + 0x38], rax
mov r8d, 0x69
lea rax, [rsp + 0x7c]
mov rdx, r13
mov qword [rsp + 0x30], rax
mov rcx, r14
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x20], eax
call fcn.14006ee10
movzx edx, byte [rsp + 0x60]
cmp dl, 2
jne 0x140060b08
mov rax, qword [rsi]
mov edx, dword [r15]
cmp byte [rax + 0x55], 0
je 0x140060adf
lea rax, [0x140137a20]
mov dword [rax + 8], edx
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x98], eax
jmp 0x140060b2d
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [r15], eax
lea rdi, [rsi + 0x68]
mov rax, qword [rdi]
mov word [rax + rcx*8], 0x14
mov byte [rax + rcx*8 + 3], dl
mov qword [rax + rcx*8 + 4], rdx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
jmp 0x140060a3a
lea eax, [rdx - 1]
test ebx, ebx
cmovns eax, ebx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi]
mov dword [rax + rcx*8 + 8], edx
lea rax, [rax + rcx*8]
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x98], eax
jmp 0x140060b2d
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x98], eax
jmp 0x140060b29
mov rdi, qword [rsp + 0xc8]
movzx edx, byte [rsp + 0x60]
add rdi, 0x68
test dl, dl
je 0x140060b8c
test byte [r13 + 0x46], 0x10
mov ebx, dword [rsp + 0x70]
jne 0x140060b76
mov edx, dword [rsp + 0x7c]
mov eax, edx
sub eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0xb0]
cdqe
cmp byte [rax + rcx], 0
je 0x140060b76
mov r9d, dword [rsp + 0xbc]
mov r8d, edx
movsx eax, bx
mov edx, 0x1e
mov dword [rsp + 0x28], eax
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.14002ca80
mov rdi, qword [rsp + 0xc8]
movzx edx, byte [rsp + 0x60]
add rdi, 0x68
jmp 0x140060cd3
mov rbx, qword [rsp + 0x88]
movsxd r8, dword [r15]
mov dword [rsp + 0x64], r8d
mov rax, qword [rbx]
mov ecx, dword [rax + 0x3c]
test rbp, rbp
je 0x140060c66
cmp ecx, r8d
jg 0x140060bd9
mov r8d, dword [rsp + 0x78]
xor r9d, r9d
mov rcx, rsi
mov dword [rsp + 0x20], 0
lea edx, [r9 + 0x39]
call fcn.14002c4b0
mov edx, dword [rsp + 0x78]
xor r8d, r8d
mov dword [rsp + 0x64], eax
jmp 0x140060c07
mov edx, dword [rsp + 0x78]
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
xor r8d, r8d
mov dword [r15], eax
mov rax, qword [rdi]
mov word [rax + rcx*8], 0x39
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], r8
mov qword [rax + rcx*8 + 0x10], r8
mov rax, qword [rbx]
movsxd rcx, dword [r15]
cmp dword [rax + 0x3c], ecx
jg 0x140060c34
mov dword [rsp + 0x20], r8d
mov r9d, r12d
mov r8d, edx
mov rcx, rsi
mov edx, 0x79
call fcn.14002c4b0
movzx edx, byte [rsp + 0x60]
jmp 0x140060ccf
lea eax, [rcx + 1]
mov dword [r15], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi]
mov dword [rax + rcx*8 + 4], edx
movzx edx, byte [rsp + 0x60]
mov word [rax + rcx*8], 0x79
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
jmp 0x140060ccf
cmp ecx, r8d
jg 0x140060c92
mov r8d, dword [rsp + 0x90]
xor r9d, r9d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
lea edx, [r9 + 0x3e]
call fcn.14002c4b0
movzx edx, byte [rsp + 0x60]
mov dword [rsp + 0x64], eax
jmp 0x140060ccf
mov r9d, dword [rsp + 0x90]
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
mov dword [rsp + 0x64], r8d
mov dword [r15], eax
mov rax, qword [rdi]
mov dword [rax + rcx*8 + 4], r9d
xor r9d, r9d
mov dword [rax + rcx*8 + 8], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov word [rax + rcx*8], 0x3e
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 0xc], r12d
mov ebx, dword [rsp + 0x70]
test byte [r13 + 0x46], 0x10
je 0x140060df8
mov rbx, qword [r13 + 0x58]
test rbx, rbx
je 0x140060cfe
mov rax, qword [rsp + 0xa8]
nop
cmp qword [rbx], rax
je 0x140060cfe
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140060cf0
mov rdx, r13
mov rcx, r14
call fcn.140090880
mov rax, qword [rsp + 0x88]
movsxd rdx, dword [r15]
mov rax, qword [rax]
cmp dword [rax + 0x3c], edx
jg 0x140060d3a
mov r9d, 1
mov dword [rsp + 0x20], r12d
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0xb]
call fcn.14002c4b0
mov edx, eax
jmp 0x140060d6c
lea rcx, [rdx + rdx*2]
xor r8d, r8d
lea eax, [rdx + 1]
mov dword [r15], eax
mov rax, qword [rdi]
mov word [rax + rcx*8], 0xc
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], 1
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r8
mov rax, qword [rsi]
cmp byte [rax + 0x55], 0
jne 0x140060db6
test edx, edx
jns 0x140060d7e
mov edx, dword [r15]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rdi]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x140060da6
mov r9d, 0xfffffff6
mov r8, rbx
mov rcx, rsi
call fcn.14002d570
jmp 0x140060db6
test rbx, rbx
je 0x140060db6
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xf6
inc dword [rbx + 0x18]
movsxd rax, dword [r15]
test eax, eax
jle 0x140060dc9
lea rcx, [rax + rax*2]
mov rax, qword [rdi]
mov byte [rax + rcx*8 - 0x15], 2
mov rax, qword [r14 + 0xa0]
mov rcx, r14
test rax, rax
cmovne rcx, rax
movzx eax, byte [rsp + 0x60]
mov byte [rcx + 0x21], 1
cmp al, 1
jne 0x140060e60
cmp qword [r14 + 0xa0], 0
jne 0x140060e60
mov byte [r14 + 0x20], 0
jmp 0x140060e64
cmp dword [rsp + 0x94], 0
mov ecx, 0xffffffff
jne 0x140060e15
mov eax, dword [rsp + 0xfc]
cmp eax, dword [rsp + 0x7c]
cmovne ecx, eax
cmp byte [r14 + 0x1e], 0
mov r9d, dword [rsp + 0x7c]
mov r8, qword [rsp + 0x120]
sete al
mov dword [rsp + 0x50], ecx
mov rcx, r14
mov byte [rsp + 0x48], dl
mov rdx, r13
mov byte [rsp + 0x40], 0xa
mov byte [rsp + 0x38], al
mov eax, dword [rsp + 0x98]
mov word [rsp + 0x30], bx
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], eax
call fcn.1400612d0
movzx eax, byte [rsp + 0x60]
test al, al
je 0x140060e9d
mov r12, qword [rsp + 0x88]
mov rax, qword [r12]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x140060e8b
mov eax, dword [rsp + 0xbc]
not eax
movsxd rcx, eax
mov eax, dword [r15]
mov dword [rdx + rcx*4], eax
mov rcx, qword [rsp + 0xe8]
call fcn.1400a0630
jmp 0x140060fc4
mov r12, qword [rsp + 0x88]
movsxd rcx, dword [r15]
mov rax, qword [r12]
mov edx, dword [rax + 0x3c]
test rbp, rbp
je 0x140060f3d
mov r9d, dword [rsp + 0x64]
lea r8d, [r9 + 1]
cmp edx, ecx
jg 0x140060ee9
mov r9d, r8d
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0x78]
mov edx, 7
mov rcx, rsi
call fcn.14002c4b0
mov r9d, dword [rsp + 0x64]
jmp 0x140060f19
mov edx, dword [rsp + 0x78]
lea eax, [rcx + 1]
mov dword [r15], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi]
mov dword [rax + rcx*8 + 4], edx
xor edx, edx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov word [rax + rcx*8], 7
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 8], r8d
mov rax, qword [rsi]
mov edx, dword [r15]
cmp byte [rax + 0x55], 0
je 0x140060f31
lea rax, [0x140137a20]
jmp 0x140060fc1
test r9d, r9d
lea eax, [rdx - 1]
cmovns eax, r9d
jmp 0x140060fb4
cmp edx, ecx
jg 0x140060f64
mov r9d, dword [rsp + 0x64]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], 0
lea edx, [r8 + 0xd]
call fcn.14002c4b0
mov r8d, dword [rsp + 0x64]
jmp 0x140060f95
mov r8d, dword [rsp + 0x64]
lea eax, [rcx + 1]
mov dword [r15], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi]
xor edx, edx
mov word [rax + rcx*8], 0xd
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov rax, qword [rsi]
mov edx, dword [r15]
cmp byte [rax + 0x55], 0
je 0x140060faa
lea rax, [0x140137a20]
jmp 0x140060fc1
test r8d, r8d
lea eax, [rdx - 1]
cmovns eax, r8d
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
cmp qword [rsp + 0xf0], 0
jne 0x1400610aa
test byte [r13 + 0x46], 0x10
jne 0x1400610aa
test rbp, rbp
jne 0x140061006
mov rax, qword [r12]
movsxd rcx, dword [r15]
mov r8d, dword [rsp + 0x7c]
cmp dword [rax + 0x3c], ecx
jg 0x140061046
xor r9d, r9d
mov dword [rsp + 0x20], ebp
lea edx, [rbp + 0x6f]
mov rcx, rsi
call fcn.14002c4b0
xor edx, edx
mov rbx, qword [r13 + 0x10]
test rbx, rbx
je 0x1400610aa
mov ebp, dword [rsp + 0x98]
nop dword [rax]
mov rax, qword [r12]
movsxd rcx, dword [r15]
cmp dword [rax + 0x3c], ecx
jg 0x140061071
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, ebp
mov rcx, rsi
lea edx, [r9 + 0x6f]
call fcn.14002c4b0
xor edx, edx
jmp 0x14006109b
lea eax, [rcx + 1]
xor edx, edx
mov dword [r15], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi]
mov word [rax + rcx*8], 0x6f
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov qword [rax + rcx*8 + 8], rdx
mov qword [rax + rcx*8 + 0x10], rdx
jmp 0x140061008
lea eax, [rcx + 1]
mov dword [r15], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi]
mov word [rax + rcx*8], 0x6f
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebp
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdx
mov rbx, qword [rbx + 0x28]
inc ebp
test rbx, rbx
jne 0x140061020
mov r15, qword [rsp + 0xa8]
cmp byte [r14 + 0x1e], 0
jne 0x1400610d5
cmp qword [r14 + 0xa8], 0
jne 0x1400610d5
cmp qword [r14 + 0x98], 0
je 0x1400610d5
mov rcx, r14
call fcn.14006ab10
test byte [r15 + 0x2c], 0x80
je 0x1400607f8
cmp byte [r14 + 0x1e], 0
jne 0x1400607f8
cmp qword [r14 + 0xa8], 0
jne 0x1400607f8
mov rax, qword [rsi + 0x18]
xor ebx, ebx
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x140061128
mov r8d, dword [rsp + 0x80]
lea r9d, [rbx + 1]
lea edx, [rbx + 0x57]
mov dword [rsp + 0x20], ebx
mov rcx, rsi
call fcn.14002c4b0
jmp 0x14006115d
mov edx, dword [rsp + 0x80]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x57
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 1
mov qword [rax + rcx*8 + 0x10], rbx
mov edx, 1
mov rcx, rsi
call fcn.14002edd0
mov rax, qword [rsi]
cmp byte [rax + 0x55], 0
jne 0x1400607f8
mov rcx, qword [rsi + 0x80]
lea rdx, str.rows_deleted
mov r9b, 1
mov qword [rsp + 0x20], rbx
mov r8d, 0xffffffff
call fcn.14002b630
jmp 0x1400607f8
mov rbx, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0x188]
mov rsi, qword [rsp + 0x190]
mov r13, qword [rsp + 0x178]
mov rdx, qword [rsp + 0xd0]
mov rcx, r15
call fcn.14005ced0
mov rax, qword [rsp + 0xe0]
mov r14, qword [rsp + 0x170]
mov r12, qword [rsp + 0x180]
mov rbp, qword [rsp + 0x1c8]
test rax, rax
je 0x1400611fd
mov rdx, rax
mov rcx, r15
call fcn.140045870
test rbx, rbx
je 0x1400612ac
test r15, r15
je 0x140061251
cmp qword [r15 + 0x298], 0
je 0x140061225
mov rdx, rbx
mov rcx, r15
call fcn.140006ba0
jmp 0x1400612ac
cmp rbx, qword [r15 + 0x180]
jb 0x140061251
cmp rbx, qword [r15 + 0x188]
jae 0x140061251
mov rax, qword [r15 + 0x178]
mov qword [rbx], rax
dec dword [r15 + 0x160]
mov qword [r15 + 0x178], rbx
jmp 0x1400612ac
cmp dword [0x140133ca0], 0
je 0x1400612a3
mov rcx, qword [0x140137c18]
test rcx, rcx
je 0x14006126c
call qword [0x140133d28]
mov rcx, rbx
call qword [0x140133ce0]
dec qword [0x1401379c8]
movsxd rcx, eax
sub qword [0x140137980], rcx
mov rcx, rbx
call qword [0x140133cd0]
mov rcx, qword [0x140137c18]
test rcx, rcx
je 0x1400612ac
call qword [0x140133d38]
jmp 0x1400612ac
mov rcx, rbx
call qword [0x140133cd0]
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
call fcn.1400d6240
add rsp, 0x198
pop r15
pop rbx
ret