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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov rax, qword [0x140159040]
xor rax, rsp
mov qword [rbp + 0xa8], rax
mov rsi, qword [rcx + 0x10]
xor edi, edi
mov r14, qword [rcx]
mov r13, r8
mov qword [rbp - 0x48], r8
mov rbx, rdx
mov qword [rsp + 0x48], rdx
mov r12, rcx
mov qword [rbp - 0x80], rcx
mov r15d, 1
mov qword [rbp - 0x10], rdi
mov qword [rsp + 0x58], r14
mov qword [rbp - 0x28], rsi
test rsi, rsi
jne 0x140095727
cmp qword [rcx + 0xa0], rdi
jne 0x14009571b
test byte [r14 + 0x60], 8
jne 0x14009571b
mov byte [rcx + 0x23], r15b
call fcn.1400318f0
mov rsi, rax
mov qword [rbp - 0x28], rax
test rbx, rbx
je 0x140095c86
cmp dword [r12 + 0x30], edi
jne 0x140095c86
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov edx, 0x15
mov rcx, r12
call fcn.14005f5b0
test eax, eax
jne 0x140095c86
cmp byte [r13], 6
ja 0x1400957ec
mov rbx, qword [rbx + 0x48]
test rbx, rbx
je 0x1400957da
mov rcx, qword [r12]
test rcx, rcx
je 0x140095784
mov edx, 0x18
call fcn.140006fe0
jmp 0x14009578e
mov ecx, 0x18
call fcn.140006930
mov rcx, rax
test rax, rax
je 0x1400957c3
mov rax, qword [r12 + 0xb8]
mov qword [rcx], rax
lea rax, [fcn.14004d700]
mov qword [r12 + 0xb8], rcx
mov qword [rcx + 8], rbx
mov rbx, qword [rsp + 0x48]
mov qword [rcx + 0x10], rax
mov qword [rbx + 0x48], rdi
jmp 0x1400957df
mov rcx, qword [r12]
mov rdx, rbx
call fcn.14004d690
mov rbx, qword [rsp + 0x48]
mov qword [rbx + 0x48], rdi
jmp 0x1400957df
mov rbx, qword [rsp + 0x48]
mov eax, dword [rbx + 4]
and eax, 0xfffffffe
bts eax, 0x16
mov dword [rbx + 4], eax
mov rax, qword [r12]
cmp byte [rax + 0x67], dil
jne 0x14009582e
test byte [rbx + 4], 0x80
jne 0x14009582e
mov rdx, rbx
mov rcx, r12
call fcn.140094590
cmp dword [r12 + 0x30], edi
jne 0x14009582e
xor r8d, r8d
mov rdx, rbx
mov rcx, r12
call fcn.140049e10
cmp dword [r12 + 0x30], edi
jne 0x14009582e
mov rdx, rbx
mov rcx, r12
call fcn.1400948d0
lea r13, [0x14015f5e0]
cmp dword [r12 + 0x30], edi
jne 0x140095c2f
mov r10d, dword [rbx + 4]
bt r10d, 0x17
jae 0x14009588c
mov rdx, qword [rbx + 0x28]
lea r11, [rdx + 8]
mov rcx, r11
call fcn.1400955c0
test eax, eax
je 0x140095883
mov r8, qword [r11 + 0x18]
test r8, r8
jne 0x14009586f
mov rax, qword [r11 + 0x20]
mov r8, qword [rax]
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, r12
call fcn.14000a6b0
jmp 0x140095c2f
btr r10d, 0x17
mov dword [rbx + 4], r10d
mov rax, qword [rbp - 0x48]
cmp byte [rax], 9
jne 0x1400958a0
mov rdx, rbx
mov rcx, r12
call fcn.14008c1f0
mov rdx, rbx
mov rcx, r12
call fcn.1400b9b30
test eax, eax
jne 0x140095c2f
mov eax, dword [rbx + 4]
xorps xmm0, xmm0
mov rdx, qword [rbx + 0x28]
xorps xmm1, xmm1
shr eax, 3
and eax, r15d
mov qword [rsp + 0x68], rdx
mov r15d, edi
mov dword [rsp + 0x78], eax
mov rax, qword [rbx + 0x48]
mov qword [rbp + 0x78], rax
movdqu xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0xa0], rdi
movdqu xmmword [rbp + 0x90], xmm1
cmp qword [rbx + 0x50], rdi
jne 0x140098927
mov r13, rdi
cmp dword [rdx], edi
jle 0x140095afa
nop word [rax + rax]
imul rbx, r13, 0x68
add rbx, rdx
movzx eax, byte [rbx + 0x44]
mov r14, qword [rbx + 0x30]
and al, 0x18
mov r12, qword [rbx + 0x28]
cmp al, 8
jne 0x140095977
mov rax, qword [rsp + 0x48]
mov edx, dword [rbx + 0x4c]
mov rcx, qword [rax + 0x30]
call fcn.140055780
mov r9, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x68]
test eax, eax
je 0x14009597c
test dword [r9 + 0x60], 0x2000
jne 0x14009597c
and byte [rbx + 0x44], 0xd7
movzx r8d, byte [rdx + 0x44]
mov edx, dword [rbx + 0x4c]
and r8d, 0x40
mov rbx, qword [rsp + 0x48]
mov rcx, qword [rbx + 0x30]
call fcn.140088680
mov rdx, qword [rsp + 0x68]
jmp 0x140095981
mov r9, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
test r14, r14
je 0x140095ad8
mov rax, qword [r14 + 0x20]
movsx r8d, word [r12 + 0x36]
mov ecx, dword [rax]
cmp r8d, ecx
jne 0x140095c02
mov eax, dword [r14 + 4]
test al, 8
jne 0x140095ad8
mov rbx, qword [r14 + 0x48]
test rbx, rbx
je 0x140095a75
mov rcx, qword [rsp + 0x48]
cmp qword [rcx + 0x48], rdi
jne 0x1400959cc
cmp dword [rdx], 1
jle 0x140095a50
cmp qword [r14 + 0x60], rdi
jne 0x140095a50
bt eax, 0x1b
jb 0x140095a50
test dword [rcx + 4], 0x8000000
jne 0x140095a50
test dword [r9 + 0x60], 0x40000
jne 0x140095a50
mov r12, qword [rbp - 0x80]
mov rcx, qword [r12]
test rcx, rcx
je 0x140095a04
mov edx, 0x18
call fcn.140006fe0
jmp 0x140095a0e
mov ecx, 0x18
call fcn.140006930
mov rcx, rax
test rax, rax
je 0x140095a3e
mov rax, qword [r12 + 0xb8]
mov qword [rcx], rax
lea rax, [fcn.14004d700]
mov qword [r12 + 0xb8], rcx
mov qword [rcx + 0x10], rax
mov qword [rcx + 8], rbx
mov qword [r14 + 0x48], rdi
jmp 0x140095a79
mov rcx, qword [r12]
mov rdx, rbx
call fcn.14004d690
mov qword [r14 + 0x48], rdi
jmp 0x140095a79
mov r12, qword [rbp - 0x80]
mov rbx, rcx
test r15d, r15d
jne 0x140095a7e
test dword [rcx + 4], 0x40000
je 0x140095a7e
cmp dword [rdx], 1
je 0x140095adc
test byte [rdx + 0xac], 0x22
jne 0x140095adc
jmp 0x140095a7e
mov r12, qword [rbp - 0x80]
mov rbx, qword [rsp + 0x48]
mov r9d, dword [rsp + 0x78]
mov r8d, r15d
mov rdx, rbx
mov rcx, r12
call fcn.1400914e0
test eax, eax
je 0x140095aad
cmp dword [r12 + 0x30], edi
jne 0x140095c1d
mov r15d, 0xffffffff
mov r13, 0xffffffffffffffff
mov r14, qword [rsp + 0x58]
mov rdx, qword [rbx + 0x28]
mov qword [rsp + 0x68], rdx
cmp byte [r14 + 0x67], dil
jne 0x140095c22
mov rax, qword [rbp - 0x48]
cmp byte [rax], 8
jbe 0x140095ae1
mov rax, qword [rbx + 0x48]
mov qword [rbp + 0x78], rax
jmp 0x140095ae1
mov r12, qword [rbp - 0x80]
mov r14, qword [rsp + 0x58]
inc r15d
inc r13
cmp qword [rbx + 0x50], rdi
jne 0x140098920
cmp r15d, dword [rdx]
jl 0x140095910
mov rax, qword [rbx + 0x30]
test rax, rax
je 0x140095bdc
cmp byte [rax], 0x2c
jne 0x140095bdc
test dword [r14 + 0x60], 0x8000
jne 0x140095bdc
mov rax, qword [r12]
lea r15, [0x140092410]
add rax, 0x67
mov qword [rbp + 0x40], r12
mov qword [rbp + 0x48], rax
lea r13, [fcn.1400062f0]
mov r14d, 1
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rbx + 0x28]
mov qword [rbp + 0x50], rdi
mov qword [rbp + 0x60], rdi
mov dword [rbp + 0x58], edi
test rax, rax
je 0x140095b75
cmp dword [rax], edi
jle 0x140095b75
test byte [rax + 0x44], 0x40
mov dword [rbp + 0x5c], 3
jne 0x140095b79
mov dword [rbp + 0x5c], r14d
mov rdx, qword [rbx + 0x30]
lea rcx, [rbp + 0x40]
call fcn.1400921c0
cmp dword [rbp + 0x50], edi
je 0x140095bce
mov rdx, qword [rbx + 0x30]
lea rax, [rbp + 0x40]
mov qword [rbp + 0x30], rdi
mov qword [rbp + 0x10], r12
mov qword [rbp + 0x18], r15
mov qword [rbp + 0x20], r13
mov qword [rbp + 0x28], rdi
mov qword [rbp + 0x38], rax
test rdx, rdx
je 0x140095bb9
lea rcx, [rbp + 0x10]
call fcn.1400462e0
mov rdx, qword [rbp + 0x60]
test rdx, rdx
je 0x140095bce
mov rcx, qword [rbp + 0x40]
mov rcx, qword [rcx]
call fcn.140006bf0
cmp dword [rbp + 0x54], edi
jne 0x140095b50
mov r14, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x68]
lea r9, [0x140133e28]
mov ecx, edi
mov dword [rsp + 0x40], ecx
cmp dword [rdx], edi
jle 0x1400964cd
mov rax, rdi
mov qword [rbp - 0x60], rax
jmp 0x140095cc5
mov r9, qword [r12]
lea rdx, str.expected__d_columns_for__s_but_got__d
mov r12, qword [rbp - 0x80]
mov dword [rsp + 0x20], ecx
mov rcx, r12
call fcn.14000a6b0
mov r14, qword [rsp + 0x58]
mov r15d, 1
lea r13, [0x14015f5e0]
mov rax, qword [rbp - 0x10]
test rax, rax
je 0x140095c43
mov rdx, rax
mov rcx, r14
call fcn.14004d690
mov ecx, dword [r12 + 0x130]
test ecx, ecx
je 0x140095c7e
mov r8, qword [r12 + 0x10]
jns 0x140095c5f
mov ecx, dword [r8 + 0x90]
dec ecx
mov rax, qword [r8]
cmp byte [rax + 0x67], 0
jne 0x140095c7a
movsxd rcx, ecx
lea rdx, [rcx + rcx*2]
mov rcx, qword [r8 + 0x88]
lea r13, [rcx + rdx*8]
mov edi, dword [r13 + 8]
mov dword [r12 + 0x130], edi
mov eax, r15d
mov rcx, qword [rbp + 0xa8]
xor rcx, rsp
call fcn.1400fc160
mov rbx, qword [rsp + 0x208]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r14, qword [rsp + 0x58]
imul rax, rax, 0x68
lea r15, [rdx + 8]
add r15, rax
cmp qword [r15 + 0x50], rdi
jne 0x140095d76
mov r8, qword [r15 + 0x10]
test r8, r8
je 0x140095d76
mov rcx, qword [r12]
mov rdx, qword [r15 + 8]
mov r10, qword [rcx + 0x1f8]
test r10, r10
je 0x140095d6d
cmp byte [rcx + 0xc5], dil
jne 0x140095d6d
cmp byte [r12 + 0x124], dil
jne 0x140095d6d
mov rax, qword [r12 + 0x168]
mov rcx, qword [rcx + 0x200]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
mov edx, 0x14
call r10
cmp eax, 1
jne 0x140095d4e
lea rdx, str.not_authorized
mov rcx, r12
call fcn.14000a6b0
mov dword [r12 + 0x18], 0x17
jmp 0x140095d6d
test eax, 0xfffffffd
je 0x140095d6d
lea rdx, str.authorizer_malfunction
mov rcx, r12
call fcn.14000a6b0
mov dword [r12 + 0x18], 1
mov rdx, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x40]
mov r13, qword [r15 + 0x28]
test r13, r13
je 0x1400964ad
lea rdx, [rsp + 0x60]
mov dword [rsp + 0x60], edi
mov rcx, rbx
call fcn.14004ae40
mov eax, dword [rsp + 0x60]
add dword [r12 + 0x12c], eax
test dword [r14 + 0x60], 0x1000
jne 0x140095dd5
test dword [r15 + 0x40], 0x100
je 0x140095dc3
mov rax, qword [r15 + 0x60]
cmp byte [rax + 0x12], dil
je 0x140095dd5
cmp dword [rax], 2
jge 0x140095dd5
mov r8, qword [rbx + 0x30]
mov r9, r15
mov rdx, r13
mov rcx, r12
call fcn.1400924a0
mov r14, qword [r12 + 0x168]
mov rax, qword [r15 + 0x10]
mov rcx, qword [rsp + 0x68]
mov qword [rbp - 0x38], r14
mov qword [r12 + 0x168], rax
cmp qword [rbp - 0x60], rdi
jne 0x140095faf
cmp dword [rcx], 1
je 0x140095e0e
test byte [rcx + 0xac], 0x22
je 0x140095faf
test dword [r15 + 0x40], 0x100
je 0x140095e26
mov rax, qword [r15 + 0x60]
cmp byte [rax + 0x12], dil
je 0x140095faf
test byte [rcx + 0x44], 0x40
jne 0x140095faf
mov ebx, dword [rsi + 0x90]
inc dword [r12 + 0x38]
mov edx, dword [r12 + 0x38]
mov dword [r15 + 0x34], edx
movsxd rcx, dword [rsi + 0x90]
lea r14d, [rbx + 1]
cmp dword [rsi + 0x94], ecx
jg 0x140095e71
mov r8d, edx
mov dword [rsp + 0x20], r14d
mov edx, 0xa
xor r9d, r9d
mov rcx, rsi
call fcn.140031be0
jmp 0x140095e9e
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], rdi
mov eax, dword [r15 + 0x34]
lea r8, str.CO_ROUTINE___S
mov r9, r15
mov dword [rbp + 0x44], eax
mov edx, 1
mov dword [r15 + 0x30], r14d
mov rcx, r12
mov byte [rbp + 0x40], 0xd
mov qword [rbp + 0x48], rdi
mov qword [rbp + 0x58], rdi
mov dword [rbp + 0x50], edi
call fcn.1400321e0
lea r8, [rbp + 0x40]
mov rdx, r13
mov rcx, r12
call fcn.1400956a0
movzx eax, word [r13 + 2]
mov rcx, qword [r15 + 0x20]
mov word [rcx + 0x3a], ax
or dword [r15 + 0x40], 0x20
mov eax, dword [rbp + 0x4c]
mov edx, dword [r15 + 0x34]
mov dword [r15 + 0x38], eax
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140095f23
mov r8d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x44
xor r9d, r9d
mov rcx, rsi
call fcn.140031be0
jmp 0x140095f4c
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x44
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
mov rax, qword [rsi + 0x18]
mov byte [rax + 0x1f], dil
mov rax, qword [rsi + 0x18]
mov dword [rax + 0x28], edi
mov edx, dword [rsi + 0x90]
test ebx, ebx
jns 0x140095f68
lea ebx, [rdx - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x67], dil
je 0x140095f8a
lea rax, [0x14015f5e0]
mov dword [rax + 8], edx
mov byte [r12 + 0x1f], dil
mov dword [r12 + 0x28], edi
jmp 0x14009645f
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 8], edx
mov byte [r12 + 0x1f], dil
mov dword [r12 + 0x28], edi
lea rax, [rax + rcx*8]
jmp 0x14009645f
test dword [r15 + 0x40], 0x100
je 0x14009609a
mov rbx, qword [r15 + 0x60]
mov edx, dword [rbx + 4]
test edx, edx
jle 0x14009609a
movsxd rcx, dword [rsi + 0x90]
mov r8d, dword [rbx + 8]
cmp dword [rsi + 0x94], ecx
jg 0x140095ff5
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 9
mov rcx, rsi
call fcn.140031be0
jmp 0x140096022
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov edx, dword [rbx + 0xc]
mov r8d, dword [r15 + 0x44]
cmp r8d, edx
je 0x14009608c
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x14009605f
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x73
mov rcx, rsi
call fcn.140031be0
movzx eax, word [rbx + 0x10]
mov word [r13 + 2], ax
jmp 0x140096463
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x73
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movzx eax, word [rbx + 0x10]
mov word [r13 + 2], ax
jmp 0x140096463
mov r10, qword [r15 + 0x28]
test dword [r10 + 4], 0x1000000
jne 0x140096164
lea rbx, [rcx + 8]
cmp rbx, r15
jae 0x140096164
nop dword [rax]
cmp qword [rbx + 0x28], rdi
je 0x140096157
test byte [rbx + 0x40], 0x20
jne 0x140096157
mov r8, qword [rbx + 0x10]
test r8, r8
je 0x140096157
mov rax, qword [r15 + 0x20]
mov rdx, qword [rbx + 0x20]
mov rcx, qword [rax + 0x60]
cmp qword [rdx + 0x60], rcx
jne 0x140096157
mov r9, qword [r15 + 0x10]
test r9, r9
je 0x140096157
sub r9, r8
lea r12, [0x14013d3e0]
movzx ecx, byte [r8]
movzx edx, byte [r8 + r9]
cmp ecx, edx
jne 0x140096118
test ecx, ecx
je 0x14009612d
inc r8
jmp 0x140096102
movzx ecx, byte [rcx + r12]
movzx eax, byte [rdx + r12]
sub ecx, eax
jne 0x14009612b
inc r8
jmp 0x140096102
test ecx, ecx
mov r12, qword [rbp - 0x80]
jne 0x140096157
mov rax, qword [rbx + 0x20]
cmp qword [rax + 0x60], rdi
jne 0x14009614a
mov rax, qword [rbx + 0x28]
mov ecx, dword [rax + 0x10]
cmp dword [r10 + 0x10], ecx
jne 0x140096157
mov rax, qword [rbx + 0x28]
test dword [rax + 4], 0x1000000
je 0x1400961a7
add rbx, 0x68
cmp rbx, r15
jb 0x1400960c0
inc dword [r12 + 0x38]
mov ebx, edi
mov eax, dword [r12 + 0x38]
mov dword [r15 + 0x34], eax
movsxd r14, dword [rsi + 0x90]
cmp dword [rsi + 0x94], r14d
jg 0x140096284
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
mov edx, 8
mov rcx, rsi
call fcn.140031be0
mov r14d, eax
jmp 0x1400962ab
test rbx, rbx
je 0x140096164
mov edx, dword [rbx + 0x30]
test edx, edx
je 0x140096209
movsxd rcx, dword [rsi + 0x90]
mov r8d, dword [rbx + 0x34]
cmp dword [rsi + 0x94], ecx
jg 0x1400961dc
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 9
mov rcx, rsi
call fcn.140031be0
jmp 0x140096209
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [rbx + 0x44]
mov r8d, dword [r15 + 0x44]
cmp dword [rsi + 0x94], ecx
jg 0x140096245
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x73
mov rcx, rsi
call fcn.140031be0
mov rax, qword [rbx + 0x28]
movzx ecx, word [rax + 2]
mov word [r13 + 2], cx
jmp 0x140096463
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x73
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov rax, qword [rbx + 0x28]
movzx ecx, word [rax + 2]
mov word [r13 + 2], cx
jmp 0x140096463
lea rcx, [r14 + r14*2]
lea eax, [r14 + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 8
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
lea eax, [r14 + 1]
mov dword [r15 + 0x30], eax
mov eax, dword [r15 + 0x40]
or eax, 0x10
mov dword [r15 + 0x40], eax
test al, 8
jne 0x140096312
movsxd rbx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ebx
jg 0x1400962ec
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
mov edx, 0xe
mov rcx, rsi
call fcn.140031be0
mov ebx, eax
jmp 0x140096312
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 0xe
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
mov eax, dword [r15 + 0x44]
lea r8, str.MATERIALIZE___S
mov r9, r15
mov dword [rbp + 0x44], eax
mov edx, 1
mov byte [rbp + 0x40], 0xc
mov rcx, r12
mov qword [rbp + 0x48], rdi
mov qword [rbp + 0x58], rdi
mov dword [rbp + 0x50], edi
call fcn.1400321e0
lea r8, [rbp + 0x40]
mov rdx, r13
mov rcx, r12
call fcn.1400956a0
mov rcx, qword [r15 + 0x20]
movzx eax, word [r13 + 2]
mov word [rcx + 0x3a], ax
test ebx, ebx
je 0x140096393
mov rax, qword [rsi]
mov edx, dword [rsi + 0x90]
cmp byte [rax + 0x67], dil
je 0x140096377
lea rax, [0x14015f5e0]
jmp 0x140096390
lea eax, [rdx - 1]
test ebx, ebx
cmovns eax, ebx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
movsxd rcx, dword [rsi + 0x90]
lea edx, [r14 + 1]
mov r8d, dword [r15 + 0x34]
cmp dword [rsi + 0x94], ecx
jg 0x1400963c0
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x43
mov rcx, rsi
call fcn.140031be0
jmp 0x1400963ed
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov edx, dword [rsi + 0x90]
test r14d, r14d
jns 0x1400963fc
lea r14d, [rdx - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x67], dil
je 0x14009640e
lea rax, [0x14015f5e0]
jmp 0x140096420
movsxd rax, r14d
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov byte [r12 + 0x1f], dil
mov dword [r12 + 0x28], edi
mov eax, dword [r15 + 0x40]
and eax, 0x108
cmp eax, 0x100
jne 0x14009645f
mov eax, dword [r15 + 0x30]
mov rcx, qword [r15 + 0x60]
mov dword [rcx + 4], eax
mov eax, dword [r15 + 0x34]
mov dword [rcx + 8], eax
mov eax, dword [r15 + 0x44]
mov dword [rcx + 0xc], eax
movzx eax, word [r13 + 2]
mov word [rcx + 0x10], ax
mov r14, qword [rbp - 0x38]
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x67], dil
jne 0x140098989
mov rbx, qword [rsp + 0x48]
lea rdx, [rsp + 0x60]
mov rcx, rbx
mov dword [rsp + 0x60], edi
call fcn.14004ae40
mov edx, dword [r12 + 0x12c]
sub edx, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x40]
mov dword [r12 + 0x12c], edx
mov rdx, qword [rsp + 0x68]
mov qword [r12 + 0x168], r14
mov rax, qword [rbp - 0x60]
lea r9, [0x140133e28]
inc rax
inc ecx
mov dword [rsp + 0x40], ecx
mov qword [rbp - 0x60], rax
cmp ecx, dword [rdx]
jl 0x140095cc0
mov rax, qword [rbx + 0x30]
mov ecx, dword [rbx + 4]
mov r9, qword [rbx + 0x20]
mov r13, qword [rbx + 0x38]
mov qword [rbp - 0x40], rax
mov rax, qword [rbx + 0x40]
mov qword [rbp - 0x38], rax
movzx eax, byte [rbx + 4]
and al, 1
mov qword [rbp - 0x20], r9
mov byte [rbp], al
mov eax, ecx
and al, 9
mov qword [rbp - 0x78], r13
cmp al, 1
jne 0x140096517
mov r13, qword [rbp + 0x78]
test r13, r13
jne 0x140096586
test r9, r9
je 0x1400965f6
mov r13, qword [rbp - 0x78]
mov rdx, qword [rbp + 0x78]
mov r15, qword [rbp - 0x20]
test rdx, rdx
je 0x140096677
mov r9d, dword [r15]
xor r8d, r8d
mov rcx, r12
call fcn.14008b230
mov r8d, dword [r12 + 0x34]
mov r14, rax
mov dword [rbp + 0x84], r8d
lea ecx, [r8 + 1]
mov dword [r12 + 0x34], ecx
mov rcx, qword [rbp + 0x78]
mov r9d, dword [r15]
movsxd rbx, dword [rsi + 0x90]
inc r9d
add r9d, dword [rcx]
cmp dword [rsi + 0x94], ebx
jg 0x14009662e
mov edx, 0x76
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.140031be0
mov ebx, eax
jmp 0x14009665c
test r9, r9
je 0x140096513
mov rax, qword [rbp + 0x78]
mov edx, dword [rax]
cmp edx, dword [r9]
jne 0x140096513
mov r15d, edi
test edx, edx
jle 0x1400965f6
lea rbx, [r13 + 8]
lea r14, [r9 + 8]
nop dword [rax]
movzx eax, byte [r14 + 0x10]
cmp byte [rbx + 0x10], al
jne 0x140096513
mov r8, qword [r14]
mov r9d, 0xffffffff
mov rdx, qword [rbx]
xor ecx, ecx
call fcn.140054f80
test eax, eax
jne 0x140096513
inc r15d
add r14, 0x20
add rbx, 0x20
cmp r15d, dword [r13]
jl 0x1400965b0
mov rbx, qword [rsp + 0x48]
mov r9, qword [rbp - 0x20]
mov ecx, dword [rbx + 4]
cmp qword [rbx + 0x70], rdi
jne 0x140096513
and ecx, 0xfffffffe
xor r8d, r8d
mov dword [rbx + 4], ecx
mov rdx, r9
mov rcx, qword [rsp + 0x58]
call fcn.14004c560
or dword [rbx + 4], 8
mov r13, rax
mov qword [rbp - 0x78], rax
mov qword [rbx + 0x38], rax
mov byte [rbp], 2
jmp 0x140096517
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x76
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov r9d, 0xfffffff8
mov r8, r14
mov edx, ebx
mov rcx, rsi
call fcn.140032910
mov dword [rbp + 0x90], ebx
jmp 0x140096681
mov dword [rbp + 0x90], 0xffffffff
mov rax, qword [rbp - 0x48]
cmp byte [rax], 0xc
jne 0x140096778
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [r15]
mov r8d, dword [rax + 4]
cmp dword [rsi + 0x94], ecx
jg 0x1400966ba
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x76
mov rcx, rsi
call fcn.140031be0
jmp 0x1400966e7
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x76
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov r14, qword [rsp + 0x48]
test dword [r14 + 4], 0x800
je 0x14009677d
mov ecx, dword [r15]
lea eax, [rcx - 1]
movsxd r14, eax
test eax, eax
jle 0x140096757
mov r13, qword [rsp + 0x58]
mov rbx, r14
shl rbx, 5
test byte [rbx + r15 + 0x1c], 0x40
jne 0x140096753
mov rdx, qword [rbx + r15 + 8]
test rdx, rdx
je 0x14009672d
mov rcx, r13
call fcn.14004bd70
mov rdx, qword [rbx + r15 + 0x10]
test rdx, rdx
je 0x14009673f
mov rcx, r13
call fcn.140006bf0
mov ecx, dword [r15]
dec r14
dec ecx
sub rbx, 0x20
mov dword [r15], ecx
test r14, r14
jg 0x140096713
mov r13, qword [rbp - 0x78]
mov edx, edi
test ecx, ecx
jle 0x140096778
lea rcx, [r15 + 8]
test byte [rcx + 0x14], 0x40
jne 0x14009676d
mov rax, qword [rcx]
mov byte [rax], 0x79
inc edx
add rcx, 0x20
cmp edx, dword [r15]
jl 0x140096761
mov r14, qword [rsp + 0x48]
dec dword [r12 + 0x44]
mov r15d, 0x4000
mov r8d, dword [r12 + 0x44]
mov dword [rbp - 0x18], r8d
test dword [r14 + 4], r15d
jne 0x14009679e
mov word [r14 + 2], 0x140
mov rdx, r14
mov rcx, r12
call fcn.14008d280
cmp dword [r14 + 8], edi
jne 0x1400967e5
movsxd rcx, dword [rbp + 0x90]
test ecx, ecx
js 0x1400967e5
mov rax, qword [rsi]
cmp byte [rax + 0x67], dil
je 0x1400967cc
lea rax, [0x14015f5e0]
jmp 0x1400967db
mov rax, qword [rsi + 0x88]
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*8]
mov byte [rax], 0x77
or byte [rbp + 0x9c], 1
test byte [r14 + 4], 1
je 0x1400968a8
mov eax, dword [r12 + 0x34]
xor r9d, r9d
mov dword [rbp + 4], eax
xor r8d, r8d
inc eax
mov rcx, r12
mov dword [r12 + 0x34], eax
mov rdx, qword [r14 + 0x20]
call fcn.14008b230
movsxd rbx, dword [rsi + 0x90]
mov r14, rax
mov edx, dword [rbp + 4]
cmp dword [rsi + 0x94], ebx
jg 0x140096841
mov r8d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x76
xor r9d, r9d
mov rcx, rsi
call fcn.140031be0
mov ebx, eax
jmp 0x14009686a
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x76
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
mov r9d, 0xfffffff8
mov r8, r14
mov edx, ebx
mov rcx, rsi
call fcn.140032910
mov dword [rbp + 8], ebx
movsxd rax, dword [rsi + 0x90]
test eax, eax
jle 0x14009689d
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov word [rax + rcx*8 - 0x16], 8
mov r14, qword [rsp + 0x48]
mov byte [rbp + 1], 3
jmp 0x1400968ac
mov byte [rbp + 1], dil
cmp dword [rsp + 0x78], edi
jne 0x140096bd8
test r13, r13
jne 0x140096bd8
movzx ebx, word [r14 + 4]
movzx eax, byte [rbp]
and bx, r15w
mov r15, qword [r14 + 0x70]
neg al
sbb cx, cx
and cx, 0x100
or bx, cx
test r15, r15
je 0x1400968ed
mov rdx, r14
mov rcx, r12
call fcn.1400baf40
movsx eax, word [r14 + 2]
mov rcx, r12
mov r9, qword [rbp + 0x78]
mov r8, qword [rbp - 0x40]
mov rdx, qword [rsp + 0x68]
mov dword [rsp + 0x38], eax
mov rax, qword [r14 + 0x20]
mov word [rsp + 0x30], bx
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rax
call fcn.1400b66c0
mov r14, rax
test rax, rax
je 0x140095c1d
mov r10, qword [rsp + 0x48]
movzx eax, word [rax + 0x50]
cmp ax, word [r10 + 2]
jge 0x14009693f
mov word [r10 + 2], ax
cmp byte [rbp], dil
je 0x140096956
movzx ecx, byte [r14 + 0x4b]
movzx eax, byte [rbp + 1]
test cl, cl
cmovne eax, ecx
mov byte [rbp + 1], al
mov rdx, qword [rbp + 0x78]
test rdx, rdx
je 0x1400969aa
movsx r8d, byte [r14 + 0x49]
mov dword [rbp + 0x80], r8d
test byte [r14 + 0x4c], 4
jne 0x140096978
mov eax, dword [r14 + 0x38]
jmp 0x140096999
movzx eax, byte [r14 + 0x48]
imul rcx, rax, 0x70
cmp qword [rcx + r14 + 0x338], rdi
je 0x140096991
mov eax, dword [r14 + 0x38]
jmp 0x140096999
mov eax, dword [rcx + r14 + 0x310]
mov dword [rbp + 0x98], eax
cmp r8d, dword [rdx]
cmove rdx, rdi
mov qword [rbp + 0x78], rdx
movsxd rax, dword [rbp + 0x90]
test eax, eax
js 0x1400969ef
test rdx, rdx
jne 0x1400969ef
mov rcx, qword [rsi]
cmp byte [rcx + 0x67], dil
jne 0x1400969ef
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rbx, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.140032700
mov r10, qword [rsp + 0x48]
mov word [rbx], 0xb8
mov qword [rbx + 0x10], rdi
mov rdx, r10
test r15, r15
je 0x140096b92
mov r15d, dword [r12 + 0x44]
mov r8, r14
mov rcx, qword [rbp - 0x80]
lea r12d, [r15 - 1]
sub r15d, 2
inc dword [rcx + 0x38]
mov r13d, dword [rcx + 0x38]
mov r9d, r13d
mov dword [rsp + 0x20], r12d
lea ebx, [r15 - 1]
mov dword [rcx + 0x44], ebx
call fcn.1400bf020
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140096a52
mov r9d, ebx
mov dword [rsp + 0x20], edi
xor r8d, r8d
mov edx, 8
mov rcx, rsi
call fcn.140031be0
jmp 0x140096a7b
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 8
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov rcx, qword [rsi + 0x18]
not r12d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140096a97
mov r8d, r12d
mov rdx, rsi
call fcn.140032480
jmp 0x140096aa7
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi + 0x90]
movsxd rdx, r12d
mov dword [rcx + rdx*4], eax
mov rax, qword [rbp - 0x48]
lea r9, [rbp + 0x78]
mov r14, qword [rsp + 0x48]
mov r8d, 0xffffffff
mov r12, qword [rbp - 0x80]
mov rdx, r14
mov dword [rsp + 0x38], ebx
mov rcx, r12
mov dword [rsp + 0x30], r15d
mov qword [rsp + 0x28], rax
lea rax, [rbp]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x98], edi
call fcn.140089f20
mov rcx, qword [rsi + 0x18]
not r15d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140096b02
mov r8d, r15d
mov rdx, rsi
call fcn.140032480
jmp 0x140096b12
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi + 0x90]
movsxd rdx, r15d
mov dword [rcx + rdx*4], eax
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140096b3a
xor r9d, r9d
mov dword [rsp + 0x20], edi
mov r8d, r13d
mov edx, 0x43
mov rcx, rsi
call fcn.140031be0
jmp 0x140096b64
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], r13d
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
mov rcx, qword [rsi + 0x18]
not ebx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140096b86
mov r8d, ebx
mov rdx, rsi
call fcn.140032480
mov rbx, qword [rbp - 0x48]
jmp 0x140098871
movsxd rdx, ebx
mov rbx, qword [rbp - 0x48]
jmp 0x140098864
mov eax, dword [r14 + 0x3c]
lea r9, [rbp + 0x78]
mov rbx, qword [rbp - 0x48]
mov r8d, 0xffffffff
mov dword [rsp + 0x38], eax
mov rcx, r12
mov eax, dword [r14 + 0x38]
mov dword [rsp + 0x30], eax
lea rax, [rbp]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
call fcn.140089f20
mov rcx, r14
call fcn.1400b77c0
mov r14, qword [rsp + 0x48]
jmp 0x140098871
mov dword [rbp - 0x70], edi
mov dword [rbp - 0x68], edi
mov dword [rsp + 0x78], edi
test r13, r13
je 0x140096d08
mov rcx, qword [r14 + 0x20]
mov eax, dword [rcx]
test eax, eax
jle 0x140096c0d
add rcx, 0x22
nop dword [rax]
dec eax
mov word [rcx], di
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x140096c00
mov eax, dword [r13]
test eax, eax
jle 0x140096c2d
lea rcx, [r13 + 0x22]
nop dword [rax]
dec eax
mov word [rcx], di
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x140096c20
cmp word [r14 + 2], 0x42
jle 0x140096c3c
mov word [r14 + 2], 0x42
mov r14, qword [rbp + 0x78]
test r14, r14
je 0x140096cda
mov eax, dword [r13]
cmp eax, dword [r14]
jne 0x140096cda
mov edx, edi
test eax, eax
jle 0x140096c7f
mov rcx, rdi
nop
movzx eax, byte [rcx + r14 + 0x18]
lea rcx, [rcx + 0x20]
and al, 1
inc edx
mov byte [rcx + r13 - 8], al
mov eax, dword [r13]
mov r14, qword [rbp + 0x78]
cmp edx, eax
jl 0x140096c60
test r14, r14
je 0x140096cda
cmp eax, dword [r14]
jne 0x140096cda
mov r15d, edi
test eax, eax
jle 0x140096cd2
lea rbx, [r13 + 8]
add r14, 8
nop dword [rax + rax]
movzx eax, byte [r14 + 0x10]
cmp byte [rbx + 0x10], al
jne 0x140096cda
mov r8, qword [r14]
mov r9d, 0xffffffff
mov rdx, qword [rbx]
xor ecx, ecx
call fcn.140054f80
test eax, eax
jne 0x140096cda
inc r15d
add r14, 0x20
add rbx, 0x20
cmp r15d, dword [r13]
jl 0x140096ca0
mov dword [rsp + 0x78], 1
mov r14, qword [rsp + 0x48]
mov eax, dword [r12 + 0x44]
mov r15, qword [rsp + 0x58]
dec eax
mov dword [rsp + 0x70], eax
mov dword [r12 + 0x44], eax
test r15, r15
je 0x140096d0f
mov edx, 0x40
mov rcx, r15
call fcn.140006fe0
jmp 0x140096d19
mov word [r14 + 2], di
jmp 0x140096cdf
mov ecx, 0x40
call fcn.140006930
mov qword [rbp - 0x50], rax
mov r13, rax
test rax, rax
je 0x140096dcd
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov rcx, qword [r12]
test rcx, rcx
je 0x140096d50
mov edx, 0x18
call fcn.140006fe0
jmp 0x140096d5a
mov ecx, 0x18
call fcn.140006930
mov rcx, rax
test rax, rax
je 0x140096d90
mov rax, qword [r12 + 0xb8]
mov qword [rcx], rax
lea rax, [0x140095570]
mov qword [r12 + 0xb8], rcx
mov qword [rcx + 0x10], rax
mov qword [rcx + 8], r13
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x68], rcx
jmp 0x140096dd2
mov rdx, qword [r13 + 0x20]
mov rbx, qword [r12]
test rdx, rdx
je 0x140096da5
mov rcx, rbx
call fcn.140006bf0
mov rdx, qword [r13 + 0x30]
test rdx, rdx
je 0x140096db6
mov rcx, rbx
call fcn.140006bf0
mov rdx, r13
mov rcx, rbx
call fcn.140006bf0
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x68], rcx
jmp 0x140096dd2
mov rcx, qword [rsp + 0x68]
cmp byte [r15 + 0x67], dil
jne 0x140098991
mov eax, dword [r14 + 0x10]
xorps xmm0, xmm0
mov dword [r13 + 0x3c], eax
xorps xmm1, xmm1
mov eax, dword [r12 + 0x38]
mov qword [rbp + 0x48], rcx
inc eax
mov rcx, qword [rbp - 0x78]
mov qword [rbp + 0x40], r12
mov qword [rbp + 0x50], r13
movdqu xmmword [rbp + 0x58], xmm0
movdqu xmmword [rbp + 0x68], xmm1
mov dword [r13 + 0x10], eax
test rcx, rcx
je 0x140096e18
mov eax, dword [rcx]
jmp 0x140096e1a
mov eax, edi
mov r15, qword [rbp - 0x20]
mov dword [r13 + 0xc], eax
mov qword [r13 + 0x18], rcx
test r15, r15
je 0x140096e94
lea rbx, [r15 + 8]
mov r14d, edi
cmp dword [r15], edi
jle 0x140096e94
lea r13, [0x140055bb0]
lea rsi, [0x1400466f0]
lea r12, [0x140046700]
nop dword [rax]
mov rdx, qword [rbx]
lea rax, [rbp + 0x40]
mov qword [rbp + 0x18], r13
mov qword [rbp + 0x20], rsi
mov qword [rbp + 0x28], r12
mov dword [rbp + 0x30], edi
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x10], rdi
test rdx, rdx
je 0x140096e7c
lea rcx, [rbp + 0x10]
call fcn.1400462e0
inc r14d
add rbx, 0x20
cmp r14d, dword [r15]
jl 0x140096e50
mov rsi, qword [rbp - 0x28]
mov r12, qword [rbp - 0x80]
mov r13, qword [rbp - 0x50]
mov r15, qword [rbp + 0x78]
test r15, r15
je 0x140096f04
lea rbx, [r15 + 8]
mov r14d, edi
cmp dword [r15], edi
jle 0x140096f04
lea r12, [0x140055bb0]
lea rsi, [0x1400466f0]
lea r13, [0x140046700]
nop
mov rdx, qword [rbx]
lea rax, [rbp + 0x40]
mov qword [rbp + 0x18], r12
mov qword [rbp + 0x20], rsi
mov qword [rbp + 0x28], r13
mov dword [rbp + 0x30], edi
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x10], rdi
test rdx, rdx
je 0x140096eec
lea rcx, [rbp + 0x10]
call fcn.1400462e0
inc r14d
add rbx, 0x20
cmp r14d, dword [r15]
jl 0x140096ec0
mov rsi, qword [rbp - 0x28]
mov r12, qword [rbp - 0x80]
mov r13, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x140096f95
cmp qword [rbp - 0x78], rdi
je 0x140096f59
mov rbx, qword [rsp + 0x48]
lea rax, [0x140095340]
xorps xmm0, xmm0
mov qword [rbp + 0x30], rdi
movdqu xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x10], r12
mov rdx, qword [rbx + 0x40]
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x38], rbx
test rdx, rdx
je 0x140096f51
lea rcx, [rbp + 0x10]
call fcn.1400462e0
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbx + 0x30]
mov qword [rbp - 0x40], rax
lea rax, [0x140055bb0]
mov dword [rbp + 0x30], edi
mov qword [rbp + 0x18], rax
mov rdx, rcx
lea rax, [0x1400466f0]
mov qword [rbp + 0x10], rdi
mov qword [rbp + 0x20], rax
lea rcx, [rbp + 0x10]
lea rax, [0x140046700]
mov qword [rbp + 0x28], rax
lea rax, [rbp + 0x40]
mov qword [rbp + 0x38], rax
call fcn.1400462e0
mov rbx, qword [rsp + 0x48]
mov eax, dword [r13 + 0x28]
mov dword [r13 + 0x2c], eax
cmp qword [rbx + 0x38], rdi
jne 0x140096fd0
cmp qword [rbx + 0x40], rdi
jne 0x140096fd0
cmp dword [r13 + 0x38], 1
jne 0x140096fd0
mov rdx, qword [r13 + 0x30]
lea r8, [rbp - 0x10]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rdx]
call fcn.140092740
mov byte [rsp + 0x50], al
jmp 0x140096fd5
mov byte [rsp + 0x50], dil
mov edx, dword [r13 + 0x38]
mov r14d, edi
mov dword [rsp + 0x74], edi
test edx, edx
jle 0x140097108
mov r12, qword [rbp - 0x50]
lea rsi, [0x140055bb0]
mov rbx, rdi
mov qword [rbp - 0x60], rbx
nop word [rax + rax]
mov rax, qword [r12 + 0x30]
mov r13, qword [rbx + rax]
or dword [rbp + 0x68], 0x20000
mov qword [rbp - 0x30], r13
mov r15, qword [r13 + 0x20]
test r15, r15
je 0x140097089
lea rbx, [r15 + 8]
mov r14d, edi
cmp dword [r15], edi
jle 0x140097080
lea r12, [0x1400466f0]
lea r13, [0x140046700]
nop word [rax + rax]
mov rdx, qword [rbx]
lea rax, [rbp + 0x40]
mov qword [rbp + 0x18], rsi
mov qword [rbp + 0x20], r12
mov qword [rbp + 0x28], r13
mov dword [rbp + 0x30], edi
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x10], rdi
test rdx, rdx
je 0x14009706c
lea rcx, [rbp + 0x10]
call fcn.1400462e0
inc r14d
add rbx, 0x20
cmp r14d, dword [r15]
jl 0x140097040
mov r13, qword [rbp - 0x30]
mov r12, qword [rbp - 0x50]
mov r14d, dword [rsp + 0x74]
mov rbx, qword [rbp - 0x60]
test dword [r13 + 4], 0x1000000
je 0x1400970d2
mov rax, qword [r13 + 0x40]
mov qword [rbp + 0x18], rsi
mov dword [rbp + 0x30], edi
mov qword [rbp + 0x10], rdi
mov rdx, qword [rax + 0x48]
lea rax, [0x1400466f0]
mov qword [rbp + 0x20], rax
lea rax, [0x140046700]
mov qword [rbp + 0x28], rax
lea rax, [rbp + 0x40]
mov qword [rbp + 0x38], rax
test rdx, rdx
je 0x1400970d2
lea rcx, [rbp + 0x10]
call fcn.1400462e0
and dword [rbp + 0x68], 0xfffdffff
inc r14d
mov edx, dword [r12 + 0x38]
add rbx, 0x20
mov dword [rsp + 0x74], r14d
mov qword [rbp - 0x60], rbx
cmp r14d, edx
jl 0x140097000
mov rsi, qword [rbp - 0x28]
mov r12, qword [rbp - 0x80]
mov r13, qword [rbp - 0x50]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x58]
mov eax, dword [r12 + 0x38]
mov dword [r13 + 0x14], eax
cmp byte [r14 + 0x67], dil
jne 0x140095c22
mov r15, qword [rbp - 0x78]
test r15, r15
je 0x1400981a2
mov qword [rbp - 0x60], rdi
mov r14, rdi
mov word [rsp + 0x50], di
cmp edx, 1
jne 0x14009722b
mov rax, qword [r13 + 0x30]
cmp dword [rax + 0x14], edi
jl 0x14009722b
mov rax, qword [rax]
test rax, rax
je 0x14009722b
test dword [rax + 4], 0x1000
jne 0x14009722b
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x14009722b
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x140097193
mov rcx, qword [rsp + 0x58]
xor r9d, r9d
xor r8d, r8d
call fcn.14004c060
mov rbx, rax
jmp 0x140097196
mov rbx, rdi
mov rcx, qword [rsp + 0x58]
xor r8d, r8d
mov rdx, r15
call fcn.14004c560
mov qword [rbp - 0x60], rax
mov r14, rax
test rax, rax
jne 0x1400971c7
mov rcx, qword [r12]
mov rdx, rbx
call fcn.14004d0b0
mov r14, rax
mov qword [rbp - 0x60], rax
jmp 0x140097211
movsxd rax, dword [rax]
lea ecx, [rax + 1]
cmp dword [r14 + 4], ecx
jge 0x1400971eb
mov rcx, qword [r12]
mov r8, rbx
mov rdx, r14
call fcn.14004d190
mov r14, rax
mov qword [rbp - 0x60], rax
jmp 0x140097211
movups xmm0, xmmword [0x14013bb50]
shl rax, 5
movups xmm1, xmmword [0x14013bb60]
mov dword [r14], ecx
movups xmmword [rax + r14 + 8], xmm0
movups xmmword [rax + r14 + 0x18], xmm1
mov qword [rax + r14 + 8], rbx
mov rax, r14
neg rax
sbb r15w, r15w
and r15w, 0x500
mov word [rsp + 0x50], r15w
mov r15, qword [rbp - 0x78]
mov eax, dword [r12 + 0x34]
xor r8d, r8d
mov dword [r13 + 4], eax
mov rdx, r15
inc dword [r12 + 0x34]
mov rcx, r12
mov r9d, dword [r13 + 0x28]
call fcn.14008b230
movsxd r10, dword [rsi + 0x90]
mov rbx, rax
mov edx, dword [r13 + 0xc]
mov r8d, dword [r13 + 4]
mov qword [rbp - 8], rax
mov dword [rbp - 0x28], r10d
cmp dword [rsi + 0x94], r10d
jg 0x14009728a
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x77
mov rcx, rsi
call fcn.140031be0
mov r10d, eax
mov dword [rbp - 0x28], eax
jmp 0x1400972b8
lea rcx, [r10 + r10*2]
lea eax, [r10 + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x77
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov r9d, 0xfffffff8
mov r8, rbx
mov edx, r10d
mov rcx, rsi
call fcn.140032910
mov eax, dword [r12 + 0x38]
mov r8, qword [rbp - 0x78]
inc eax
mov dword [rbp - 0x54], eax
lea edx, [rax + 1]
mov eax, dword [r12 + 0x44]
lea ecx, [rdx + 2]
mov dword [rbp - 0x6c], edx
mov dword [r12 + 0x38], ecx
lea ebx, [rcx + 1]
dec eax
mov dword [rsp + 0x40], ecx
mov dword [rsp + 0x74], eax
lea r15d, [rax - 1]
mov dword [r12 + 0x44], r15d
add ecx, dword [r8]
mov dword [r12 + 0x38], ecx
mov dword [rsp + 0x60], r15d
lea eax, [rcx + 1]
add ecx, dword [r8]
mov dword [r12 + 0x38], ecx
movsxd rcx, dword [rsi + 0x90]
mov dword [rbp - 0x58], eax
cmp dword [rsi + 0x94], ecx
jg 0x14009734a
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x47
xor r8d, r8d
mov rcx, rsi
call fcn.140031be0
mov r8, qword [rbp - 0x78]
jmp 0x140097373
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov edx, dword [r8]
movsxd rcx, dword [rsi + 0x90]
dec edx
add edx, ebx
cmp dword [rsi + 0x94], ecx
jg 0x1400973a2
mov dword [rsp + 0x20], edx
mov r9d, ebx
mov edx, 0x4b
xor r8d, r8d
mov rcx, rsi
call fcn.140031be0
jmp 0x1400973cb
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1400973f5
mov r8d, dword [rsp + 0x40]
mov r9d, r15d
mov edx, 9
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.140031be0
jmp 0x140097426
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov eax, dword [rsp + 0x78]
mov edx, 0x80
mov rbx, qword [rbp - 0x78]
neg eax
mov r8, qword [rbp - 0x40]
mov eax, 0x40
sbb cx, cx
mov dword [rsp + 0x38], edi
and cx, 0x200
mov r9, rbx
cmp byte [rbp], 2
cmove ax, dx
mov rdx, qword [rsp + 0x68]
or cx, ax
or cx, word [rsp + 0x50]
mov word [rsp + 0x30], cx
mov rcx, r12
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r14
call fcn.1400b66c0
mov qword [rbp - 0x30], rax
mov rcx, rax
test rax, rax
jne 0x1400974a3
test r14, r14
je 0x140095c1d
mov rdx, r14
mov r14, qword [rsp + 0x58]
mov rcx, r14
call fcn.14004d690
jmp 0x140095c22
movzx eax, byte [rax + 0x4b]
mov dword [rsp + 0x68], eax
movsx eax, byte [rcx + 0x49]
cmp eax, dword [rbx]
jne 0x1400974be
mov r14d, edi
mov dword [rbp - 0x40], edi
jmp 0x140097848
cmp byte [rbp], dil
je 0x1400974d6
mov rax, qword [rsp + 0x48]
lea r9, str.DISTINCT
test byte [rax + 4], 1
je 0x1400974dd
lea r9, str.GROUP_BY
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
mov rcx, r12
call fcn.1400321e0
mov edx, dword [rbx]
mov r14d, edx
mov eax, dword [r13 + 0x28]
mov dword [rbp - 0x40], 1
mov dword [rbp - 0x68], edx
test eax, eax
jle 0x140097533
mov r8, qword [r13 + 0x20]
mov r9d, eax
add r8, 0x1a
movsx ecx, word [r8]
lea eax, [r14 + 1]
cmp ecx, edx
lea r8, [r8 + 0x20]
cmovl eax, r14d
mov r14d, eax
lea eax, [rdx + 1]
cmovl eax, edx
mov edx, eax
sub r9, 1
jne 0x140097510
cmp r14d, 1
jne 0x140097566
movzx eax, byte [r12 + 0x1f]
test al, al
jne 0x140097552
mov r13d, dword [r12 + 0x38]
inc r13d
mov dword [r12 + 0x38], r13d
jmp 0x140097599
dec al
movzx eax, al
mov byte [r12 + 0x1f], al
mov r13d, dword [r12 + rax*4 + 0xd8]
jmp 0x140097599
mov ecx, dword [r12 + 0x28]
mov r13d, dword [r12 + 0x2c]
cmp r14d, ecx
jg 0x140097588
lea eax, [r14 + r13]
sub ecx, r14d
mov dword [r12 + 0x2c], eax
mov dword [r12 + 0x28], ecx
jmp 0x140097599
mov eax, dword [r12 + 0x38]
lea r13d, [rax + 1]
add eax, r14d
mov dword [r12 + 0x38], eax
xor r9d, r9d
mov byte [rsp + 0x20], dil
mov r8d, r13d
mov rdx, rbx
mov rcx, r12
call fcn.140053f30
mov rax, qword [rbp - 0x50]
mov r15d, edi
cmp dword [rax + 0x28], edi
jle 0x140097612
mov r12d, dword [rbp - 0x68]
mov rbx, rdi
mov rdi, rax
nop word [rax + rax]
mov rdx, qword [rdi + 0x20]
add rdx, rbx
movsx eax, word [rdx + 0x1a]
cmp eax, r12d
jl 0x1400975ff
movsx r9d, word [rdx + 0x18]
lea eax, [r12 + r13]
mov r8d, dword [rdx + 0x10]
mov rcx, rsi
mov rdx, qword [rdx]
mov dword [rsp + 0x20], eax
call fcn.140051300
inc r12d
inc r15d
add rbx, 0x20
cmp r15d, dword [rdi + 0x28]
jl 0x1400975d0
mov r12, qword [rbp - 0x80]
xor edi, edi
movzx eax, byte [r12 + 0x1f]
test al, al
jne 0x14009762a
mov ebx, dword [r12 + 0x38]
inc ebx
mov dword [r12 + 0x38], ebx
jmp 0x14009763c
dec al
movzx eax, al
mov byte [r12 + 0x1f], al
mov ebx, dword [r12 + rax*4 + 0xd8]
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140097664
mov r9d, r14d
mov dword [rsp + 0x20], ebx
mov r8d, r13d
mov edx, 0x61
mov rcx, rsi
call fcn.140031be0
jmp 0x140097692
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x61
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rdi
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [rax + 4]
cmp dword [rsi + 0x94], ecx
jg 0x1400976c1
mov r8d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x8b
mov r9d, ebx
mov rcx, rsi
call fcn.140031be0
jmp 0x1400976ed
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x8b
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
test ebx, ebx
je 0x140097708
movzx eax, byte [r12 + 0x1f]
cmp al, 8
jae 0x140097708
mov dword [r12 + rax*4 + 0xd8], ebx
inc byte [r12 + 0x1f]
cmp r14d, 1
jne 0x14009772c
test r13d, r13d
je 0x14009773d
movzx eax, byte [r12 + 0x1f]
cmp al, 8
jae 0x14009773d
mov dword [r12 + rax*4 + 0xd8], r13d
inc byte [r12 + 0x1f]
jmp 0x14009773d
cmp r14d, dword [r12 + 0x28]
jle 0x14009773d
mov dword [r12 + 0x28], r14d
mov dword [r12 + 0x2c], r13d
mov rcx, qword [rbp - 0x30]
call fcn.1400b77c0
mov r8d, dword [r12 + 0x34]
mov r13, qword [rbp - 0x50]
mov dword [rbp - 0x70], r8d
mov dword [r13 + 8], r8d
inc dword [r12 + 0x34]
movzx eax, byte [r12 + 0x1f]
test al, al
jne 0x140097774
mov edx, dword [r12 + 0x38]
inc edx
mov dword [r12 + 0x38], edx
jmp 0x140097786
dec al
movzx eax, al
mov byte [r12 + 0x1f], al
mov edx, dword [r12 + rax*4 + 0xd8]
movsxd rcx, dword [rsi + 0x90]
mov dword [rbp - 0x68], edx
cmp dword [rsi + 0x94], ecx
jg 0x1400977af
mov r9d, edx
mov dword [rsp + 0x20], r14d
mov edx, 0x79
mov rcx, rsi
call fcn.140031be0
jmp 0x1400977dd
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x79
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [r13 + 4]
cmp dword [rsi + 0x94], ecx
jg 0x14009780b
mov r9d, dword [rsp + 0x70]
mov r8d, edx
mov edx, 0x21
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.140031be0
jmp 0x14009783b
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x70]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0x21
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov r14d, dword [rbp - 0x40]
mov rcx, qword [rbp - 0x30]
mov byte [r13 + 1], 1
cmp dword [rsp + 0x78], 0
je 0x1400978a0
mov rax, qword [rsp + 0x58]
test byte [rax + 0x60], 4
jne 0x1400978a0
test r14d, r14d
jne 0x140097865
test byte [rcx + 0x4c], 8
je 0x1400978a0
mov qword [rbp + 0x78], rdi
mov rcx, qword [rsi]
cmp byte [rcx + 0x67], 0
jne 0x1400978a0
movsxd rax, dword [rbp + 0x90]
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rbx, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.140032700
mov word [rbx], 0xb8
mov qword [rbx + 0x10], rdi
movsxd r15, dword [rsi + 0x90]
mov dword [rsp + 0x78], r15d
test r14d, r14d
je 0x1400978d9
mov edx, dword [r13 + 4]
cmp dword [rsi + 0x94], r15d
jg 0x140097939
mov eax, dword [rbp - 0x70]
mov r8d, edx
mov r9d, dword [rbp - 0x68]
mov edx, 0x85
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140031be0
mov edx, dword [rbp - 0x70]
mov rax, qword [rbp - 0x78]
mov ebx, edi
cmp dword [rax], 0
jle 0x1400979d0
mov r15d, dword [rbp - 0x40]
lea r14, [rax + 8]
nop dword [rax]
nop word [rax + rax]
mov r8d, dword [rbp - 0x58]
add r8d, ebx
test r15d, r15d
je 0x1400979a2
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140097973
mov dword [rsp + 0x20], r8d
mov r9d, ebx
mov r8d, edx
mov rcx, rsi
mov edx, 0x5e
call fcn.140031be0
jmp 0x1400979b2
mov r8d, dword [rbp - 0x68]
lea rcx, [r15 + r15*2]
lea eax, [r15 + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp - 0x70]
mov dword [rax + rcx*8 + 0xc], edx
mov dword [rax + rcx*8], 0x85
mov dword [rax + rcx*8 + 8], r8d
mov qword [rax + rcx*8 + 0x10], rdi
jmp 0x1400978dc
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rdi
jmp 0x1400979b5
mov byte [r13], 1
mov rcx, r12
mov rdx, qword [r14]
call fcn.140053d80
mov edx, dword [rbp - 0x70]
mov rax, qword [rbp - 0x78]
inc ebx
add r14, 0x20
cmp ebx, dword [rax]
jl 0x140097900
mov r15d, dword [rsp + 0x78]
mov r14d, dword [rbp - 0x40]
mov rbx, qword [rbp - 8]
test rbx, rbx
je 0x1400979db
inc dword [rbx]
movsxd rdx, dword [rsi + 0x90]
mov r8d, dword [rax]
cmp dword [rsi + 0x94], edx
jg 0x140097a0f
mov r9d, dword [rbp - 0x58]
mov edx, 0x5a
mov dword [rsp + 0x20], r8d
mov rcx, rsi
mov r8d, dword [rsp + 0x40]
inc r8d
call fcn.140031be0
mov edx, eax
jmp 0x140097a4a
mov r9d, dword [rsp + 0x40]
lea rcx, [rdx + rdx*2]
mov r10d, dword [rbp - 0x58]
lea eax, [rdx + 1]
mov dword [rsi + 0x90], eax
inc r9d
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x5a
mov dword [rax + rcx*8 + 4], r9d
mov dword [rax + rcx*8 + 8], r10d
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rdi
mov r9d, 0xfffffff8
mov r8, rbx
mov rcx, rsi
call fcn.140032910
movsxd rbx, dword [rsi + 0x90]
lea edx, [rbx + 1]
cmp dword [rsi + 0x94], ebx
jg 0x140097a86
mov dword [rsp + 0x20], edx
mov r8d, edx
mov edx, 0xd
xor r9d, r9d
mov rcx, rsi
call fcn.140031be0
jmp 0x140097aaf
mov rax, qword [rsi + 0x88]
lea rcx, [rbx + rbx*2]
mov dword [rsi + 0x90], edx
mov dword [rax + rcx*8], 0xd
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdi
mov r10, qword [r12 + 0x10]
mov rdx, qword [rbp - 0x78]
mov r8d, dword [rbp - 0x58]
movsxd rcx, dword [r10 + 0x90]
mov edx, dword [rdx]
cmp dword [r10 + 0x94], ecx
jg 0x140097ae9
mov r9d, dword [rsp + 0x40]
mov rcx, r10
mov dword [rsp + 0x20], edx
inc r9d
mov edx, 0x4f
call fcn.140031be0
jmp 0x140097b20
lea eax, [rcx + 1]
mov dword [r10 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r10 + 0x88]
mov dword [rax + rcx*8 + 4], r8d
mov r8d, dword [rsp + 0x40]
inc r8d
mov dword [rax + rcx*8], 0x4f
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
mov r8d, dword [rbp - 0x6c]
cmp dword [rsi + 0x94], ecx
jg 0x140097b52
mov r9d, dword [rsp + 0x74]
inc r8d
mov edx, 9
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.140031be0
mov r8d, dword [rbp - 0x6c]
jmp 0x140097b86
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
lea edx, [r8 + 1]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x74]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140097bad
mov r9d, dword [rsp + 0x70]
mov edx, 0x31
mov rcx, rsi
mov dword [rsp + 0x20], edi
call fcn.140031be0
jmp 0x140097bde
mov edx, dword [rsp + 0x70]
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x31
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140097c0a
mov r9d, dword [rsp + 0x60]
mov edx, 9
mov r8d, dword [rsp + 0x40]
mov rcx, rsi
mov dword [rsp + 0x20], edi
call fcn.140031be0
jmp 0x140097c3e
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x60]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov edx, dword [rsi + 0x90]
test ebx, ebx
jns 0x140097c4b
lea ebx, [rdx - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x67], 0
je 0x140097c5d
lea rax, [0x14015f5e0]
jmp 0x140097c6f
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov ebx, dword [rbp - 0x54]
mov r8, r13
mov r9d, dword [rsp + 0x68]
mov rcx, r12
mov dword [rax + 8], edx
mov edx, ebx
call fcn.140094de0
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140097cb2
mov r9d, ebx
mov dword [rsp + 0x20], edi
mov edx, 0x47
mov r8d, 1
mov rcx, rsi
call fcn.140031be0
jmp 0x140097ce2
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
test r14d, r14d
je 0x140097d42
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [r13 + 4]
cmp dword [rsi + 0x94], ecx
jg 0x140097d13
mov r8d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x24
mov r9d, r15d
mov rcx, rsi
call fcn.140031be0
jmp 0x140097d7f
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x24
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
jmp 0x140097d7f
mov rcx, qword [rbp - 0x30]
call fcn.1400b77c0
mov rcx, qword [rsi]
cmp byte [rcx + 0x67], 0
jne 0x140097d7f
movsxd rax, dword [rbp - 0x28]
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rbx, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.140032700
mov word [rbx], 0xb8
mov qword [rbx + 0x10], rdi
mov rdx, qword [rbp - 0x60]
test rdx, rdx
je 0x140097d92
mov rcx, qword [rsp + 0x58]
call fcn.14004d690
mov r15d, dword [rbp - 0x6c]
movsxd rcx, dword [rsi + 0x90]
inc r15d
mov ebx, dword [rsp + 0x74]
cmp dword [rsi + 0x94], ecx
jg 0x140097dc5
mov r9d, ebx
mov dword [rsp + 0x20], edi
mov r8d, r15d
mov edx, 9
mov rcx, rsi
call fcn.140031be0
jmp 0x140097df2
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140097e1c
mov r9d, dword [rsp + 0x70]
xor r8d, r8d
mov edx, 8
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.140031be0
jmp 0x140097e49
mov edx, dword [rsp + 0x70]
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 8
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd r14, dword [rsi + 0x90]
cmp dword [rsi + 0x94], r14d
jg 0x140097e76
mov r9d, dword [rbp - 0x6c]
mov edx, 0x47
mov r8d, 1
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.140031be0
jmp 0x140097eaa
mov edx, dword [rbp - 0x6c]
lea rcx, [r14 + r14*2]
lea eax, [r14 + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140097ed2
xor r9d, r9d
mov dword [rsp + 0x20], edi
mov r8d, r15d
mov edx, 0x43
mov rcx, rsi
call fcn.140031be0
jmp 0x140097f00
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], r15d
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdi
mov rcx, qword [rsi + 0x18]
not ebx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140097f1b
mov r8d, ebx
mov rdx, rsi
call fcn.140032480
jmp 0x140097f2b
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi + 0x90]
movsxd rdx, ebx
mov dword [rcx + rdx*4], eax
movsxd rax, dword [rsi + 0x90]
mov r8d, dword [rbp - 0x54]
lea edx, [rax + 2]
lea ebx, [rax + 1]
cmp dword [rsi + 0x94], eax
jg 0x140097f5a
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x31
mov rcx, rsi
call fcn.140031be0
jmp 0x140097f84
lea rcx, [rax + rax*2]
mov dword [rsi + 0x90], ebx
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x31
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140097fac
xor r9d, r9d
mov dword [rsp + 0x20], edi
mov r8d, r15d
mov edx, 0x43
mov rcx, rsi
call fcn.140031be0
jmp 0x140097fda
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], r15d
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdi
mov rdx, r13
mov rcx, r12
call fcn.140094cd0
mov rdx, qword [rbp - 0x38]
mov r9d, 0x10
mov r8d, ebx
mov rcx, r12
call fcn.1400548e0
mov dword [rsp + 0x38], r14d
lea rax, [rbp]
mov r14, qword [rsp + 0x48]
lea r9, [rbp + 0x78]
mov dword [rsp + 0x30], ebx
mov r8d, 0xffffffff
mov rbx, qword [rbp - 0x48]
mov rdx, r14
mov qword [rsp + 0x28], rbx
mov rcx, r12
mov qword [rsp + 0x20], rax
call fcn.140089f20
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140098057
xor r9d, r9d
mov dword [rsp + 0x20], edi
mov r8d, r15d
mov edx, 0x43
mov rcx, rsi
call fcn.140031be0
jmp 0x140098085
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], r15d
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdi
mov rcx, qword [rsi + 0x18]
mov edx, dword [rsp + 0x60]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1400980a4
mov r8d, edx
mov rdx, rsi
call fcn.140032480
jmp 0x1400980b4
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi + 0x90]
movsxd rdx, edx
mov dword [rcx + rdx*4], eax
mov rdx, r13
mov rcx, r12
call fcn.140094b10
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1400980e8
mov r9d, dword [rbp - 0x54]
xor r8d, r8d
mov edx, 0x47
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.140031be0
jmp 0x140098114
mov edx, dword [rbp - 0x54]
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x14009813e
mov r8d, dword [rsp + 0x40]
xor r9d, r9d
mov edx, 0x43
mov dword [rsp + 0x20], edi
mov rcx, rsi
call fcn.140031be0
jmp 0x14009816f
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdi
cmp word [rsp + 0x50], 0
je 0x140098842
mov eax, dword [rsp + 0x68]
test eax, eax
je 0x140098842
mov r8, qword [r13 + 0x30]
mov edx, eax
mov rcx, r12
mov r9d, dword [r8 + 0x18]
mov r8d, dword [r8 + 0x14]
call fcn.140089dd0
jmp 0x140098842
cmp qword [rbx + 0x30], rdi
jne 0x140098577
mov r9, qword [rbx + 0x20]
cmp dword [r9], 1
jne 0x140098577
mov r8, qword [rbx + 0x28]
cmp dword [r8], 1
jne 0x140098577
cmp qword [r8 + 0x30], rdi
jne 0x140098577
cmp edx, 1
jne 0x140098577
cmp qword [rbx + 0x40], rdi
jne 0x140098577
mov r8, qword [r8 + 0x28]
cmp byte [r8 + 0x3f], dil
jne 0x140098577
mov r9, qword [r9 + 8]
cmp byte [r9], 0xa8
jne 0x140098577
cmp qword [r9 + 0x38], r13
jne 0x140098577
mov rax, qword [r13 + 0x30]
mov rcx, qword [rax + 8]
test dword [rcx + 4], 0x100
je 0x140098577
test dword [r9 + 4], 0x1000004
jne 0x140098577
test r8, r8
je 0x140098577
mov rdx, qword [r8 + 0x60]
mov r14d, 0xffff8000
mov r15, r8
test rdx, rdx
je 0x14009826c
mov rax, qword [r12]
mov r14d, edi
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x14009826c
nop dword [rax]
inc r14d
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x140098260
mov r13d, dword [r12 + 0x34]
mov rcx, r12
mov r8, rdi
mov qword [rbp - 0x30], rdi
mov rbx, rdi
lea eax, [r13 + 1]
mov dword [r12 + 0x34], eax
mov eax, dword [r15 + 0x28]
mov dword [rsp + 0x60], eax
mov rax, qword [r12 + 0xa0]
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x74]
bt eax, r14d
jb 0x1400982bb
bts eax, r14d
mov dword [rcx + 0x74], eax
cmp r14d, 1
jne 0x1400982c1
call fcn.140069d70
jmp 0x1400982f4
cmp r14d, 1
je 0x1400982f7
mov rax, qword [r12]
movsxd rdx, r14d
shl rdx, 5
mov rcx, qword [rax + 0x20]
mov rax, qword [rdx + rcx + 8]
cmp byte [rax + 0x11], bl
je 0x1400982f7
mov rax, qword [r15]
xor r9d, r9d
mov r8d, dword [r15 + 0x28]
mov edx, r14d
mov rcx, r12
mov qword [rsp + 0x20], rax
call fcn.14005f670
mov r8, rdi
test byte [r15 + 0x30], 0x80
je 0x140098319
mov rbx, qword [r15 + 0x10]
test rbx, rbx
je 0x140098319
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140098319
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140098307
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x28]
test byte [rax + 0x48], 1
jne 0x14009835f
mov rax, qword [r15 + 0x10]
test rax, rax
je 0x14009835f
test byte [rax + 0x64], 4
jne 0x140098356
movzx ecx, word [rax + 0x5c]
cmp cx, word [r15 + 0x3c]
jge 0x140098356
cmp qword [rax + 0x48], rdi
jne 0x140098356
test rbx, rbx
je 0x140098353
cmp cx, word [rbx + 0x5c]
jge 0x140098356
mov rbx, rax
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140098331
test rbx, rbx
je 0x14009837d
mov eax, dword [rbx + 0x58]
mov rdx, rbx
mov rcx, r12
mov dword [rsp + 0x60], eax
call fcn.14006a6b0
mov r8, rax
mov qword [rbp - 0x30], rax
movsxd rdx, dword [rsi + 0x90]
mov r9d, dword [rsp + 0x60]
cmp dword [rsi + 0x94], edx
jg 0x1400983ae
mov r8d, r13d
mov dword [rsp + 0x20], r14d
mov edx, 0x70
mov rcx, rsi
call fcn.140031be0
mov r8, qword [rbp - 0x30]
mov edx, eax
jmp 0x1400983dd
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x70
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], rdi
mov rax, qword [rsi]
mov r14d, 1
cmp byte [rax + 0x67], dil
jne 0x140098404
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov byte [rax + rcx*8 + 1], 0xfd
mov dword [rax + rcx*8 + 0x10], r14d
test r8, r8
je 0x140098457
mov rcx, qword [rsi]
cmp byte [rcx + 0x67], dil
je 0x14009841e
mov edx, 0xfffffff8
call fcn.140032700
jmp 0x140098457
movsxd rax, dword [rsi + 0x90]
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rdx, [rdx - 3]
cmp byte [rax + rdx*8 + 1], dil
lea rdx, [rax + rdx*8]
je 0x14009844f
mov r9d, 0xfffffff8
mov rcx, rsi
call fcn.140032820
jmp 0x140098457
mov qword [rdx + 0x10], r8
mov byte [rdx + 1], 0xf8
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rsi + 0x90]
mov rax, qword [rax + 0x30]
mov edx, dword [rax + 0x10]
cmp dword [rsi + 0x94], ecx
jg 0x14009848a
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x62
mov r8d, r13d
mov rcx, rsi
call fcn.140031be0
jmp 0x1400984b7
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x62
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1400984df
xor r9d, r9d
mov dword [rsp + 0x20], edi
mov r8d, r13d
mov edx, 0x7a
mov rcx, rsi
call fcn.140031be0
jmp 0x140098509
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x7a
mov dword [rax + rcx*8 + 4], r13d
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
cmp byte [r12 + 0x123], 2
jne 0x1400987f6
test rbx, rbx
je 0x140098539
test byte [r15 + 0x30], 0x80
je 0x14009852d
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140098539
mov rax, qword [rbx]
lea rcx, [0x140133e28]
jmp 0x140098546
lea rcx, [0x140133e28]
mov r14d, edi
mov rax, rcx
mov r9, qword [r15]
lea rdx, str._USING_COVERING_INDEX
test r14d, r14d
mov qword [rsp + 0x28], rax
lea r8, str.SCAN__s_s_s
cmovne rcx, rdx
xor edx, edx
mov qword [rsp + 0x20], rcx
mov rcx, r12
call fcn.1400321e0
jmp 0x1400987f6
mov r14d, edi
mov r15, rdi
movzx ebx, di
cmp dword [r13 + 0x2c], edi
je 0x140098632
mov r8d, edi
test edx, edx
jle 0x1400985c8
mov rcx, qword [r13 + 0x30]
mov r9d, edx
nop dword [rax + rax]
mov rax, qword [rcx]
test dword [rax + 4], 0x1000000
jne 0x1400985b9
mov rax, qword [rcx + 8]
mov edx, r9d
test byte [rax + 4], 0x20
jne 0x1400985c8
inc r8d
add rcx, 0x20
mov edx, r9d
cmp r8d, r9d
jl 0x1400985a0
cmp r8d, edx
jne 0x140098655
mov r14d, dword [r12 + 0x38]
inc r14d
mov dword [r12 + 0x38], r14d
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140098606
mov r9d, r14d
mov dword [rsp + 0x20], edi
xor r8d, r8d
mov edx, 0x47
mov rcx, rsi
call fcn.140031be0
jmp 0x140098655
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
jmp 0x140098655
cmp edx, 1
jne 0x140098655
mov rax, qword [r13 + 0x30]
cmp dword [rax + 0x14], edi
jl 0x140098655
mov rax, qword [rax]
mov r15, qword [rax + 0x20]
mov rax, r15
neg rax
sbb bx, bx
and bx, 0x500
mov rdx, r13
mov rcx, r12
call fcn.140094b10
movzx eax, byte [rsp + 0x50]
mov rcx, r12
mov r9, qword [rbp - 0x10]
or ax, bx
mov r8, qword [rbp - 0x40]
mov rdx, qword [rsp + 0x68]
mov dword [rsp + 0x38], edi
mov word [rsp + 0x30], ax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r15
call fcn.1400b66c0
mov rbx, rax
test rax, rax
je 0x140095c1d
movzx r15d, byte [rax + 0x4b]
mov r8, r13
mov r9d, r15d
mov edx, r14d
mov rcx, r12
call fcn.140094de0
test r15d, r15d
je 0x1400986d3
mov r8, qword [r13 + 0x30]
test r8, r8
je 0x1400986d3
mov r9d, dword [r8 + 0x18]
mov edx, r15d
mov r8d, dword [r8 + 0x14]
mov rcx, r12
call fcn.140089dd0
test r14d, r14d
je 0x140098734
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x140098703
mov r9d, r14d
mov dword [rsp + 0x20], edi
mov edx, 0x47
mov r8d, 1
mov rcx, rsi
call fcn.140031be0
jmp 0x140098734
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
cmp byte [rsp + 0x50], dil
je 0x1400987e3
test byte [rbx + 0x4c], 4
je 0x1400987e3
cmp byte [rbx + 0x49], dil
je 0x1400987e3
movzx edx, byte [rbx + 0x48]
sub rdx, 1
js 0x140098787
imul rcx, rdx, 0x70
add rcx, rbx
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rcx + 0x3d0]
test byte [rax + 0x38], 4
jne 0x1400987b2
sub rcx, 0x70
sub rdx, 1
jns 0x140098770
mov edx, dword [rbx + 0x3c]
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1400987ba
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 8
xor r8d, r8d
mov rcx, rsi
call fcn.140031be0
jmp 0x1400987e3
mov edx, dword [rcx + 0x380]
jmp 0x14009878a
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8 + 0x10], rdi
mov dword [rax + rcx*8 + 0xc], edi
mov dword [rax + rcx*8 + 8], edx
mov qword [rax + rcx*8], 8
mov rcx, rbx
call fcn.1400b77c0
mov rdx, r13
mov rcx, r12
call fcn.140094cd0
mov ebx, dword [rsp + 0x70]
mov r9d, 0x10
mov rdx, qword [rbp - 0x38]
mov r8d, ebx
mov rcx, r12
mov qword [rbp + 0x78], rdi
call fcn.1400548e0
mov r14, qword [rsp + 0x48]
xor r9d, r9d
mov dword [rsp + 0x38], ebx
mov r8d, 0xffffffff
mov dword [rsp + 0x30], ebx
mov rdx, r14
mov rbx, qword [rbp - 0x48]
mov rcx, r12
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rdi
call fcn.140089f20
mov rcx, qword [rsi + 0x18]
mov edx, dword [rsp + 0x70]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140098861
mov r8d, edx
mov rdx, rsi
call fcn.140032480
jmp 0x140098871
movsxd rdx, edx
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi + 0x90]
mov dword [rcx + rdx*4], eax
cmp byte [rbp + 1], 3
jne 0x14009888f
lea r9, str.DISTINCT
xor edx, edx
lea r8, str.USE_TEMP_B_TREE_FOR__s
mov rcx, r12
call fcn.1400321e0
cmp qword [rbp + 0x78], 0
je 0x1400988db
cmp dword [rbp + 0x80], 0
lea rax, str.RIGHT_PART_OF_ORDER_BY
lea r9, str.ORDER_BY
mov rcx, r12
cmovg r9, rax
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
call fcn.1400321e0
mov r9, qword [rbp - 0x20]
lea r8, [rbp + 0x78]
mov rdx, r14
mov qword [rsp + 0x20], rbx
mov rcx, r12
mov r9d, dword [r9]
call fcn.14008b2f0
mov rcx, qword [rsi + 0x18]
mov edx, dword [rbp - 0x18]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1400988f9
mov r8d, edx
mov rdx, rsi
call fcn.140032480
jmp 0x140098909
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi + 0x90]
movsxd rdx, edx
mov dword [rcx + rdx*4], eax
cmp dword [r12 + 0x30], 0
mov r15d, edi
mov r14, qword [rsp + 0x58]
setg r15b
jmp 0x140095c28
lea r13, [0x14015f5e0]
mov r8, qword [rbp - 0x48]
mov rdx, rbx
mov rcx, r12
call fcn.14008e020
mov r8d, eax
cmp qword [rbx + 0x58], rdi
jne 0x140098981
mov ecx, dword [r12 + 0x130]
test ecx, ecx
je 0x140098979
mov rdx, qword [r12 + 0x10]
jns 0x14009895a
mov ecx, dword [rdx + 0x90]
dec ecx
mov rax, qword [rdx]
cmp byte [rax + 0x67], dil
jne 0x140098975
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x88]
lea r13, [rax + rcx*8]
mov edi, dword [r13 + 8]
mov dword [r12 + 0x130], edi
mov eax, r8d
jmp 0x140095c89
mov r14, rax
jmp 0x140095c22
mov r14, r15
jmp 0x140095c22