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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x188
mov eax, dword [rsp + 0x1f8]
mov rsi, qword [rcx + 0x10]
mov rdi, qword [rcx]
mov qword [rsp + 0x1d8], rdx
mov r15, rcx
mov r12, r8
mov qword [rsp + 0x1e8], r9
mov word [rsp + 0x60], ax
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 0
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x108], 0
test r9, r9
je 0x1401bbb7b
cmp dword [r9], 0x40
mov edx, 0
cmovl rdx, r9
mov qword [rsp + 0x1e8], rdx
mov rdi, qword [rsp + 0x70]
and ah, 0xfe
mov rsi, qword [rsp + 0x1e8]
test byte [rdi + 0x5c], 0x10
cmove ax, word [rsp + 0x60]
mov qword [rsp + 0xf0], rsi
mov word [rsp + 0x60], ax
mov rax, qword [rsp + 0x1d8]
mov eax, dword [rax]
mov dword [rsp + 0x98], eax
cmp eax, 0x40
jg 0x1401bdc14
movzx eax, word [rsp + 0x60]
and ax, 0x20
mov word [rsp + 0x80], ax
je 0x1401bbee1
mov dword [rsp + 0x98], 1
mov edx, 0x420
mov ebx, 0x3c0
mov rsi, qword [rsp + 0x70]
mov rcx, rsi
call fcn.14014e3d0
cmp byte [rsi + 0x63], 0
mov qword [rsp + 0x48], rax
jne 0x1401bc754
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x1d8]
mov edx, dword [rsp + 0x98]
mov qword [rax + 8], rsi
mov rsi, qword [rsp + 0x1e8]
mov byte [rax + 0x40], dl
mov qword [rax + 0x10], rsi
mov rsi, qword [rsp + 0x1f0]
mov qword [rax + 0x28], 0xffffffffffffffff
mov qword [rax + 0x18], rsi
mov rsi, rax
mov qword [rax], r15
lea rdi, [rsi + 0x49]
add rbx, rsi
lea r13, [rsi + 0x70]
mov qword [rax + 0x20], r12
mov eax, dword [r15 + 0x44]
and rdi, 0xfffffffffffffff8
sub eax, 1
mov dword [r15 + 0x44], eax
mov dword [rsi + 0x30], eax
mov dword [rsi + 0x34], eax
movzx eax, word [rsp + 0x60]
mov word [rsi + 0x3c], ax
movzx eax, word [rsp + 0x200]
mov word [rsi + 0x3e], ax
mov eax, dword [r15 + 0xb8]
mov qword [rsi + 0x41], 0
mov dword [rsi + 0x38], eax
mov eax, esi
sub eax, edi
mov qword [rsi + 0x68], 0
lea ecx, [rax + 0x70]
xor eax, eax
shr ecx, 3
rep stosq qword [rdi], rax
lea eax, [rdx + 1]
lea rcx, [rsi + 0x360]
mov edi, edx
cdqe
xor edx, edx
mov qword [rsp + 0xa8], rcx
lea r8, [rax + rax*2]
mov qword [rsp + 0xa0], rcx
shl r8, 5
call sub.msvcrt.dll_memset
lea rax, [rbx + 0x48]
xor r9d, r9d
mov rdx, r12
mov qword [rbx + 0x38], rax
mov r10d, 3
mov r8d, 0x2c
mov rcx, r13
movabs rax, 0x800000000
mov word [rbx + 0x2c], r9w
mov word [rbx + 0x30], r10w
mov dword [rbx + 0x28], 0
mov qword [rsi + 0x84], rax
lea rax, [rsi + 0x98]
mov dword [rsi + 0x25c], 0
mov qword [rsi + 0x70], rsi
mov byte [rsi + 0x81], 0
mov qword [rsi + 0x78], 0
mov qword [rsi + 0x90], rax
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0xe8], r13
mov qword [rsp + 0xf8], rbx
call fcn.14015d8c0
test edi, edi
jne 0x1401bc536
cmp qword [rsp + 0x1e8], 0
je 0x1401bbd7b
mov rax, qword [rsp + 0x1e8]
mov eax, dword [rax]
mov byte [rsi + 0x41], al
test word [rsp + 0x60], 0x100
jne 0x1401bc778
lea r8, str.SCAN_CONSTANT_ROW
xor edx, edx
mov rcx, r15
call fcn.140187d30
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x1d8]
mov eax, dword [rax + 0x84]
mov ebx, eax
mov dword [rsp + 0x50], eax
sub ebx, 1
js 0x1401bbdd3
nop word [rax + rax]
mov r8d, ebx
mov rdx, r13
mov rcx, rsi
call fcn.1401c7800
sub ebx, 1
jae 0x1401bbdc0
mov rax, qword [rsp + 0x70]
cmp byte [rax + 0x63], 0
jne 0x1401bc0d4
mov rax, qword [rsp + 0xe8]
lea rbp, [rsp + 0x110]
xor edi, edi
xor esi, esi
mov rcx, rbp
lea r12, [0x1401477c0]
mov rbp, rdi
mov edx, dword [rax + 0x14]
lea r14, [0x1401469f0]
mov rdi, rcx
test edx, edx
jg 0x1401bbe9d
jmp 0x1401bbf01
mov rdx, qword [rbx]
mov r11d, 1
mov qword [rdi], 0
mov qword [rdi + 8], 0
mov qword [rdi + 0x10], 0
mov qword [rdi + 0x18], 0
mov qword [rdi + 0x20], 0
mov qword [rdi + 0x28], 0
mov word [rsp + 0x134], r11w
mov qword [rsp + 0x118], r12
mov qword [rsp + 0x120], r14
test rdx, rdx
je 0x1401bbec0
mov rcx, rdi
call fcn.140169670
cmp word [rsp + 0x134], 0
jne 0x1401bbec0
mov rax, qword [rsp + 0xe8]
add esi, 1
add rbp, 0x38
cmp dword [rax + 0x14], esi
jle 0x1401bbf01
mov rbx, qword [rax + 0x20]
add rbx, rbp
test byte [rbx + 0x12], 2
jne 0x1401bbe91
cmp qword [rbx + 0x30], 0
jne 0x1401bbe91
mov eax, dword [rsp + 0x98]
test eax, eax
jne 0x1401bbe20
mov rax, qword [rsp + 0x48]
mov rdx, qword [rbx]
mov r9d, 0x10
mov rcx, r15
mov r8d, dword [rax + 0x34]
call fcn.1401c3030
or word [rbx + 0x12], 4
jmp 0x1401bbe89
mov eax, dword [rsp + 0x98]
lea ebx, [rax + rax*2 - 3]
shl ebx, 5
add ebx, 0x3c0
movsxd rbx, ebx
lea rdx, [rbx + 0x60]
jmp 0x1401bbbe8
movzx eax, word [rsp + 0x60]
and ax, 0x100
mov word [rsp + 0x88], ax
jne 0x1401bd890
mov rbx, qword [rsp + 0xe0]
cmp dword [rsp + 0x98], 1
mov r14, qword [rbx + 8]
je 0x1401bd71a
movzx edx, byte [rbx + 0x40]
mov r13, qword [rsp + 0xf8]
xor edi, edi
mov ebp, 3
lea rax, [rdx*8]
sub rax, rdx
shl rax, 4
lea rsi, [r14 + rax + 8]
mov rax, qword [rbx]
mov rax, qword [rax]
mov word [r13 + 0x2c], di
mov dword [r13 + 0x28], 0
mov qword [rsp + 0x58], rax
lea rax, [r13 + 0x48]
mov qword [rsp + 0x68], rax
mov qword [r13 + 0x38], rax
lea rax, [r14 + 8]
mov word [r13 + 0x30], bp
mov dword [rsp + 0x10c], 0x4e20
cmp rsi, rax
jbe 0x1401bc175
lea rcx, [rsp + 0xe0]
lea r12, [r14 + 0x78]
xor edi, edi
xor ebp, ebp
mov qword [rsp + 0x50], rcx
mov eax, 0x4e20
mov qword [rsp + 0x1d0], r15
nop dword [rax]
mov byte [r13 + 0x10], bpl
mov r11d, dword [rbx + 0x25c]
add eax, 0x3e8
mov dword [rsp + 0x10c], eax
mov edx, dword [r12 - 0x2c]
test r11d, r11d
jle 0x1401bc480
movsxd r8, r11d
xor eax, eax
jmp 0x1401bbffd
add rax, 1
cmp r8, rax
je 0x1401bc480
mov ecx, eax
cmp edx, dword [rbx + rax*4 + 0x260]
jne 0x1401bbff0
mov eax, 1
shl rax, cl
mov qword [r13 + 8], rax
mov rax, qword [r12 - 0x50]
mov r14d, 0
test byte [r12 - 0x34], 0xa
cmovne r14, rdi
cmp byte [rax + 0x3f], 1
je 0x1401bc487
mov rcx, qword [rsp + 0x50]
mov rdx, r14
xor r15d, r15d
call fcn.1401867c0
test eax, eax
jne 0x1401bc440
mov rax, qword [rsp + 0xe8]
cmp byte [rax + 0x11], 0
jne 0x1401bc515
or rdi, qword [r13 + 8]
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x63], 0
je 0x1401bc45e
mov r15, qword [rsp + 0x1d0]
mov rdx, qword [r13 + 0x38]
xor eax, eax
cmp qword [rsp + 0x68], rdx
je 0x1401bc175
mov rsi, qword [rsp + 0x58]
mov dword [rsp + 0x50], eax
mov ebx, 3
mov rcx, rsi
call fcn.140153ba0
mov rdx, r13
mov rcx, rsi
call fcn.140153e00
mov rax, qword [rsp + 0x68]
xor r11d, r11d
mov word [r13 + 0x30], bx
mov word [r13 + 0x2c], r11w
mov qword [r13 + 0x38], rax
mov eax, dword [rsp + 0x50]
mov dword [r13 + 0x28], 0
test eax, eax
je 0x1401bc1a4
mov rax, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x48]
mov rdx, qword [rax + 0x60]
test rdx, rdx
je 0x1401bc13a
nop word [rax + rax]
mov rax, qword [rdx]
mov qword [rbx + 0x60], rax
mov rax, qword [rdx + 8]
movdqu xmm0, xmmword [rdx + 0x10]
movups xmmword [rax], xmm0
movdqu xmm1, xmmword [rdx + 0x20]
movups xmmword [rax + 0x10], xmm1
movdqu xmm2, xmmword [rdx + 0x30]
movups xmmword [rax + 0x20], xmm2
movdqu xmm3, xmmword [rdx + 0x40]
movups xmmword [rax + 0x30], xmm3
mov rcx, qword [rdx + 0x50]
mov qword [rax + 0x40], rcx
mov rax, qword [rbx]
mov rcx, qword [rax]
call fcn.140153ba0
mov rdx, qword [rbx + 0x60]
test rdx, rdx
jne 0x1401bc0f0
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x70]
mov eax, dword [rdx + 0x38]
mov dword [r15 + 0xb8], eax
call fcn.140159a10
mov qword [rsp + 0x48], 0
mov rax, qword [rsp + 0x48]
add rsp, 0x188
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp + 0x58]
mov rdx, r13
call fcn.140153e00
mov rax, qword [rsp + 0x68]
mov edx, 3
mov dword [r13 + 0x28], 0
mov word [r13 + 0x30], dx
mov qword [r13 + 0x38], rax
xor eax, eax
mov word [r13 + 0x2c], ax
mov rsi, qword [rsp + 0x48]
xor edx, edx
mov rcx, rsi
call fcn.140185380
mov rax, qword [rsp + 0x70]
cmp byte [rax + 0x63], 0
jne 0x1401bc0d4
cmp qword [rsi + 0x10], 0
je 0x1401bc786
mov rcx, qword [rsp + 0x48]
movzx eax, word [rcx + 0x48]
lea edx, [rax + 1]
mov word [rsp + 0x50], ax
movsx edx, dx
call fcn.140185380
mov rax, qword [rsp + 0x70]
cmp byte [rax + 0x63], 0
jne 0x1401bc0d4
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x10], 0
je 0x1401bc786
mov eax, dword [r15 + 0x30]
mov dword [rsp + 0x9c], eax
test eax, eax
jne 0x1401bc0d4
mov rax, qword [rsp + 0x70]
movzx r14d, byte [rax + 0x63]
test r14b, r14b
jne 0x1401bc0d4
mov rdi, qword [rsp + 0x48]
cmp byte [rdi + 0x40], 1
jbe 0x1401bc7a7
cmp qword [rsp + 0x1f0], 0
je 0x1401bc7a7
mov qword [rsp + 0x78], 0xffffffffffffffff
test word [rsp + 0x60], 0x400
jne 0x1401bc7b0
test byte [rax + 0x5d], 1
jne 0x1401bc7b0
mov rax, qword [rsp + 0x1f0]
lea r12, [rdi + 0x258]
mov r10d, dword [rax]
test r10d, r10d
jle 0x1401bdfe4
xor ebx, ebx
xor esi, esi
mov rdi, rax
mov rax, rbx
shl rax, 5
mov rdx, qword [rdi + rax + 8]
test rdx, rdx
je 0x1401bc2a7
mov rcx, r12
call fcn.140160080
or rsi, rax
add rbx, 1
cmp dword [rdi], ebx
jg 0x1401bc28b
mov rbp, qword [rsp + 0xf0]
test rbp, rbp
je 0x1401bc2f5
mov r9d, dword [rbp]
test r9d, r9d
jle 0x1401bdfb2
xor edi, edi
xor ebx, ebx
mov rax, rdi
shl rax, 5
mov rdx, qword [rbp + rax + 8]
test rdx, rdx
je 0x1401bc2e9
mov rcx, r12
call fcn.140160080
or rbx, rax
add rdi, 1
cmp dword [rbp], edi
jg 0x1401bc2cd
or rsi, rbx
mov rbp, qword [rsp + 0x48]
movzx ebx, byte [rbp + 0x40]
sub ebx, 1
test ebx, ebx
jle 0x1401bc7a7
movsxd rax, ebx
mov r12, 0xffffffffffffffff
lea rax, [rax + rax*2]
shl rax, 5
lea rdi, [rbp + rax + 0x360]
jmp 0x1401bc332
sub rdi, 0x60
sub ebx, 1
je 0x1401bdf9a
mov rdx, qword [rdi + 0x50]
mov r10, qword [rbp + 8]
movzx r11d, byte [rdx + 0x10]
lea rax, [r11*8]
sub rax, r11
shl rax, 4
test byte [r10 + rax + 0x44], 8
je 0x1401bc325
cmp word [rsp + 0x88], 0
jne 0x1401bc367
test byte [rdx + 0x29], 0x10
je 0x1401bc325
mov rcx, qword [rdx + 8]
test rcx, rsi
jne 0x1401bc325
mov rax, qword [rsp + 0xe8]
movsxd r8, dword [rax + 0x14]
mov rdx, qword [rax + 0x20]
lea rax, [r8*8]
sub rax, r8
lea r8, [rdx + rax*8]
cmp rdx, r8
jae 0x1401be011
lea r9, [r11*8]
mov rax, rdx
sub r9, r11
shl r9, 4
add r9, r10
mov r10, rcx
and r10, qword [rax + 0x30]
je 0x1401bc3d2
mov r10, qword [rax]
test byte [r10 + 4], 1
je 0x1401bdfa4
mov r11d, dword [r9 + 0x4c]
cmp dword [r10 + 0x34], r11d
jne 0x1401bdfa4
add rax, 0x38
cmp r8, rax
ja 0x1401bc3ad
mov rax, rcx
not rax
and r12, rax
mov rax, rcx
and rax, qword [rdx + 0x30]
je 0x1401bc3f2
or word [rdx + 0x12], 4
add rdx, 0x38
cmp r8, rdx
ja 0x1401bc3e4
movzx eax, byte [rbp + 0x40]
sub eax, 1
cmp eax, ebx
je 0x1401bc42e
sub eax, ebx
mov rcx, rdi
lea r8d, [rax + rax*2]
lea eax, [rbx + 1]
lea rax, [rax + rax*2]
shl r8d, 5
shl rax, 5
movsxd r8, r8d
lea rdx, [rbp + rax + 0x360]
call sub.msvcrt.dll_memmove
sub byte [rbp + 0x40], 1
sub dword [rsp + 0x98], 1
jmp 0x1401bc325
or rdi, qword [r13 + 8]
cmp eax, 0x65
jne 0x1401be01c
lea rdx, str.abbreviated_query_algorithm_search
mov ecx, 0x1c
call fcn.140172c50
add ebp, 1
cmp rsi, r12
jbe 0x1401bc070
mov eax, dword [rsp + 0x10c]
add r12, 0x70
jmp 0x1401bbfc0
xor eax, eax
jmp 0x1401bc010
cmp rsi, r12
jbe 0x1401bdbef
mov r9, r12
xor r15d, r15d
movsxd r8, r11d
test r15, r15
je 0x1401bc4f0
mov edx, dword [r9 + 0x44]
test r11d, r11d
jle 0x1401bc4cf
xor eax, eax
jmp 0x1401bc4b9
add rax, 1
cmp r8, rax
je 0x1401bc4cf
mov ecx, eax
cmp edx, dword [rbx + rax*4 + 0x260]
jne 0x1401bc4b0
mov eax, 1
shl rax, cl
or r15, rax
add r9, 0x70
cmp rsi, r9
ja 0x1401bc499
mov rcx, qword [rsp + 0x50]
mov r8, r15
mov rdx, r14
call fcn.14017de70
jmp 0x1401bc043
test byte [r9 + 0x3c], 0xa
jne 0x1401bc49e
add r9, 0x70
cmp rsi, r9
ja 0x1401bc4f0
mov rcx, qword [rsp + 0x50]
mov r8, r15
mov rdx, r14
call fcn.14017de70
jmp 0x1401bc043
mov rcx, qword [rsp + 0x50]
mov r8, r15
mov rdx, r14
call fcn.140187120
or rdi, qword [r13 + 8]
test eax, eax
je 0x1401bc061
jmp 0x1401bc444
mov rax, qword [rsp + 0x1d8]
mov dword [rsp + 0x58], 0
mov qword [rsp + 0x50], r13
lea rbp, [rax + 0x28]
nop
mov rdi, qword [rsp + 0x48]
mov edx, dword [rbp + 0x24]
movsxd rax, dword [rdi + 0x25c]
lea ecx, [rax + 1]
mov dword [rdi + 0x25c], ecx
mov dword [rdi + rax*4 + 0x260], edx
movsxd rdx, dword [rsp + 0x58]
mov rdi, qword [rsp + 0x1d8]
lea rax, [rdx*8]
sub rax, rdx
shl rax, 4
test byte [rdi + rax + 0x48], 4
je 0x1401bc700
mov r12, qword [rbp + 0x40]
test r12, r12
je 0x1401bc700
mov r8d, dword [r12]
test r8d, r8d
jle 0x1401bc700
mov rdi, qword [rbp]
xor ebx, ebx
xor esi, esi
nop dword [rax + rax]
movsx edx, word [rdi + 0x36]
mov r9d, ebx
cmp esi, edx
jge 0x1401bc740
movsxd rax, esi
mov r13d, esi
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
lea rax, [rax + rcx*8 + 0x12]
jmp 0x1401bc5f9
add r13d, 1
add rax, 0x18
cmp r13d, edx
je 0x1401bc740
test byte [rax], 2
je 0x1401bc5e8
mov rcx, qword [r15]
mov edx, 0x48
call fcn.14014e3d0
mov r14, rax
test rax, rax
je 0x1401bc700
mov qword [r14], 0
mov ecx, 0xffffffff
lea esi, [r13 + 1]
mov qword [r14 + 0x28], 0
mov qword [r14 + 0x30], 0
mov qword [r14 + 0x40], 0
mov qword [r14 + 8], 0
mov qword [r14 + 0x10], 0
mov qword [r14 + 0x18], 0
mov qword [r14 + 0x20], 0
mov qword [r14 + 0x38], 0
mov byte [r14], 0xa6
mov eax, dword [rbp + 0x24]
mov word [r14 + 0x32], cx
mov dword [r14 + 0x2c], eax
mov rax, rbx
shl rax, 5
mov dword [r14 + 0x28], 1
mov rdx, qword [r12 + rax + 8]
mov word [r14 + 0x30], r13w
mov qword [r14 + 0x40], rdi
test rdx, rdx
je 0x1401bc6aa
mov rcx, qword [r15]
xor r9d, r9d
xor r8d, r8d
call fcn.14016a560
mov rdx, rax
mov r8, rdx
xor r9d, r9d
mov edx, 0xad
mov rcx, r15
call fcn.14017f130
mov r8, r14
mov edx, 0x35
mov rcx, r15
mov r9, rax
call fcn.14017f130
mov r9, rax
test byte [rbp + 0x1c], 8
jne 0x1401bc730
mov rcx, qword [rsp + 0x50]
mov r8d, 1
mov rdx, r9
add rbx, 1
call fcn.14015d6a0
cmp dword [r12], ebx
jg 0x1401bc5c0
nop word [rax + rax]
mov rdi, qword [rsp + 0x1d8]
add dword [rsp + 0x58], 1
add rbp, 0x70
mov eax, dword [rsp + 0x58]
cmp dword [rdi], eax
jg 0x1401bc550
mov r13, qword [rsp + 0x50]
jmp 0x1401bbd99
mov edx, dword [rbp + 0x24]
mov rcx, rax
call fcn.1401471a0
jmp 0x1401bc6d9
mov r8, qword [rdi]
lea rdx, str.too_many_arguments_on__s_____max__d
mov rcx, r15
call fcn.140177210
jmp 0x1401bc700
test rax, rax
je 0x1401bc15c
mov rcx, qword [rsp + 0x70]
mov rdx, rax
call fcn.140153ba0
mov qword [rsp + 0x48], 0
jmp 0x1401bc15c
mov rax, qword [rsp + 0x48]
mov byte [rax + 0x43], 1
jmp 0x1401bbd88
mov rax, qword [rsp + 0x70]
test byte [rax + 0x31], 0x10
je 0x1401bc205
mov rax, qword [rsp + 0x48]
mov qword [rax + 0x68], 0xffffffffffffffff
jmp 0x1401bc205
mov qword [rsp + 0x78], 0xffffffffffffffff
mov rsi, qword [rsp + 0x48]
mov rax, qword [rsi]
movsx edx, word [rsi + 0x48]
add dword [rax + 0xb8], edx
test byte [rsp + 0x60], 4
je 0x1401bc800
mov r8, qword [rsi + 0x3b0]
mov eax, dword [r8 + 0x28]
test ah, 0x10
je 0x1401bdd12
mov rdi, qword [rsp + 0x1d8]
mov ecx, 1
mov rdx, qword [rdi + 0x28]
mov rsi, qword [rsp + 0x48]
mov byte [rsi + 0x42], cl
test byte [rdx + 0x30], 0x80
je 0x1401bdde1
mov eax, dword [rsp + 0x98]
test eax, eax
jle 0x1401bde3e
sub eax, 1
mov rsi, qword [rsp + 0x48]
mov byte [rsp + 0x58], r14b
lea rax, [rax + rax*2]
mov r14, qword [rsp + 0x70]
mov rbx, qword [rsp + 0xa0]
shl rax, 5
lea rbp, [rsi + rax + 0x3c0]
mov qword [rsp + 0x50], rbp
mov rbp, qword [rsp + 0x1d8]
nop word cs:[rax + rax]
movzx edi, byte [rbx + 0x34]
lea rax, [rdi*8]
sub rax, rdi
shl rax, 4
mov rsi, qword [rbp + rax + 0x28]
mov rdx, qword [rsi + 0x60]
test rdx, rdx
je 0x1401bdf8f
mov rax, qword [r14 + 0x20]
cmp rdx, qword [rax + 0x18]
je 0x1401bd712
add rax, 0x38
xor r12d, r12d
nop word [rax + rax]
add rax, 0x20
add r12d, 1
cmp rdx, qword [rax - 0x20]
jne 0x1401bc890
mov r13, qword [rbx + 0x50]
mov eax, dword [rsi + 0x30]
mov edx, dword [r13 + 0x28]
test ah, 0x40
jne 0x1401bc968
movzx ecx, byte [rsi + 0x3f]
cmp cl, 2
je 0x1401bc968
test dh, 4
jne 0x1401bdb40
cmp cl, 1
je 0x1401bc968
test dl, 0x40
jne 0x1401bd699
cmp word [rsp + 0x80], 0
jne 0x1401bd699
mov rcx, qword [rsp + 0x48]
lea rax, [rdi*8]
sub rax, rdi
shl rax, 4
cmp byte [rcx + 0x42], 0
mov edx, dword [rbp + rax + 0x4c]
mov eax, 0x64
je 0x1401bc914
mov dword [rcx + 0x28], edx
mov eax, 0x65
mov dword [rsp + 0x20], eax
mov r9, rsi
mov r8d, r12d
mov rcx, r15
call fcn.14017aec0
mov rax, qword [rsp + 0x48]
cmp byte [rax + 0x42], 0
je 0x1401bdd4f
mov rcx, qword [rsp + 0x90]
mov edx, dword [r13 + 0x28]
movsxd rax, dword [rcx + 0x98]
test eax, eax
jle 0x1401bc968
mov r8, qword [rcx + 0x90]
lea rax, [rax + rax*2]
movzx ecx, byte [rsp + 0x58]
lea rax, [r8 + rax*8]
mov word [rax - 0x16], cx
nop dword [rax]
and dh, 2
je 0x1401bca16
mov eax, dword [rsi + 0x30]
mov rsi, qword [r13 + 0x20]
test al, 0x80
je 0x1401bc996
movzx eax, byte [rsi + 0x64]
and eax, 3
cmp al, 2
jne 0x1401bc996
cmp word [rsp + 0x80], 0
jne 0x1401bdc5a
mov rax, qword [rsp + 0x48]
cmp byte [rax + 0x42], 0
jne 0x1401bd648
cmp word [rsp + 0x80], 0
je 0x1401bc9bf
mov eax, dword [rsp + 0x200]
test eax, eax
jne 0x1401bdbd8
mov r8d, dword [r15 + 0x34]
mov edx, 0x64
lea eax, [r8 + 1]
mov dword [r15 + 0x34], eax
mov dword [rbx + 8], r8d
mov r9d, dword [rsi + 0x58]
mov rdi, qword [rsp + 0x90]
mov dword [rsp + 0x20], r12d
mov rcx, rdi
call fcn.140162270
mov rdx, rsi
mov rcx, r15
call fcn.14017a1d0
mov eax, dword [r13 + 0x28]
test al, 0xf
je 0x1401bca16
test eax, 0x188002
jne 0x1401bca16
mov rax, qword [rsp + 0x48]
test byte [rax + 0x3c], 1
je 0x1401bdda9
test r12d, r12d
js 0x1401bca4b
mov r8, qword [r15 + 0xa0]
mov edx, 1
mov ecx, r12d
test r8, r8
cmove r8, r15
shl edx, cl
mov eax, dword [r8 + 0x74]
test eax, edx
jne 0x1401bca4b
or eax, edx
mov dword [r8 + 0x74], eax
cmp r12d, 1
je 0x1401bdc07
add rbx, 0x60
cmp rbx, qword [rsp + 0x50]
jne 0x1401bc850
mov rax, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x48]
mov eax, dword [rax + 0x98]
mov dword [rsi + 0x4c], eax
mov rax, qword [rsp + 0x70]
cmp byte [rax + 0x63], 0
jne 0x1401bc0d4
movzx eax, word [rsp + 0x60]
mov r13, qword [rsp + 0xa8]
mov dword [rsp + 0xd4], eax
mov qword [rsp + 0x50], r13
mov r13, qword [rsp + 0x1d8]
mov eax, dword [r15 + 0x30]
mov dword [rsp + 0xa8], eax
test eax, eax
jne 0x1401bc0d4
mov rax, qword [rsp + 0x50]
mov rsi, qword [rax + 0x50]
test byte [rsi + 0x29], 0x40
je 0x1401bd30a
mov rax, qword [rsp + 0x50]
movzx ebx, byte [rax + 0x34]
lea rax, [rbx*8]
sub rax, rbx
shl rax, 4
lea rax, [r13 + rax + 8]
mov qword [rsp + 0xb8], rax
mov rax, qword [r15 + 0x10]
mov edi, dword [rax + 0x98]
mov qword [rsp + 0x58], rax
mov dword [rsp + 0xc0], edi
cmp edi, dword [rax + 0x9c]
jge 0x1401bd6e2
mov edi, dword [rsp + 0xc0]
mov rcx, qword [rsp + 0x58]
lea eax, [rdi + 1]
mov dword [rcx + 0x98], eax
movsxd rax, edi
lea rdx, [rax + rax*2]
mov rax, qword [rcx + 0x90]
lea rax, [rax + rdx*8]
mov qword [rax], 0x11
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
movsxd rax, ebx
xor edi, edi
lea rbx, [rax*8]
mov qword [rsp + 0xa0], rax
sub rbx, rax
shl rbx, 4
mov rax, qword [r13 + rbx + 0x28]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 0x84]
mov rbp, qword [rax + 0x90]
lea rax, [rdx*8]
sub rax, rdx
lea r12, [rbp + rax*8]
cmp rbp, r12
jae 0x1401bdcf8
xor r14d, r14d
mov dword [rsp + 0x68], edi
mov rdi, rsi
mov qword [rsp + 0x1d0], r15
mov esi, r14d
mov r15, qword [rsp + 0xb8]
mov qword [rsp + 0x60], 0
mov r14, qword [rsp + 0x78]
mov qword [rsp + 0x80], 0
jmp 0x1401bcc49
mov eax, dword [rsp + 0x68]
lea esi, [rax + 1]
movzx eax, word [rdi + 0x30]
cmp esi, eax
jle 0x1401bcc1d
mov rax, qword [rsp + 0x1d0]
mov r8d, esi
mov rdx, rdi
mov qword [rsp + 0xb0], r10
mov rcx, qword [rax]
call fcn.140154310
mov r10, qword [rsp + 0xb0]
test eax, eax
jne 0x1401bdceb
movsxd rax, dword [rsp + 0x68]
mov rdx, qword [rdi + 0x38]
mov dword [rsp + 0x68], esi
mov esi, 1
or qword [rsp + 0x60], r10
mov qword [rdx + rax*8], rbp
nop dword [rax + rax]
add rbp, 0x38
cmp r12, rbp
jbe 0x1401bccc4
cmp qword [rdi], 0
jne 0x1401bcc68
test byte [rbp + 0x12], 2
jne 0x1401bcc68
mov rdx, qword [rbp]
test byte [rdx + 4], 1
je 0x1401bd410
nop dword [rax + rax]
mov eax, dword [r13 + rbx + 0x4c]
cmp dword [rbp + 0x1c], eax
jne 0x1401bcc40
mov r8, r14
mov rdx, r15
mov rcx, rbp
call fcn.14015bc40
test eax, eax
je 0x1401bcc40
movsxd rcx, dword [rbp + 0x20]
mov r10d, 1
movabs rax, 0x8000000000000000
shl r10, cl
cmp ecx, 0x40
cmovge r10, rax
test sil, sil
je 0x1401bd3d0
test qword [rsp + 0x60], r10
je 0x1401bcbe0
add rbp, 0x38
mov esi, 1
cmp r12, rbp
ja 0x1401bcc49
mov rbp, qword [rsp + 0x60]
mov rsi, rdi
mov edi, dword [rsp + 0x68]
movabs rcx, 0x8000000000000000
mov r15, qword [rsp + 0x1d0]
not rbp
mov eax, edi
or rbp, rcx
mov rcx, qword [rsp + 0xa0]
mov word [rsi + 0x2c], ax
mov r10d, 0x3f
mov word [rsi + 0x18], ax
lea rax, [rcx*8]
mov dword [rsi + 0x28], 0x4241
sub rax, rcx
shl rax, 4
mov rdx, qword [r13 + rax + 0x60]
mov rax, qword [rsp + 0x88]
movsx eax, word [rax + 0x36]
and rbp, rdx
cmp ax, 0x3f
mov word [rsp + 0x68], ax
cmovle r10d, eax
test ax, ax
jle 0x1401bcd53
xor ecx, ecx
nop
mov rax, rbp
shr rax, cl
add ecx, 1
and eax, 1
add edi, eax
cmp r10d, ecx
jne 0x1401bcd40
test rdx, rdx
jns 0x1401bcd61
movsx eax, word [rsp + 0x68]
lea edi, [rdi + rax - 0x3f]
mov rcx, qword [r15]
lea edx, [rdi + 1]
xor r8d, r8d
lea r9, [rsp + 0x110]
movsx edx, dx
mov dword [rsp + 0xb0], r10d
call fcn.14015c500
mov qword [rsp + 0x60], rax
test rax, rax
je 0x1401bd2e3
lea rcx, str.auto_index
mov qword [rsi + 0x20], rax
xor r14d, r14d
mov r10d, dword [rsp + 0xb0]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x88]
mov qword [rax + 0x18], rcx
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x90]
cmp r12, rbx
jbe 0x1401bdcb8
lea r9, str.BINARY
mov dword [rsp + 0xc4], edi
xor edx, edx
mov rcx, qword [rsp + 0xa0]
mov dword [rsp + 0xd0], r10d
mov rdi, qword [rsp + 0xb8]
lea rax, [rcx*8]
mov qword [rsp + 0xc8], r9
sub rax, rcx
mov qword [rsp + 0xb8], rbp
mov rbp, rbx
mov rbx, qword [rsp + 0x78]
shl rax, 4
mov qword [rsp + 0xb0], rsi
add rax, r13
mov qword [rsp + 0x1d8], r13
mov r13, rdx
mov rsi, rax
nop word [rax + rax]
mov eax, dword [rsi + 0x4c]
cmp dword [rbp + 0x1c], eax
jne 0x1401bce80
mov r8, rbx
mov rdx, rdi
mov rcx, rbp
call fcn.14015bc40
test eax, eax
je 0x1401bce80
mov ecx, dword [rbp + 0x20]
mov eax, 1
movabs rdx, 0x8000000000000000
shl rax, cl
cmp ecx, 0x40
cmovge rax, rdx
test rax, r13
je 0x1401bd4b0
nop word [rax + rax]
add rbp, 0x38
cmp r12, rbp
ja 0x1401bce38
movsxd rax, r14d
mov rsi, qword [rsp + 0xb0]
mov edi, dword [rsp + 0xc4]
mov rbp, qword [rsp + 0xb8]
mov r10d, dword [rsp + 0xd0]
lea r8, [rax + rax]
shl rax, 3
mov r13, qword [rsp + 0x1d8]
mov r9, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0x60]
cmp word [rsp + 0x68], 0
mov rcx, qword [rbx + 8]
mov rdx, qword [rbx + 0x40]
jle 0x1401bcf09
xor eax, eax
nop word [rax + rax]
bt rbp, rax
jae 0x1401bcef6
movsxd r8, r14d
add r14d, 1
mov word [rcx + r8*2], ax
mov qword [rdx + r8*8], r9
add eax, 1
cmp r10d, eax
jne 0x1401bcee0
movsxd rax, r14d
lea r8, [rax + rax]
shl rax, 3
mov rbx, qword [rsp + 0xa0]
lea r10, [rbx*8]
sub r10, rbx
shl r10, 4
cmp qword [r13 + r10 + 0x60], 0
js 0x1401bd5ce
mov r10d, 0xffffffff
mov rbx, qword [rsp + 0x50]
mov r12, qword [rsp + 0x58]
mov word [rcx + r8], r10w
mov r8d, dword [r15 + 0x34]
mov qword [rdx + rax], r9
mov rcx, r12
lea r9d, [rdi + 1]
mov edx, 0x72
lea eax, [r8 + 1]
mov dword [r15 + 0x34], eax
mov dword [rbx + 8], r8d
mov dword [rsp + 0x20], 0
call fcn.140162270
mov rdx, qword [rsp + 0x60]
mov rcx, r15
call fcn.14017a1d0
mov rax, qword [rsp + 0x48]
movzx edi, byte [rbx + 0x34]
mov rax, qword [rax + 0x70]
mov rbp, qword [rax + 8]
lea rax, [rdi*8]
sub rax, rdi
shl rax, 4
add rax, rbp
test byte [rax + 0x48], 0x10
je 0x1401bd56c
mov r10d, dword [rax + 0x3c]
mov rax, r12
mov r12d, dword [r12 + 0x98]
cmp r12d, dword [rax + 0x9c]
jge 0x1401bdc89
mov rcx, qword [rsp + 0x58]
lea eax, [r12 + 1]
mov dword [rcx + 0x98], eax
movsxd rax, r12d
lea rdx, [rax + rax*2]
mov rax, qword [rcx + 0x90]
lea rax, [rax + rdx*8]
mov qword [rax], 0x46
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov rbx, qword [rsp + 0x58]
xor r9d, r9d
mov r8d, r10d
mov edx, 0xd
lea rax, [rdi*8]
mov dword [rsp + 0x68], r10d
sub rax, rdi
mov rcx, rbx
shl rax, 4
mov eax, dword [rbp + rax + 0x38]
mov dword [rsp + 0x20], eax
call fcn.140162270
mov rax, rbx
mov ebx, dword [rbx + 0x98]
mov r10d, dword [rsp + 0x68]
cmp ebx, dword [rax + 0x9c]
jge 0x1401bdc65
mov rcx, qword [rsp + 0x58]
lea eax, [rbx + 1]
mov dword [rcx + 0x98], eax
movsxd rax, ebx
lea rdx, [rax + rax*2]
mov rax, qword [rcx + 0x90]
lea rax, [rax + rdx*8]
mov dword [rax + 4], r10d
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0xe
mov rdx, qword [rsp + 0x80]
test rdx, rdx
je 0x1401bd0bc
mov eax, dword [r15 + 0x44]
mov r9d, 0x10
mov rcx, r15
sub eax, 1
mov dword [r15 + 0x44], eax
mov r8d, eax
mov dword [rsp + 0xa8], eax
call fcn.1401c3030
or dword [rsi + 0x28], 0x20000
movzx eax, byte [r15 + 0x1f]
test al, al
je 0x1401bd620
sub eax, 1
mov byte [r15 + 0x1f], al
movzx eax, al
mov esi, dword [r15 + rax*4 + 0xc8]
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x60]
mov r9d, esi
mov rcx, r15
mov r8d, dword [rax + 4]
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
call fcn.1401cd2a0
mov rcx, qword [rsp + 0x58]
mov edx, 0x88
mov r9d, esi
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x50]
mov r8d, dword [rax + 8]
mov dword [rsp + 0x20], 0
call fcn.140162270
mov rcx, qword [rsp + 0x58]
mov edx, dword [rcx + 0x98]
test edx, edx
jle 0x1401bd169
mov r8, qword [rcx + 0x90]
movsxd rax, edx
mov r9d, 0x10
lea rax, [rax + rax*2]
lea rax, [r8 + rax*8]
mov word [rax - 0x16], r9w
cmp qword [rsp + 0x80], 0
je 0x1401bd19f
mov rax, qword [rsp + 0x58]
mov r8d, dword [rsp + 0xa8]
mov rcx, qword [rax + 0x18]
not r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x1401bdc37
mov rax, qword [rcx + 0x50]
movsxd r8, r8d
mov dword [rax + r8*4], edx
mov rax, qword [rsp + 0x50]
mov r8d, dword [rax + 4]
lea rax, [rdi*8]
sub rax, rdi
shl rax, 4
test byte [rbp + rax + 0x48], 0x10
je 0x1401bd51e
mov ecx, dword [rsp + 0x60]
add ecx, r14d
test r12d, r12d
jns 0x1401bd1e1
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x98]
mov dword [rsp + 0x60], eax
lea r12d, [rax - 1]
mov r11, qword [rsp + 0x58]
lea rax, [0x1404231c0]
mov rdx, qword [r11]
cmp byte [rdx + 0x63], 0
jne 0x1401bd208
mov rax, qword [r11 + 0x90]
movsxd r12, r12d
lea rdx, [r12 + r12*2]
lea rax, [rax + rdx*8]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x50]
mov r9d, r8d
mov r8d, ebx
mov rdx, qword [r15 + 0x10]
mov eax, dword [rax + 8]
mov dword [rsp + 0x28], eax
lea rax, [rdi*8]
sub rax, rdi
shl rax, 4
add rbp, rax
mov eax, dword [rbp + 0x40]
mov dword [rsp + 0x20], eax
mov rcx, qword [r15]
call fcn.14014f1f0
mov rdi, qword [rsp + 0x58]
mov edx, ebx
mov rcx, rdi
call fcn.140162f20
and byte [rbp + 0x48], 0xef
mov edx, dword [rdi + 0x98]
mov rdi, qword [rsp + 0x58]
lea eax, [rdx - 1]
test ebx, ebx
lea rcx, [0x1404231c0]
cmovs ebx, eax
mov rax, qword [rdi]
movzx eax, byte [rax + 0x63]
test al, al
jne 0x1401bd28c
mov rcx, qword [rdi + 0x90]
movsxd rbx, ebx
lea r8, [rbx + rbx*2]
lea rcx, [rcx + r8*8]
mov dword [rcx + 8], edx
test esi, esi
je 0x1401bd2ad
movzx ecx, byte [r15 + 0x1f]
cmp cl, 7
ja 0x1401bd2ad
lea r8d, [rcx + 1]
mov byte [r15 + 0x1f], r8b
mov dword [r15 + rcx*4 + 0xc8], esi
mov esi, dword [rsp + 0xc0]
lea ecx, [rdx - 1]
test esi, esi
cmovns ecx, esi
mov esi, ecx
lea rcx, [0x1404231c0]
test al, al
jne 0x1401bd2e0
movsxd rax, esi
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x90]
lea rcx, [rax + rcx*8]
mov dword [rcx + 8], edx
mov rax, qword [rsp + 0x80]
test rax, rax
je 0x1401bd2fb
mov rcx, qword [r15]
mov rdx, rax
call fcn.140159250
mov rax, qword [rsp + 0x70]
cmp byte [rax + 0x63], 0
jne 0x1401bc0d4
mov rax, qword [r15 + 0xa0]
test rax, rax
cmove rax, r15
cmp byte [rax + 0x10b], 2
jne 0x1401bd345
mov rax, qword [rsp + 0x50]
mov rdx, r13
mov rcx, r15
mov r9, qword [rax + 0x50]
movzx r8d, byte [rax + 0x34]
mov eax, dword [rsp + 0xd4]
mov dword [rsp + 0x20], eax
call fcn.140172260
mov rdx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x50]
mov rcx, r15
mov edi, dword [rsp + 0x9c]
mov rbx, qword [rsp + 0x48]
mov eax, dword [rdx + 0x98]
mov r9d, edi
mov r8, rbx
add edi, 1
mov dword [rsi + 0x20], eax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rsi
add rsi, 0x60
mov qword [rsp + 0x28], rax
call fcn.1401b84f0
mov dword [rsp + 0x9c], edi
mov qword [rsp + 0x78], rax
mov eax, dword [rsi - 0x48]
mov qword [rsp + 0x50], rsi
mov dword [rbx + 0x30], eax
cmp dword [rsp + 0x98], edi
jne 0x1401bcaa0
mov rax, qword [rsp + 0x90]
mov eax, dword [rax + 0x98]
mov rdi, qword [rsp + 0x48]
mov dword [rdi + 0x50], eax
jmp 0x1401bc15c
mov rsi, qword [rsp + 0x88]
lea rax, [rcx + rcx*2]
lea rdx, str.automatic_index_on__s__s_
mov ecx, 0x11c
shl rax, 3
mov qword [rsp + 0xb0], r10
add rax, qword [rsi + 8]
mov r8, qword [rsi]
mov r9, qword [rax]
call fcn.140172c50
mov r10, qword [rsp + 0xb0]
jmp 0x1401bccab
lea rcx, [0x140160a10]
mov eax, dword [r13 + rbx + 0x4c]
mov r11d, 3
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0x118], rcx
lea rcx, [0x1401469f0]
mov qword [rsp + 0x120], rcx
lea rcx, [rsp + 0x110]
mov word [rsp + 0x134], r11w
mov dword [rsp + 0x138], eax
call fcn.140169670
mov rdx, qword [rsp + 0xb0]
cmp word [rsp + 0x134], 0
je 0x1401bcc68
mov rax, qword [rsp + 0x1d0]
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [rax]
call fcn.14016a560
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x1d0]
mov r8, rax
call fcn.14017f310
mov qword [rsp + 0x80], rax
jmp 0x1401bcc68
or r13, rax
mov rax, qword [rsp + 0x60]
mov r8, qword [rbp]
movsxd r10, r14d
mov qword [rsp + 0xd8], r10
mov rax, qword [rax + 8]
test byte [r8 + 5], 2
mov r11, qword [r8 + 0x18]
mov rdx, qword [r8 + 0x10]
mov word [rax + r10*2], cx
je 0x1401bd630
mov r8, rdx
mov rcx, r15
mov rdx, r11
call fcn.14017bea0
mov r10, qword [rsp + 0xd8]
lea rdx, str.BINARY
test rax, rax
je 0x1401bd508
mov rdx, qword [rax]
mov rax, qword [rsp + 0x60]
add r14d, 1
mov rax, qword [rax + 0x40]
mov qword [rax + r10*8], rdx
jmp 0x1401bce80
mov rdi, qword [rsp + 0x58]
mov dword [rsp + 0x20], 0
mov edx, 5
lea r9d, [rbx + 1]
mov rcx, rdi
call fcn.140162270
mov edx, dword [rdi + 0x98]
test edx, edx
jle 0x1401bd25b
mov r10, qword [rdi + 0x90]
movsxd rax, edx
mov r11d, 3
lea rax, [rax + rax*2]
lea rax, [r10 + rax*8]
mov word [rax - 0x16], r11w
jmp 0x1401bd25b
mov rax, qword [rsp + 0x50]
mov r8d, dword [rax + 4]
mov rax, qword [rsp + 0x58]
mov ebx, dword [rax + 0x98]
cmp ebx, dword [rax + 0x9c]
jge 0x1401bdcc9
mov rcx, qword [rsp + 0x58]
lea eax, [rbx + 1]
xor r12d, r12d
mov dword [rcx + 0x98], eax
movsxd rax, ebx
lea rdx, [rax + rax*2]
mov rax, qword [rcx + 0x90]
lea rax, [rax + rdx*8]
mov dword [rax + 4], r8d
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x26
jmp 0x1401bd085
mov r11, qword [rsp + 0x88]
cmp word [r11 + 0x36], 0x3f
jle 0x1401bcf2c
lea eax, [r14 + 1]
mov r8d, 0x3f
cdqe
nop
mov word [rcx + rax*2 - 2], r8w
movsx r10d, word [r11 + 0x36]
add r8d, 1
mov r14d, eax
mov qword [rdx + rax*8 - 8], r9
add rax, 1
cmp r8d, r10d
jl 0x1401bd5f0
movsxd rax, r14d
lea r8, [rax + rax]
shl rax, 3
jmp 0x1401bcf2c
mov eax, dword [r15 + 0x38]
lea esi, [rax + 1]
mov dword [r15 + 0x38], esi
jmp 0x1401bd0db
mov r8, r11
mov rcx, r15
call fcn.14017bea0
mov r10, qword [rsp + 0xd8]
jmp 0x1401bd4f9
lea rax, [rdi*8]
mov r8d, dword [rsp + 0x200]
sub rax, rdi
shl rax, 4
mov rax, qword [rbp + rax + 0x28]
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1401bd67d
jmp 0x1401bd682
mov rax, qword [rax + 0x28]
add r8d, 1
test rax, rax
je 0x1401bd682
cmp rsi, rax
jne 0x1401bd670
mov rax, qword [rsp + 0x48]
mov edx, 0x65
mov dword [rax + 0x2c], r8d
mov dword [rbx + 8], r8d
jmp 0x1401bc9d4
cmp r12d, 1
je 0x1401bde30
mov rcx, qword [r15]
movsxd rax, r12d
shl rax, 5
add rax, qword [rcx + 0x20]
mov rax, qword [rax + 8]
cmp byte [rax + 0x11], 0
je 0x1401bc968
mov rax, qword [rsi]
mov r8d, dword [rsi + 0x28]
mov edx, r12d
xor r9d, r9d
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.14015b8f0
mov edx, dword [r13 + 0x28]
jmp 0x1401bc968
xor r9d, r9d
xor r8d, r8d
mov edx, 0x11
mov rcx, rax
mov dword [rsp + 0x20], 0
call fcn.1401621e0
mov dword [rsp + 0xc0], eax
mov rax, qword [rsp + 0x50]
mov rsi, qword [rax + 0x50]
jmp 0x1401bcb4b
xor r12d, r12d
jmp 0x1401bc89e
test byte [rbx + 0x3c], 0x20
jne 0x1401bbf32
mov rsi, qword [r14 + 0x28]
cmp byte [rsi + 0x3f], 1
je 0x1401bbf32
test byte [r14 + 0x48], 2
jne 0x1401bbf32
xor edx, edx
mov edi, dword [r14 + 0x4c]
mov ecx, 0x100
lea rax, [rbx + 0x70]
mov rbp, qword [rsp + 0xf8]
mov r8d, 0xffffffff
mov qword [rsp + 0x68], rax
lea r12, [rsp + 0x110]
mov dword [rsp + 0x50], edi
mov dword [rbp + 0x28], 0
mov word [rbp + 0x2e], dx
mov word [rsp + 0x130], cx
mov rcx, r12
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x134], 0x82
mov dword [rsp + 0x13c], edi
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 0
mov byte [rsp + 0x132], 1
mov word [rsp + 0x168], r8w
call fcn.140184270
test rax, rax
jne 0x1401bd7f1
jmp 0x1401bde68
mov rcx, r12
call fcn.140184270
test rax, rax
je 0x1401bde68
cmp qword [rax + 0x28], 0
jne 0x1401bd7e0
mov rdx, qword [rbp + 0x38]
mov ecx, 1
mov r8d, 1
mov r9d, 0x21
mov dword [rbp + 0x28], 0x1101
mov qword [rdx], rax
mov eax, 0x1101
mov word [rbp + 0x2c], cx
mov word [rbp + 0x18], r8w
mov word [rbp + 0x14], r9w
mov edi, dword [rsp + 0x50]
mov rdx, qword [rbx + 0x10]
mov r12d, 1
mov r13d, 1
mov word [rbp + 0x16], r12w
mov qword [rbx + 0x3b0], rbp
mov qword [rbp + 8], 1
mov dword [rbx + 0x364], edi
mov word [rbx + 0x48], r13w
test rdx, rdx
je 0x1401bd867
mov edx, dword [rdx]
mov byte [rbx + 0x41], dl
test byte [rbx + 0x3d], 1
je 0x1401bd871
mov byte [rbx + 0x43], 1
cmp byte [rsp + 0x132], 1
jbe 0x1401bc1f5
or eax, 0x200000
mov dword [rbp + 0x28], eax
jmp 0x1401bc1f5
mov rax, qword [rsp + 0x1d8]
cmp dword [rax], 1
jne 0x1401bdbad
mov rax, qword [rsp + 0x1d8]
mov r12d, dword [rax + 0x4c]
mov r9, qword [rax + 0x28]
mov rax, qword [rsp + 0x1f0]
mov eax, dword [rax]
test eax, eax
jle 0x1401bd921
mov rsi, qword [rsp + 0x1f0]
sub eax, 1
shl rax, 5
lea rcx, [rsi + 8]
lea r8, [rsi + rax + 0x28]
mov rax, qword [rcx]
test rax, rax
jne 0x1401bd8f5
jmp 0x1401bd918
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 8]
test rax, rax
je 0x1401bd918
mov edx, dword [rax + 4]
test edx, 0x41000
je 0x1401bdafe
and edx, 0x40000
jne 0x1401bd8e8
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1401bd8f5
nop dword [rax]
add rcx, 0x20
cmp r8, rcx
jne 0x1401bd8d7
mov r14, qword [r9 + 0x10]
test r14, r14
je 0x1401bdbad
mov qword [rsp + 0x1d0], r15
mov rsi, qword [rsp + 0x1f0]
mov r15d, r12d
jmp 0x1401bd955
mov r14, qword [r14 + 0x28]
test r14, r14
je 0x1401bdba5
cmp byte [r14 + 0x62], 0
je 0x1401bd948
cmp qword [r14 + 0x48], 0
jne 0x1401bd948
cmp word [r14 + 0x5e], 0
je 0x1401bda35
xor edi, edi
jmp 0x1401bd98e
movzx eax, word [r14 + 0x5e]
add rdi, 1
lea ebp, [r12 + 1]
cmp eax, edi
jle 0x1401bda2d
mov qword [rsp + 0x28], r14
mov r8d, edi
mov edx, r15d
mov rcx, r13
mov dword [rsp + 0x20], 2
mov r9, 0xffffffffffffffff
mov r12d, edi
mov ebp, edi
call fcn.140184770
test rax, rax
jne 0x1401bd978
mov rax, qword [r14 + 0x40]
mov r10d, dword [rsi]
mov r8, qword [rax + rdi*8]
test r10d, r10d
jle 0x1401bda28
lea r9, [rdi + rdi]
xor ebx, ebx
mov rax, rbx
shl rax, 5
mov r10, qword [rsi + rax + 8]
mov rax, r10
test r10, r10
jne 0x1401bd9fd
jmp 0x1401bda20
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 8]
test rax, rax
je 0x1401bda20
mov edx, dword [rax + 4]
test edx, 0x41000
je 0x1401bda50
and edx, 0x40000
jne 0x1401bd9f0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1401bd9fd
nop dword [rax]
add rbx, 1
cmp dword [rsi], ebx
jg 0x1401bd9d0
movzx eax, word [r14 + 0x5e]
cmp eax, ebp
jne 0x1401bd948
mov r15, qword [rsp + 0x1d0]
mov rax, qword [rsp + 0x48]
mov byte [rax + 0x43], 1
jmp 0x1401bbf18
movzx ecx, byte [rax]
lea edx, [rcx + 0x5a]
and edx, 0xfd
jne 0x1401bda20
mov rdx, qword [r14 + 8]
movzx ecx, word [rdx + r9]
cmp word [rax + 0x30], cx
jne 0x1401bda20
cmp r15d, dword [rax + 0x2c]
jne 0x1401bda20
mov rcx, qword [rsp + 0x1d0]
mov rdx, r10
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x50], r8
call fcn.14017bca0
mov r8, qword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
test rax, rax
je 0x1401bdc46
mov r10, qword [rax]
xor ecx, ecx
jmp 0x1401bdaca
lea r11, [0x14037cfa0]
movzx edx, byte [r11 + rdx]
cmp byte [r11 + rax], dl
jne 0x1401bda20
add rcx, 1
movzx eax, byte [r10 + rcx]
movzx edx, byte [r8 + rcx]
cmp eax, edx
jne 0x1401bdab0
test eax, eax
jne 0x1401bdac6
mov rax, qword [r14 + 8]
movsx rax, word [rax + r9]
movsx edx, ax
test edx, edx
jns 0x1401bde08
cmp edx, 0xffffffff
jne 0x1401bda28
jmp 0x1401bd978
movzx edi, byte [rax]
lea edx, [rdi + 0x5a]
and edx, 0xfd
jne 0x1401bd918
cmp r12d, dword [rax + 0x2c]
jne 0x1401bd918
cmp word [rax + 0x30], 0
js 0x1401bda3d
add rcx, 0x20
cmp r8, rcx
jne 0x1401bd8d7
jmp 0x1401bd921
mov rax, qword [rsi + 0x50]
test rax, rax
jne 0x1401bdb59
jmp 0x1401bdb5e
mov rax, qword [rax + 0x28]
test rax, rax
je 0x1401bdb5e
cmp r14, qword [rax]
jne 0x1401bdb50
lea rdx, [rdi*8]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x90]
xor r9d, r9d
sub rdx, rdi
mov dword [rsp + 0x30], 0xfffffff4
mov dword [rsp + 0x20], 0
shl rdx, 4
mov r8d, dword [rbp + rdx + 0x4c]
mov edx, 0xab
call fcn.140162f90
mov edx, dword [r13 + 0x28]
jmp 0x1401bc968
mov r15, qword [rsp + 0x1d0]
cmp qword [rsp + 0x1e8], 0
jne 0x1401bbf18
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x1f0]
or word [rax + 0x3c], 0x80
mov qword [rax + 0x10], rsi
jmp 0x1401bbf18
mov eax, dword [rsp + 0x200]
mov edx, 0x63
mov dword [rbx + 8], eax
mov r8d, eax
jmp 0x1401bc9d4
xor r15d, r15d
mov rcx, qword [rsp + 0x50]
mov rdx, r14
mov r8, r15
call fcn.14017de70
jmp 0x1401bc043
mov rcx, r8
call fcn.1401b6350
jmp 0x1401bca4b
mov r8d, 0x40
lea rdx, str.at_most__d_tables_in_a_join
mov rcx, r15
call fcn.140177210
mov qword [rsp + 0x48], 0
jmp 0x1401bc15c
mov rdx, qword [rsp + 0x58]
call fcn.14015cd90
jmp 0x1401bd19f
mov rax, qword [rsp + 0x1d0]
mov rax, qword [rax]
mov rax, qword [rax + 0x10]
jmp 0x1401bdaa0
mov eax, dword [rbx + 4]
mov dword [rbx + 8], eax
jmp 0x1401bca16
mov rcx, qword [rsp + 0x58]
xor r9d, r9d
mov r8d, r10d
mov edx, 0xe
mov dword [rsp + 0x20], 0
call fcn.1401621e0
mov ebx, eax
jmp 0x1401bd085
mov rcx, qword [rsp + 0x58]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x46
mov dword [rsp + 0x20], 0
mov dword [rsp + 0x68], r10d
call fcn.1401621e0
mov r10d, dword [rsp + 0x68]
mov r12d, eax
jmp 0x1401bcffd
xor eax, eax
xor r8d, r8d
lea r9, str.BINARY
jmp 0x1401bcec3
xor r9d, r9d
mov edx, 0x26
mov rcx, rax
xor r12d, r12d
mov dword [rsp + 0x20], 0
call fcn.1401621e0
mov ebx, eax
jmp 0x1401bd085
mov r15, qword [rsp + 0x1d0]
jmp 0x1401bd2e3
mov qword [rsp + 0x80], 0
mov rbp, 0xffffffffffffffff
xor eax, eax
jmp 0x1401bccea
movzx esi, word [rsp + 0x60]
test sil, 8
je 0x1401bc800
mov rdi, qword [rsp + 0x1d8]
mov rdx, qword [rdi + 0x28]
cmp byte [rdx + 0x3f], 1
je 0x1401bc800
test ah, 0x20
je 0x1401bdd45
and esi, 0x10
je 0x1401bc800
mov ecx, 2
jmp 0x1401bc7ee
cmp word [rsi + 0x36], 0x3f
jg 0x1401bc935
test byte [rsi + 0x30], 0xe0
jne 0x1401bc935
lea rax, [rdi*8]
xor r8d, r8d
sub rax, rdi
shl rax, 4
mov rax, qword [rbp + rax + 0x60]
test rax, rax
je 0x1401bdd89
add r8d, 1
shr rax, 1
jne 0x1401bdd80
mov rcx, qword [rsp + 0x90]
mov r9d, 0xfffffffd
movsxd r8, r8d
mov edx, 0xffffffff
call fcn.14015cbc0
jmp 0x1401bc935
cmp byte [rax + 0x43], 2
je 0x1401bca16
movsxd rax, dword [rdi + 0x98]
test eax, eax
jle 0x1401bca16
mov rdi, qword [rdi + 0x90]
lea rax, [rax + rax*2]
mov r13d, 2
lea rax, [rdi + rax*8]
mov word [rax - 0x16], r13w
jmp 0x1401bca16
test al, 0x40
je 0x1401bc800
test byte [rsp + 0x60], 8
mov edx, 8
cmovne r14d, edx
and eax, 0xffffffbf
mov dword [r8 + 0x28], eax
jmp 0x1401bc800
mov rdx, qword [r14 + 0x18]
lea rax, [rax + rax*2]
mov r9, qword [rdx + 8]
lea rax, [r9 + rax*8]
test byte [rax + 8], 0xf
jne 0x1401bd978
jmp 0x1401bda28
and dh, 2
jne 0x1401bc974
jmp 0x1401bca1b
mov rax, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov eax, dword [rax + 0x98]
mov dword [rdi + 0x4c], eax
cmp byte [rsi + 0x63], 0
jne 0x1401bc0d4
jmp 0x1401bd3bd
mov r13, qword [rsi + 0x10]
test r13, r13
je 0x1401bdfc8
mov qword [rsp + 0x58], r14
mov r14, rbx
jmp 0x1401bde8c
mov r13, qword [r13 + 0x28]
test r13, r13
je 0x1401bdfc5
cmp byte [r13 + 0x62], 0
je 0x1401bde7f
cmp qword [r13 + 0x48], 0
jne 0x1401bde7f
movzx edx, word [r13 + 0x5e]
cmp dx, 3
ja 0x1401bde7f
movzx eax, byte [r13 + 0x64]
mov ecx, eax
and ecx, 8
cmp cl, 1
sbb esi, esi
and esi, 0xffffff80
add esi, 0x82
test dx, dx
je 0x1401bdfb9
xor ebx, ebx
mov qword [rsp + 0x28], r13
mov r8d, dword [rsp + 0x50]
mov r9d, ebx
mov rcx, r12
mov dword [rsp + 0x20], esi
mov rdx, qword [rsp + 0x68]
mov edi, ebx
mov dword [rsp + 0x78], ebx
call fcn.140184680
test rax, rax
jne 0x1401bdf0d
jmp 0x1401bdf88
mov rcx, r12
call fcn.140184270
test rax, rax
je 0x1401bdf88
cmp qword [rax + 0x28], 0
jne 0x1401bdf00
mov rdx, qword [rbp + 0x38]
mov edi, dword [rsp + 0x78]
mov qword [rdx + rbx*8], rax
movzx eax, word [r13 + 0x5e]
add rbx, 1
add edi, 1
cmp eax, ebx
jg 0x1401bdec8
cmp edi, eax
jne 0x1401bde7f
mov rbx, r14
movzx eax, byte [r13 + 0x64]
mov r14, qword [rsp + 0x58]
mov dword [rbp + 0x28], 0x1201
test al, 0x20
jne 0x1401bdfeb
mov rax, qword [r14 + 0x60]
and rax, qword [r13 + 0x68]
je 0x1401bdfeb
mov r14d, 0x27
mov word [rbp + 0x2c], di
mov eax, 0x1201
mov word [rbp + 0x18], di
mov qword [rbp + 0x20], r13
mov word [rbp + 0x14], r14w
jmp 0x1401bd82a
movzx eax, word [r13 + 0x5e]
jmp 0x1401bdf30
mov r12d, 0xffff8000
jmp 0x1401bc89e
mov qword [rsp + 0x78], r12
jmp 0x1401bc7b0
cmp r8, rax
ja 0x1401bc325
jmp 0x1401bc3db
xor ebx, ebx
jmp 0x1401bc2f2
mov rbx, r14
xor edi, edi
mov r14, qword [rsp + 0x58]
jmp 0x1401bdf45
mov rbx, r14
mov eax, dword [rbp + 0x28]
test eax, eax
jne 0x1401bd82a
mov rbx, qword [rsp + 0xe0]
mov r14, qword [rbx + 8]
jmp 0x1401bbf32
xor esi, esi
jmp 0x1401bc2af
mov eax, 0x27
mov dword [rbp + 0x28], 0x1241
mov word [rbp + 0x14], ax
mov eax, 0x1241
mov word [rbp + 0x2c], di
mov word [rbp + 0x18], di
mov qword [rbp + 0x20], r13
jmp 0x1401bd82a
not rcx
and r12, rcx
jmp 0x1401bc3fb
mov r15, qword [rsp + 0x1d0]
mov rdx, qword [r13 + 0x38]
cmp qword [rsp + 0x68], rdx
jne 0x1401bc089
mov rcx, qword [rsp + 0x58]
mov rdx, r13
call fcn.140153e00
mov rax, qword [rsp + 0x68]
mov word [r13 + 0x2c], 0
mov word [r13 + 0x30], 3
mov qword [r13 + 0x38], rax
mov dword [r13 + 0x28], 0
jmp 0x1401bc0d4