Function at 0x1401d6730
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, 0x1b8
movaps xmmword [rsp + 0x1a0], xmm6
mov rax, qword [rcx]
mov qword [rsp + 0x40], rax
mov rax, qword [rcx + 0x10]
mov rbx, rcx
mov r15, rdx
mov qword [rsp + 0x210], r8
test rax, rax
mov qword [rsp + 0x48], rax
je 0x1401d68d0
test r15, r15
je 0x1401d6781
mov r11d, dword [rbx + 0x30]
test r11d, r11d
je 0x1401d67a8
mov eax, 1
movaps xmm6, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor r9d, r9d
xor r8d, r8d
mov edx, 0x15
mov qword [rsp + 0x20], 0
mov rcx, rbx
call fcn.14017d870
test eax, eax
jne 0x1401d6781
mov rax, qword [rsp + 0x210]
cmp byte [rax], 6
ja 0x1401d6835
mov rsi, qword [r15 + 0x48]
test rsi, rsi
je 0x1401d6825
mov rcx, qword [rbx]
test rcx, rcx
je 0x1401d6c50
mov edx, 0x18
call fcn.140168520
test rax, rax
je 0x1401d7820
mov rdx, qword [rbx + 0xc8]
mov qword [rax], rdx
mov qword [rbx + 0xc8], rax
mov qword [rax + 8], rsi
lea rsi, [0x14015e480]
mov qword [rax + 0x10], rsi
mov qword [r15 + 0x48], 0
mov eax, dword [r15 + 4]
and eax, 0xfffffffe
or eax, 0x400000
mov dword [r15 + 4], eax
xor r8d, r8d
mov rdx, r15
mov rcx, rbx
call fcn.140164b30
mov r10d, dword [rbx + 0x30]
test r10d, r10d
jne 0x1401d6884
mov r11d, dword [r15 + 4]
test r11d, 0x800000
jne 0x1401d6c28
mov rax, qword [rsp + 0x210]
cmp byte [rax], 9
je 0x1401d6c98
mov rdx, r15
mov rcx, rbx
call fcn.1401a27f0
test eax, eax
mov r13d, eax
je 0x1401d6908
mov eax, 1
nop dword [rax]
movsxd rdx, dword [rbx + 0x140]
mov rcx, qword [rbx + 0x10]
test edx, edx
je 0x1401d68c3
mov r9, qword [rcx]
lea r8, [0x14041e460]
cmp byte [r9 + 0x67], 0
jne 0x1401d68bf
lea r8, [rdx + rdx*2]
mov rdx, qword [rcx + 0x88]
lea r8, [rdx + r8*8]
mov edx, dword [r8 + 8]
mov dword [rbx + 0x140], edx
jmp 0x1401d6786
cmp qword [rcx + 0xb0], 0
je 0x1401d68f0
mov rcx, rbx
call fcn.140177310
mov qword [rsp + 0x48], rax
jmp 0x1401d6773
mov rax, qword [rsp + 0x40]
test byte [rax + 0x60], 8
jne 0x1401d68da
mov byte [rcx + 0x23], 1
jmp 0x1401d68da
mov qword [rsp + 0xf8], 0
mov eax, dword [r15 + 4]
mov qword [rsp + 0x100], 0
mov rbp, qword [r15 + 0x50]
mov qword [rsp + 0x108], 0
mov rsi, qword [r15 + 0x28]
mov qword [rsp + 0x110], 0
mov qword [rsp + 0x118], 0
and eax, 8
mov dword [rsp + 0x68], eax
setne al
xor r12d, r12d
test rbp, rbp
movzx eax, al
mov dword [rsp + 0x50], eax
mov rax, qword [r15 + 0x48]
mov qword [rsp + 0xf0], rax
jne 0x1401d6aad
mov dword [rsp + 0x60], r13d
mov r13, rsi
mov qword [rsp + 0x58], rbp
nop word cs:[rax + rax]
cmp dword [r13], r12d
jle 0x1401d6cb0
movsxd rdi, r12d
imul r14, rdi, 0x68
add r14, r13
movzx r8d, byte [r14 + 0x44]
mov rsi, qword [r14 + 0x30]
mov rbp, qword [r14 + 0x28]
test r8b, 0x48
jne 0x1401d6ad0
test rsi, rsi
je 0x1401d6a9e
mov rax, qword [rsi + 0x20]
movsx r8d, word [rbp + 0x36]
mov eax, dword [rax]
cmp r8d, eax
jne 0x1401d7338
imul rdi, rdi, 0x68
add rdi, r13
test byte [rdi + 0x49], 1
je 0x1401d69f3
mov rax, qword [rdi + 0x68]
cmp byte [rax + 0x12], 0
je 0x1401d6a9e
mov eax, dword [rsi + 4]
test al, 8
jne 0x1401d6a9e
mov rdi, qword [rsi + 0x48]
test rdi, rdi
je 0x1401d6a48
cmp qword [r15 + 0x48], 0
je 0x1401d6ba0
cmp qword [rsi + 0x60], 0
je 0x1401d6bb0
test r12d, r12d
jne 0x1401d6a48
test byte [r15 + 6], 4
je 0x1401d6a48
cmp dword [r13], 1
je 0x1401d6c60
test byte [r13 + 0xac], 0x22
jne 0x1401d6c60
nop word [rax + rax]
mov r9d, dword [rsp + 0x50]
mov r8d, r12d
mov rdx, r15
mov rcx, rbx
call fcn.1401867f0
test eax, eax
je 0x1401d6a72
mov r9d, dword [rbx + 0x30]
test r9d, r9d
jne 0x1401d6884
mov r12d, 0xffffffff
mov rax, qword [rsp + 0x40]
mov r13, qword [r15 + 0x28]
cmp byte [rax + 0x67], 0
jne 0x1401d6884
mov rax, qword [rsp + 0x210]
cmp byte [rax], 8
jbe 0x1401d6a9e
mov rax, qword [r15 + 0x48]
mov qword [rsp + 0xf0], rax
add r12d, 1
cmp qword [r15 + 0x50], 0
je 0x1401d6990
mov r8, qword [rsp + 0x210]
mov rdx, r15
mov rcx, rbx
call fcn.1401e7710
cmp qword [r15 + 0x58], 0
jne 0x1401d6786
jmp 0x1401d6890
mov edx, dword [r14 + 0x4c]
and r8d, 0x40
mov rcx, qword [r15 + 0x30]
call fcn.140163df0
test eax, eax
je 0x1401d69bb
mov rax, qword [rsp + 0x40]
test byte [rax + 0x61], 0x20
jne 0x1401d69bb
movzx r9d, byte [r14 + 0x44]
test r9b, 8
je 0x1401d6b15
test r9b, 0x10
je 0x1401d77e0
and r9d, 0xfffffff7
mov byte [r14 + 0x44], r9b
and r9d, 0x40
je 0x1401d69bb
mov r9d, dword [r13]
lea eax, [r12 + 1]
cmp eax, r9d
jge 0x1401d72a8
imul r14, rdi, 0x68
mov eax, r9d
sub eax, r12d
sub eax, 2
add rax, rdi
imul rax, rax, 0x68
add r14, r13
lea r10, [r13 + rax + 0x68]
jmp 0x1401d6b67
and eax, 0xffffffef
mov byte [r14 + 0xac], al
add r14, 0x68
cmp r10, r14
je 0x1401d72a8
movzx eax, byte [r14 + 0xac]
test al, 0x10
je 0x1401d6b5a
test al, 8
jne 0x1401d6b50
mov edx, dword [r14 + 0xb4]
and eax, 0xffffffcf
mov r8d, 1
mov rcx, qword [r15 + 0x30]
mov byte [r14 + 0xac], al
call fcn.14014b6e0
jmp 0x1401d6b5a
cmp dword [r13], 1
jg 0x1401d6a12
jmp 0x1401d6a1d
test eax, 0x8000000
jne 0x1401d6a1d
test byte [r15 + 7], 8
jne 0x1401d6a1d
mov rax, qword [rsp + 0x40]
test byte [rax + 0x62], 4
jne 0x1401d6a1d
mov rcx, qword [rbx]
test rcx, rcx
je 0x1401d90fc
mov edx, 0x18
call fcn.140168520
test rax, rax
je 0x1401d99bd
mov rdx, qword [rbx + 0xc8]
mov qword [rax], rdx
mov qword [rbx + 0xc8], rax
mov qword [rax + 8], rdi
lea rdi, [0x14015e480]
mov qword [rax + 0x10], rdi
mov qword [rsi + 0x48], 0
jmp 0x1401d6a48
mov rsi, qword [r15 + 0x28]
lea rcx, [rsi + 8]
mov rdx, rsi
call fcn.140160eb0
test eax, eax
jne 0x1401d6c70
and r11d, 0xff7fffff
mov dword [r15 + 4], r11d
jmp 0x1401d685d
mov ecx, 0x18
call fcn.140153820
jmp 0x1401d67f4
mov r12d, 1
jmp 0x1401d6aa2
mov r8, qword [rsi + 0x20]
test r8, r8
je 0x1401d87f9
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, rbx
call fcn.140168320
jmp 0x1401d6884
mov rdx, r15
mov rcx, rbx
call fcn.140188420
jmp 0x1401d686e
mov rcx, qword [r15 + 0x30]
mov rsi, r13
mov rax, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x58]
mov r13d, dword [rsp + 0x60]
test rcx, rcx
mov eax, dword [rax + 0x60]
je 0x1401d6cd7
cmp byte [rcx], 0x2c
je 0x1401d8693
test eax, 0x201
je 0x1401d783d
mov r11d, dword [rsi]
lea rax, [rsp + 0x150]
xor r14d, r14d
mov rdi, rsi
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x60], rax
test r11d, r11d
jle 0x1401d73cd
mov r12, qword [rsp + 0x48]
mov qword [rsp + 0x78], rbp
mov dword [rsp + 0x80], r13d
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x208], r15
jmp 0x1401d6e89
and edx, 1
je 0x1401d72f8
mov rcx, qword [rdi + 0x68]
cmp byte [rcx + 0x12], 0
je 0x1401d6d54
cmp dword [rcx], 1
jle 0x1401d72f8
test eax, 0x4000000
je 0x1401d7000
mov rax, qword [rsp + 0x200]
lea rbx, [rdi + 8]
mov rdx, qword [rsp + 0x200]
mov rax, qword [rax + 0x178]
mov qword [rsp + 0x50], rax
mov rax, qword [rdi + 0x18]
mov qword [rdx + 0x178], rax
mov rax, qword [rsp + 0x208]
mov r13d, dword [rax + 4]
movzx eax, byte [rcx + 0x12]
mov r10, rcx
test al, al
je 0x1401d6dc8
cmp dword [rcx], 1
jle 0x1401d6daa
cmp al, 2
jne 0x1401d6dc8
test byte [rsi + 0x44], 0x40
jne 0x1401d6dc8
mov rax, qword [rsp + 0x200]
mov rax, qword [rax]
test byte [rax + 0x63], 2
je 0x1401d87d3
nop dword [rax]
mov r9d, dword [r10 + 4]
test r9d, r9d
jg 0x1401d7358
xor r8d, r8d
mov r9d, r14d
mov rdx, rbx
mov rcx, rsi
call fcn.140161940
test rax, rax
mov r13, rax
je 0x1401d84f8
mov r9d, dword [rax + 0x30]
test r9d, r9d
jne 0x1401d7800
mov r9d, dword [r13 + 0x44]
mov edx, 0x73
mov rcx, r12
mov r8d, dword [rdi + 0x4c]
mov dword [rsp + 0x20], 0
call fcn.140177290
mov rax, qword [r13 + 0x28]
movzx eax, word [rax + 2]
mov word [rbp + 2], ax
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0x67], 0
jne 0x1401d7830
mov dword [rsp + 0x120], 0
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x208]
call fcn.140155480
mov rbx, qword [rsp + 0x200]
mov eax, dword [rsp + 0x120]
sub dword [rbx + 0x13c], eax
mov rax, rbx
mov rbx, qword [rsp + 0x50]
mov qword [rax + 0x178], rbx
add r14d, 1
add rdi, 0x68
cmp dword [rsi], r14d
jle 0x1401d73b0
cmp qword [rdi + 0x58], 0
jne 0x1401d6ebb
mov r8, qword [rdi + 0x18]
test r8, r8
je 0x1401d6ebb
mov rax, qword [rdi + 0x10]
lea r9, [0x1403a3634]
mov edx, 0x14
mov rcx, qword [rsp + 0x200]
mov qword [rsp + 0x20], rax
call fcn.14017d870
mov rbp, qword [rdi + 0x30]
test rbp, rbp
je 0x1401d6e78
mov rdx, qword [rsp + 0x58]
movsxd r15, r14d
mov dword [rsp + 0x150], 0
mov rcx, qword [rsp + 0x208]
call fcn.140155480
mov eax, dword [rsp + 0x150]
imul rdx, r15, 0x68
mov rbx, qword [rsp + 0x200]
add dword [rbx + 0x13c], eax
mov rax, qword [rsp + 0x40]
movzx edx, byte [rsi + rdx + 0x49]
mov eax, dword [rax + 0x60]
test ah, 0x10
je 0x1401d6d38
and edx, 1
test eax, 0x4000000
je 0x1401d7000
mov rax, qword [rsp + 0x200]
lea rbx, [rdi + 8]
test dl, dl
mov rcx, qword [rsp + 0x200]
mov rax, qword [rax + 0x178]
mov qword [rsp + 0x50], rax
mov rax, qword [rdi + 0x18]
mov qword [rcx + 0x178], rax
mov rax, qword [rsp + 0x208]
mov r13d, dword [rax + 4]
jne 0x1401d6ff0
movzx r10d, byte [rsi + 0x44]
and r10d, 0x40
jne 0x1401d6dd5
mov rax, qword [rsp + 0x200]
mov rax, qword [rax]
test byte [rax + 0x63], 2
jne 0x1401d6dd5
mov r9d, dword [rsi]
lea r8d, [r14 + 1]
mov rdx, rbx
mov rcx, rsi
mov byte [rsp + 0x70], r10b
call fcn.140161940
movzx r10d, byte [rsp + 0x70]
test rax, rax
jne 0x1401d6dd5
test r14d, r14d
jne 0x1401d713f
cmp r9d, 1
je 0x1401d717e
test byte [rsi + 0xac], 2
jne 0x1401d717e
and r13d, 0x10000000
je 0x1401d717e
test r10b, r10b
je 0x1401d6dd5
mov r10, qword [rdi + 0x68]
jmp 0x1401d6dc8
mov rcx, qword [rdi + 0x68]
jmp 0x1401d6d96
imul rax, r15, 0x68
test word [rsi + rax + 0x48], 0x108
jne 0x1401d6f21
mov r9, qword [rdi + 0x30]
test r9, r9
je 0x1401d706b
mov rax, r9
test byte [rax + 4], 9
jne 0x1401d6f21
nop word [rax + rax]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x1401d7060
cmp byte [rax], 0x87
jne 0x1401d6f21
cmp qword [rax + 0x70], 0
jne 0x1401d6f21
mov rax, rcx
test byte [rax + 4], 9
je 0x1401d7030
jmp 0x1401d6f21
cmp qword [rax + 0x70], 0
jne 0x1401d6f21
mov rax, qword [r9 + 0x48]
mov r10, qword [rdi + 0x58]
test rax, rax
je 0x1401d70b9
mov ecx, dword [rax]
test ecx, ecx
jle 0x1401d70b9
movsxd r8, ecx
mov r11d, 1
shl r8, 5
add r8, rax
nop
movzx ecx, word [rax + 0x20]
test cx, cx
je 0x1401d70b0
mov ebx, 0x3f
sub ecx, 1
cmp cx, bx
cmova ecx, ebx
mov rbx, r11
shl rbx, cl
or r10, rbx
add rax, 0x20
cmp r8, rax
jne 0x1401d7090
mov rax, qword [rdi + 0x28]
movsx r13d, word [rax + 0x36]
test r13d, r13d
jle 0x1401d6f21
movabs r11, 0x8000000000000000
xor ecx, ecx
jmp 0x1401d70ec
add ecx, 1
cmp r13d, ecx
je 0x1401d6f21
mov eax, 1
shl rax, cl
cmp ecx, 0x3f
cmovge rax, r11
test r10, rax
jne 0x1401d70e0
movsxd rbx, ecx
mov rax, r9
shl rbx, 5
nop word [rax + rax]
mov r8, qword [rax + 0x20]
add r8, rbx
mov r8, qword [r8 + 8]
cmp byte [r8], 0x79
je 0x1401d7134
and dword [r8 + 4], 0xfff7dfff
mov byte [r8], 0x79
or dword [rax + 4], 0x1000000
mov rax, qword [rax + 0x50]
test rax, rax
jne 0x1401d7110
jmp 0x1401d70e0
and r13d, 0x10000000
jne 0x1401d6fd7
mov rdx, rsi
mov rax, rbx
sub rdx, rdi
add rdx, rbx
jmp 0x1401d716f
sub rax, 0x68
cmp qword [rax + 0x28], 0
jne 0x1401d6fd7
test byte [rax + 0x3c], 0x22
jne 0x1401d6fd7
cmp rax, rdx
jne 0x1401d7160
mov rax, qword [rsp + 0x200]
xor r9d, r9d
mov edx, 0xb
mov rcx, r12
movsxd r13, dword [r12 + 0x90]
mov eax, dword [rax + 0x38]
lea r10d, [r13 + 1]
mov dword [rsp + 0x70], r10d
lea r8d, [rax + 1]
mov rax, qword [rsp + 0x200]
mov dword [rax + 0x38], r8d
mov dword [rdi + 0x3c], r8d
mov dword [rsp + 0x20], r10d
call fcn.140177290
mov eax, dword [rdi + 0x3c]
mov r9, rbx
mov edx, 1
mov r10d, dword [rsp + 0x70]
lea r8, str.CO_ROUTINE___S
mov rcx, qword [rsp + 0x200]
mov dword [rdi + 0x38], r10d
mov byte [rsp + 0x150], 0xd
mov dword [rsp + 0x154], eax
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x158], 0
mov dword [rsp + 0x160], 0
call fcn.14018db20
mov r8, qword [rsp + 0x58]
mov rdx, rbp
mov rcx, qword [rsp + 0x200]
call fcn.1401d6730
movzx edx, word [rbp + 2]
mov rcx, r12
mov rax, qword [rdi + 0x28]
mov word [rax + 0x3a], dx
imul rax, r15, 0x68
or byte [rsi + rax + 0x48], 0x20
mov eax, dword [rsp + 0x15c]
mov edx, dword [rdi + 0x3c]
mov dword [rdi + 0x40], eax
call fcn.140178170
mov rcx, qword [r12]
lea rax, [0x14041e460]
mov edx, dword [r12 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1401d7286
mov rax, qword [r12 + 0x88]
lea rcx, [r13 + r13*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov rax, qword [rsp + 0x200]
mov byte [rax + 0x1f], 0
mov dword [rax + 0x28], 0
jmp 0x1401d6e28
test r9d, r9d
jle 0x1401d69bb
lea edx, [r9 - 1]
movsxd rcx, r9d
imul rcx, rcx, 0x68
imul rdx, rdx, 0x68
lea r8, [r13 + rcx - 0x68]
lea rax, [r13 + rcx]
sub r8, rdx
jmp 0x1401d72dd
sub rax, 0x68
cmp rax, r8
je 0x1401d69bb
movzx edx, byte [rax - 0x24]
mov ecx, edx
and ecx, 0xffffffbf
and edx, 0x10
mov byte [rax - 0x24], cl
je 0x1401d72d0
jmp 0x1401d69bb
mov rax, qword [rsp + 0x208]
mov dword [rsp + 0x20], r14d
mov rdx, rbp
mov r9, rsi
mov rcx, qword [rsp + 0x200]
mov r8, qword [rax + 0x30]
call fcn.1401863b0
imul rdx, r15, 0x68
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x60]
movzx edx, byte [rsi + rdx + 0x49]
jmp 0x1401d6f13
mov r9, qword [rbp]
lea rdx, str.expected__d_columns_for__s_but_got__d
mov dword [rsp + 0x20], eax
mov rcx, rbx
call fcn.140168320
jmp 0x1401d6884
mov r8d, dword [r10 + 8]
mov edx, 0xa
mov rcx, r12
mov dword [rsp + 0x20], 0
mov qword [rsp + 0x70], r10
call fcn.140177290
mov r10, qword [rsp + 0x70]
mov r8d, dword [rdi + 0x4c]
mov r9d, dword [r10 + 0xc]
cmp r8d, r9d
je 0x1401d73a2
mov dword [rsp + 0x20], 0
mov edx, 0x73
mov rcx, r12
call fcn.140177290
mov r10, qword [rsp + 0x70]
movzx eax, word [r10 + 0x10]
mov word [rbp + 2], ax
jmp 0x1401d6e28
mov rbp, qword [rsp + 0x78]
mov r13d, dword [rsp + 0x80]
mov rbx, qword [rsp + 0x200]
mov r15, qword [rsp + 0x208]
mov rax, qword [r15 + 0x20]
mov rdi, qword [rsp + 0xf0]
mov r14, qword [r15 + 0x38]
mov qword [rsp + 0x58], rax
mov rax, qword [r15 + 0x30]
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x60], rax
mov rax, qword [r15 + 0x40]
mov qword [rsp + 0x78], rax
mov eax, dword [r15 + 4]
mov byte [rsp + 0xe4], al
and eax, 9
and byte [rsp + 0xe4], 1
cmp eax, 1
je 0x1401d9064
mov rax, qword [rsp + 0x50]
mov rdi, 0xffffffffffffffff
test rax, rax
je 0x1401d748b
mov r12, qword [rsp + 0x58]
xor r8d, r8d
mov rdx, rax
mov rcx, rbx
mov rdi, rax
mov r9d, dword [r12]
call fcn.140184cb0
mov r8d, dword [rbx + 0x34]
mov rcx, rax
mov edx, dword [rdi]
lea eax, [r8 + 1]
mov dword [rsp + 0xfc], r8d
mov dword [rbx + 0x34], eax
mov eax, dword [r12]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x30], 0xfffffff8
mov dword [rsp + 0x20], 0
lea r9d, [rdx + rax + 1]
mov edx, 0x76
call fcn.140177b30
movsxd rdi, eax
mov rax, qword [rsp + 0x210]
mov dword [rsp + 0x108], edi
cmp byte [rax], 0xc
je 0x1401d8f38
mov edx, dword [r15 + 4]
mov eax, dword [rbx + 0x44]
test dh, 0x40
lea r8d, [rax - 1]
mov dword [rsp + 0x70], eax
mov dword [rbx + 0x44], r8d
jne 0x1401d74c6
mov r9d, 0x140
mov word [r15 + 2], r9w
cmp qword [r15 + 0x60], 0
je 0x1401d74dc
mov rdx, r15
mov rcx, rbx
call fcn.1401df630
mov edx, dword [r15 + 4]
mov r8d, dword [r15 + 8]
test r8d, r8d
jne 0x1401d7518
test edi, edi
js 0x1401d7518
mov r11, qword [rsp + 0x48]
lea rax, [0x14041e460]
mov rcx, qword [r11]
cmp byte [rcx + 0x67], 0
jne 0x1401d750d
mov rax, qword [r11 + 0x88]
lea rcx, [rdi + rdi*2]
lea rax, [rax + rcx*8]
mov byte [rax], 0x77
mov byte [rsp + 0x114], 1
xor eax, eax
and edx, 1
jne 0x1401d8e75
mov byte [rsp + 0xe5], al
mov eax, dword [rsp + 0x68]
test eax, eax
jne 0x1401d8ef8
test r14, r14
jne 0x1401d8805
movzx ebp, byte [rsp + 0xe4]
xor edx, edx
movzx eax, word [r15 + 4]
mov r12, qword [r15 + 0x70]
test bpl, bpl
setne dl
and ax, 0x4000
shl edx, 8
or edx, eax
test r12, r12
mov word [rsp + 0x68], dx
je 0x1401d7890
mov rax, qword [r15 + 0x28]
mov r14, qword [rbx + 0x10]
mov rax, qword [rax + 0x30]
test r14, r14
mov rax, qword [rax + 0x20]
mov r9d, dword [rax]
je 0x1401d9350
mov r8d, dword [r12 + 0x58]
mov edx, 0x76
mov rcx, r14
mov dword [rsp + 0x20], 0
call fcn.140177290
mov r9d, dword [r12 + 0x58]
mov edx, 0x73
mov rcx, r14
mov dword [rsp + 0x20], 0
lea r8d, [r9 + 1]
call fcn.140177290
mov r9d, dword [r12 + 0x58]
mov edx, 0x73
mov rcx, r14
mov dword [rsp + 0x20], 0
lea r8d, [r9 + 2]
call fcn.140177290
mov r9d, dword [r12 + 0x58]
mov edx, 0x73
mov rcx, r14
mov dword [rsp + 0x20], 0
lea r8d, [r9 + 3]
call fcn.140177290
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x1401d7635
mov edx, dword [rax]
xor r8d, r8d
mov rcx, r14
mov eax, dword [rbx + 0x38]
lea r9d, [rax + 1]
add eax, edx
mov dword [r12 + 0x6c], r9d
mov dword [rbx + 0x38], eax
lea eax, [rdx + r9 - 1]
mov edx, 0x4b
mov dword [rsp + 0x20], eax
call fcn.140177290
mov eax, dword [rbx + 0x38]
mov r8d, 1
mov rcx, r14
mov rdi, r12
mov edx, 0x47
lea r9d, [rax + 1]
mov dword [rbx + 0x38], r9d
mov dword [r12 + 0x80], r9d
mov dword [rsp + 0x20], 0
call fcn.140177290
cmp byte [r12 + 0x24], 0
jne 0x1401da0fc
mov qword [rsp + 0x78], rsi
jmp 0x1401d7761
cmp byte [rdi + 0x21], 0x5a
je 0x1401d776f
mov rax, qword [rdi + 0x70]
xor r8d, r8d
xor r9d, r9d
mov rcx, rbx
mov rdx, qword [rax + 0x20]
call fcn.140184cb0
mov r8d, dword [rbx + 0x34]
mov rsi, rax
lea eax, [r8 + 1]
movd xmm0, r8d
mov dword [rbx + 0x34], eax
mov eax, dword [rbx + 0x38]
lea edx, [rax + 1]
add eax, 3
test rsi, rsi
movd xmm1, edx
punpckldq xmm0, xmm1
movq qword [rdi + 0x64], xmm0
mov dword [rbx + 0x38], eax
je 0x1401d9323
mov rax, qword [rdi + 0x50]
mov rax, qword [rax + 0x38]
cmp byte [rax + 1], 0x69
jne 0x1401d76ee
mov rax, qword [rsi + 0x18]
mov byte [rax], 1
mov r8d, dword [rdi + 0x64]
mov dword [rsp + 0x20], 0
mov r9d, 2
mov edx, 0x76
mov rcx, r14
call fcn.140177290
mov rax, qword [r14]
cmp byte [rax + 0x67], 0
jne 0x1401d9474
movsxd rax, dword [r14 + 0x90]
lea rdx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
lea rax, [rax + rdx*8 - 0x18]
mov byte [rax + 1], 0xf8
mov qword [rax + 0x10], rsi
mov eax, dword [rdi + 0x68]
xor r8d, r8d
mov edx, 0x47
mov rcx, r14
mov dword [rsp + 0x20], 0
lea r9d, [rax + 1]
call fcn.140177290
mov rdi, qword [rdi + 0x40]
test rdi, rdi
je 0x1401d788b
mov rax, qword [rdi + 0x50]
test byte [rax + 5], 0x10
jne 0x1401d7680
mov rax, qword [rax + 0x38]
lea rsi, str.first_value
cmp rax, rsi
je 0x1401d7868
lea rsi, str.nth_value
cmp rax, rsi
je 0x1401d7868
lea rsi, [0x1403b33e8]
cmp rax, rsi
je 0x1401d77ab
lea rdx, str.lead
cmp rax, rdx
jne 0x1401d7754
mov r8d, dword [rbx + 0x34]
lea eax, [r8 + 1]
mov dword [rbx + 0x34], eax
mov dword [rdi + 0x64], r8d
mov r9d, dword [r12 + 0x58]
mov edx, 0x73
mov rcx, r14
mov dword [rsp + 0x20], 0
call fcn.140177290
jmp 0x1401d7754
mov edx, dword [r14 + 0x4c]
and r9d, 0xffffffd7
xor r8d, r8d
mov rcx, qword [r15 + 0x30]
mov byte [r14 + 0x44], r9b
call fcn.14014b6e0
jmp 0x1401d6b15
mov r8d, dword [rax + 0x34]
mov edx, 0xa
mov rcx, r12
mov dword [rsp + 0x20], 0
call fcn.140177290
jmp 0x1401d6dff
mov rcx, qword [rbx]
mov rdx, rsi
call fcn.14015e420
jmp 0x1401d681d
mov rbx, qword [rsp + 0x200]
jmp 0x1401d6884
mov rdx, r15
mov rcx, rbx
call fcn.1401878a0
test eax, eax
je 0x1401d6ce2
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0x67], 0
jne 0x1401d6884
mov rsi, qword [r15 + 0x28]
jmp 0x1401d6ce2
mov eax, dword [rbx + 0x38]
mov r8d, dword [rbx + 0x34]
lea edx, [rax + 1]
add eax, 2
mov dword [rdi + 0x68], edx
lea edx, [r8 + 1]
mov dword [rbx + 0x34], edx
mov dword [rdi + 0x64], r8d
mov dword [rbx + 0x38], eax
jmp 0x1401d77ba
mov rsi, qword [rsp + 0x78]
movsx eax, word [r15 + 2]
mov qword [rsp + 0x28], r15
mov rdx, rsi
mov rcx, rbx
mov r9, qword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov dword [rsp + 0x38], eax
movzx eax, word [rsp + 0x68]
mov dword [rsp + 0x30], eax
mov rax, qword [r15 + 0x20]
mov qword [rsp + 0x20], rax
call fcn.1401d01a0
test rax, rax
mov qword [rsp + 0x68], rax
je 0x1401d6884
movzx eax, word [rax + 0x48]
cmp word [r15 + 2], ax
jle 0x1401d78e3
mov word [r15 + 2], ax
test bpl, bpl
je 0x1401d78fc
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x43]
test al, al
je 0x1401d78fc
mov byte [rsp + 0xe5], al
cmp qword [rsp + 0x50], 0
je 0x1401d8f1a
mov rsi, qword [rsp + 0x68]
xor edx, edx
movsx eax, byte [rsi + 0x41]
test al, al
cmovs eax, edx
test byte [rsi + 0x44], 4
mov dword [rsp + 0xf8], eax
je 0x1401d7949
mov rsi, qword [rsp + 0x68]
movzx edx, byte [rsi + 0x40]
sub edx, 1
movsxd rdx, edx
imul rdx, rdx, 0x70
add rdx, rsi
cmp qword [rdx + 0x398], 0
je 0x1401da1a7
mov edx, dword [rsi + 0x30]
mov rsi, qword [rsp + 0x50]
mov dword [rsp + 0x110], edx
cmp dword [rsi], eax
je 0x1401d8f0e
test r12, r12
je 0x1401d92d0
mov eax, dword [rbx + 0x44]
movq xmm6, rbx
mov r14, qword [r15 + 0x70]
lea esi, [rax - 2]
mov dword [rsp + 0xc4], eax
mov dword [rsp + 0xc0], esi
mov esi, dword [rbx + 0x38]
lea edi, [rax - 1]
movq xmm2, r14
sub eax, 3
punpcklqdq xmm6, xmm2
mov dword [rsp + 0x78], eax
mov dword [rbx + 0x44], eax
add esi, 1
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x98], esi
mov dword [rbx + 0x38], esi
mov rsi, qword [r14 + 0x18]
mov qword [rsp + 0xa0], rsi
mov rsi, qword [rbx + 0x10]
test rsi, rsi
je 0x1401d92a8
mov rax, qword [r15 + 0x28]
mov edx, dword [rax + 0x4c]
mov rax, qword [rax + 0x28]
mov dword [rsp + 0xb0], edx
movsx r12d, word [rax + 0x36]
movaps xmmword [rsp + 0x150], xmm6
mov eax, dword [rsp + 0x88]
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x170], 0
sub eax, 1
mov dword [rsp + 0x168], edi
mov dword [rbx + 0x44], eax
mov dword [rsp + 0xb4], eax
mov eax, dword [rsp + 0x98]
mov qword [rsp + 0x190], 0
mov qword [rsp + 0x160], rsi
mov dword [rsp + 0x16c], eax
mov eax, dword [r14 + 0x58]
lea edi, [rax + 1]
mov dword [rsp + 0x184], eax
mov dword [rsp + 0x80], eax
mov dword [rsp + 0xac], edi
lea edi, [rax + 2]
add eax, 3
mov dword [rsp + 0x17c], edi
mov dword [rsp + 0x18c], eax
movzx edx, byte [r14 + 0x21]
mov dword [rsp + 0xd8], edi
mov dword [rsp + 0xb8], eax
cmp dl, 0x56
je 0x1401d957f
cmp dl, 0x5a
je 0x1401d94ea
mov dword [rsp + 0x174], 2
mov eax, dword [rbx + 0x38]
sub edx, 0x56
mov dword [rsp + 0x50], 0
lea edi, [rax + 1]
add eax, r12d
and edx, 0xfd
lea ecx, [rax + 1]
mov dword [rsp + 0xa8], ecx
lea ecx, [rax + 2]
mov dword [rsp + 0x90], ecx
mov dword [rbx + 0x38], ecx
mov dword [rsp + 0x178], ecx
jne 0x1401d7afc
add eax, 3
mov dword [rsp + 0x50], eax
mov dword [rbx + 0x38], eax
movzx eax, byte [r14 + 0x22]
mov dword [rsp + 0x60], 0
sub eax, 0x56
test al, 0xfd
jne 0x1401d7b1d
mov eax, dword [rbx + 0x38]
add eax, 1
mov dword [rsp + 0x60], eax
mov dword [rbx + 0x38], eax
cmp byte [r14 + 0x20], 0x4c
je 0x1401d94c7
mov rax, qword [rsp + 0xa0]
xor edx, edx
test rax, rax
je 0x1401d7b39
mov edx, dword [rax]
mov ecx, dword [r14 + 0x78]
mov rax, qword [r14 + 0x10]
add ecx, edi
test rax, rax
mov dword [rsp + 0xc8], ecx
je 0x1401d7b5a
mov eax, dword [rax]
add ecx, eax
mov dword [rsp + 0xc8], ecx
mov ecx, dword [rbx + 0x38]
lea eax, [rcx + rdx]
lea r8d, [rax + 1]
add eax, edx
mov dword [rsp + 0x180], r8d
lea r8d, [rax + 1]
add eax, edx
add edx, eax
add ecx, 1
mov dword [rsp + 0x188], r8d
mov dword [rbx + 0x38], edx
lea r8d, [rax + 1]
setne dl
cmp qword [rsp + 0xa0], 0
mov dword [rsp + 0x190], r8d
mov dword [rsp + 0xbc], ecx
setne al
and edx, eax
mov byte [rsp + 0xd0], dl
xor ebp, ebp
test r12d, r12d
jle 0x1401d7bfa
mov qword [rsp + 0x200], rbx
mov ebx, ebp
mov ebp, dword [rsp + 0xb0]
nop word [rax + rax]
lea eax, [rdi + rbx]
mov r9d, ebx
mov r8d, ebp
mov dword [rsp + 0x20], eax
mov edx, 0x5e
mov rcx, rsi
add ebx, 1
call fcn.140177290
cmp r12d, ebx
jne 0x1401d7bd0
mov rbx, qword [rsp + 0x200]
mov eax, dword [rsp + 0xa8]
mov r9d, r12d
mov r8d, edi
mov rcx, rsi
mov edx, 0x61
mov dword [rsp + 0x20], eax
call fcn.140177290
mov rdx, qword [r14 + 0x10]
test rdx, rdx
je 0x1401d928d
add edi, dword [r14 + 0x78]
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
mov r12d, dword [rdx]
call fcn.140184cb0
mov r9d, dword [r14 + 0x6c]
mov ebp, edi
mov rdi, rax
mov eax, dword [rbx + 0x38]
movd xmm0, ebp
movd xmm4, r9d
punpckldq xmm0, xmm4
add eax, 1
mov dword [rsp + 0xb0], eax
mov dword [rbx + 0x38], eax
mov eax, dword [rsi + 0x90]
cmp eax, dword [rsi + 0x94]
jge 0x1401da779
lea edx, [rax + 1]
mov dword [rsi + 0x90], edx
movsxd rdx, eax
lea rcx, [rdx + rdx*2]
mov rdx, qword [rsi + 0x88]
lea rdx, [rdx + rcx*8]
movq qword [rdx + 4], xmm0
mov dword [rdx + 0xc], r12d
mov qword [rdx + 0x10], 0
mov dword [rdx], 0x5a
mov rdx, qword [rsi]
cmp byte [rdx + 0x67], 0
jne 0x1401da477
movsxd rdx, dword [rsi + 0x90]
lea rcx, [rdx + rdx*2]
mov rdx, qword [rsi + 0x88]
lea rdx, [rdx + rcx*8 - 0x18]
mov byte [rdx + 1], 0xf8
mov qword [rdx + 0x10], rdi
lea r8d, [rax + 2]
mov edx, 0xe
mov rcx, rsi
mov dword [rsp + 0x20], r8d
lea r9d, [rax + 4]
call fcn.140177290
mov eax, dword [rsi + 0x90]
cmp eax, dword [rsi + 0x94]
mov dword [rsp + 0xd4], eax
jge 0x1401da5ec
mov edi, dword [rsp + 0xd4]
lea eax, [rdi + 1]
mov dword [rsi + 0x90], eax
movsxd rax, edi
mov edi, dword [rsp + 0xb0]
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], edi
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0xa
mov r9d, dword [r14 + 0x6c]
sub r12d, 1
mov r8d, ebp
mov edx, 0x50
mov dword [rsp + 0x20], r12d
mov rcx, rsi
call fcn.140177290
mov edi, dword [rsp + 0x90]
mov edx, 0x7f
mov rcx, rsi
mov dword [rsp + 0x20], 0
mov ebp, dword [rsp + 0xac]
mov r9d, edi
mov r8d, ebp
call fcn.140177290
mov r8d, ebp
mov dword [rsp + 0x20], edi
mov rcx, rsi
mov r9d, dword [rsp + 0xa8]
mov edx, pe_nt_image_headers64
call fcn.140177290
mov eax, dword [rsi + 0x90]
cmp eax, dword [rsi + 0x94]
mov r8d, dword [r14 + 0x80]
mov dword [rsp + 0xa8], eax
jge 0x1401da1b2
mov edi, dword [rsp + 0xa8]
lea eax, [rdi + 1]
mov dword [rsi + 0x90], eax
movsxd rax, edi
mov edi, dword [rsp + 0x90]
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], r8d
mov dword [rax + 8], 0
mov dword [rax + 0xc], edi
mov qword [rax + 0x10], 0
mov dword [rax], 0x34
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x1401d9251
xor r12d, r12d
mov qword [rsp + 0x90], rsi
mov rbp, r14
mov esi, r12d
mov r12, rbx
mov rbx, rcx
mov r9d, dword [rbp + 0x5c]
xor r8d, r8d
mov edx, 0x4b
mov rcx, rbx
mov rdi, qword [rbp + 0x50]
mov dword [rsp + 0x20], 0
call fcn.140177290
mov rax, qword [rbp + 0x70]
mov rdx, qword [rax + 0x20]
xor eax, eax
test rdx, rdx
je 0x1401d7e61
mov eax, dword [rdx]
mov r9d, dword [r14 + 0x84]
cmp esi, eax
cmovl esi, eax
test r9d, r9d
jne 0x1401d7eb0
mov rax, qword [rdi + 0x38]
lea rdx, str.nth_value
cmp rax, rdx
je 0x1401d84b8
lea rdx, str.first_value
cmp rax, rdx
je 0x1401d84b8
test byte [rdi + 5], 0x10
je 0x1401d7eb0
mov r8d, dword [rbp + 0x64]
test r8d, r8d
jne 0x1401d90c0
nop dword [rax]
mov rbp, qword [rbp + 0x40]
test rbp, rbp
jne 0x1401d7e30
mov rbx, r12
mov r8d, dword [rsp + 0x50]
mov r12d, esi
mov eax, dword [rbx + 0x38]
mov rsi, qword [rsp + 0x90]
add r12d, eax
add eax, 1
test r8d, r8d
mov dword [rbx + 0x38], r12d
mov dword [rsp + 0x170], eax
je 0x1401d7f16
cmp qword [rbx + 0x10], 0
je 0x1401d7efc
mov rdx, qword [r14 + 0x28]
mov rcx, rbx
call fcn.1401dd5a0
xor eax, eax
cmp byte [r14 + 0x20], 0x59
mov rcx, rbx
mov edx, dword [rsp + 0x50]
sete al
lea r8d, [rax + rax*2]
call fcn.140179dd0
mov r8d, dword [rsp + 0x60]
test r8d, r8d
je 0x1401d7f4e
cmp qword [rbx + 0x10], 0
je 0x1401d7f33
mov rdx, qword [r14 + 0x30]
mov rcx, rbx
call fcn.1401dd5a0
xor eax, eax
cmp byte [r14 + 0x20], 0x59
mov rcx, rbx
mov edx, dword [rsp + 0x60]
sete al
lea r8d, [rax + rax*2 + 1]
call fcn.140179dd0
cmp byte [r14 + 0x20], 0x59
lea rdi, [rsp + 0x150]
movzx eax, byte [r14 + 0x21]
je 0x1401d7f76
cmp byte [r14 + 0x22], al
jne 0x1401d7f76
mov r8d, dword [rsp + 0x50]
test r8d, r8d
jne 0x1401da645
cmp al, 0x56
je 0x1401d95b8
cmp al, 0x5a
jne 0x1401d921d
mov r8d, dword [rsp + 0x80]
xor r9d, r9d
mov edx, 0x24
mov rcx, rsi
mov dword [rsp + 0x20], 0
call fcn.140177290
xor r9d, r9d
mov edx, 0x24
mov rcx, rsi
mov r8d, dword [rsp + 0xb8]
mov dword [rsp + 0x20], 0
call fcn.140177290
cmp byte [rsp + 0xd0], 0
jne 0x1401d95f5
mov r9d, dword [rsp + 0xb4]
xor r8d, r8d
mov edx, 9
mov rcx, rsi
mov dword [rsp + 0x20], 0
call fcn.140177290
mov rcx, qword [rsi]
lea rax, [0x14041e460]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1401d8021
movsxd rax, dword [rsp + 0xa8]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov eax, dword [rsp + 0xbc]
test eax, eax
jne 0x1401d96e2
cmp byte [r14 + 0x21], 0x56
je 0x1401da067
cmp byte [r14 + 0x22], 0x58
je 0x1401d9781
xor r9d, r9d
xor r8d, r8d
mov edx, 3
mov rcx, rdi
call fcn.1401e4880
cmp byte [r14 + 0x22], 0x5a
je 0x1401d944f
cmp byte [r14 + 0x20], 0x59
je 0x1401da7dd
mov r11d, dword [rsp + 0x60]
test r11d, r11d
jne 0x1401d93b6
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, rdi
call fcn.1401e4880
mov r8d, dword [rsp + 0x50]
mov rcx, rdi
xor r9d, r9d
mov edx, 2
call fcn.1401e4880
mov rcx, qword [rsi + 0x18]
mov r8d, dword [rsp + 0x88]
mov eax, dword [rcx + 0x44]
neg r8d
add eax, dword [rcx + 0x48]
js 0x1401d9971
mov edx, dword [rsi + 0x90]
movsxd r8, r8d
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
mov rcx, qword [rsp + 0x68]
call fcn.1401d5a00
cmp qword [r14 + 0x10], 0
je 0x1401d926f
mov r13d, dword [rsi + 0x90]
mov eax, dword [rsi + 0x94]
cmp r13d, eax
jge 0x1401da745
lea ebp, [r13 + 1]
movsxd rdx, r13d
lea rcx, [rdx + rdx*2]
mov rdx, qword [rsi + 0x88]
mov dword [rsi + 0x90], ebp
lea rdx, [rdx + rcx*8]
mov ecx, dword [rsp + 0xb0]
mov dword [rdx + 0xc], 0
mov qword [rdx + 0x10], 0
mov qword [rdx], 0x47
mov dword [rdx + 8], ecx
mov rcx, qword [rsi]
lea rdx, [0x14041e460]
cmp byte [rcx + 0x67], 0
jne 0x1401d8162
movsxd rdx, dword [rsp + 0xd4]
lea rcx, [rdx + rdx*2]
mov rdx, qword [rsi + 0x88]
lea rdx, [rdx + rcx*8]
mov dword [rdx + 8], ebp
mov dword [rsp + 0x178], 0
cmp ebp, eax
jge 0x1401da180
lea eax, [rbp + 1]
mov dword [rsi + 0x90], eax
movsxd rax, ebp
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov edx, dword [rsp + 0xac]
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x24
mov dword [rax + 4], edx
cmp byte [r14 + 0x22], 0x58
je 0x1401da09d
xor r9d, r9d
xor r8d, r8d
cmp byte [r14 + 0x21], 0x56
mov edx, 3
mov rcx, rdi
je 0x1401d9867
call fcn.1401e4880
xor r8d, r8d
mov edx, 1
mov rcx, rdi
mov r9d, 1
mov r12d, dword [rsi + 0x90]
call fcn.1401e4880
mov r8d, dword [rsp + 0x50]
xor r9d, r9d
mov rcx, rdi
mov edx, 2
mov dword [rsp + 0x60], eax
call fcn.1401e4880
xor r8d, r8d
mov edx, 9
mov r9d, r12d
mov dword [rsp + 0x20], 0
mov rcx, rsi
call fcn.140177290
mov rdx, qword [rsi]
mov eax, dword [rsi + 0x90]
cmp byte [rdx + 0x67], 0
jne 0x1401d93a4
movsxd rcx, dword [rsp + 0x60]
mov rdx, qword [rsi + 0x88]
lea rcx, [rcx + rcx*2]
mov dword [rdx + rcx*8 + 8], eax
movsxd rbp, ebp
lea rcx, [rbp + rbp*2]
lea rdx, [rdx + rcx*8]
mov r8d, dword [rsp + 0x80]
mov dword [rdx + 8], eax
xor r9d, r9d
mov edx, 0x92
mov dword [rsp + 0x20], 0
mov rcx, rsi
call fcn.140177290
cmp qword [r14 + 0x10], 0
je 0x1401d82e5
mov r9d, dword [r14 + 0x84]
test r9d, r9d
jne 0x1401d997e
mov rcx, qword [rsi]
lea rax, [0x14041e460]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1401d82c2
movsxd rax, r13d
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov r8d, dword [rsp + 0xb0]
mov dword [rax + 4], edx
xor r9d, r9d
mov edx, 0x43
mov dword [rsp + 0x20], 0
mov rcx, rsi
call fcn.140177290
mov rsi, qword [rsp + 0x48]
xor r8d, r8d
mov dword [rsp + 0x20], 0
mov edx, 9
mov r9d, dword [rsp + 0x78]
mov rcx, rsi
call fcn.140177290
mov rcx, qword [rsi + 0x18]
mov r8d, dword [rsp + 0xc4]
mov eax, dword [rcx + 0x44]
neg r8d
add eax, dword [rcx + 0x48]
js 0x1401d97f5
mov rax, qword [rsp + 0x48]
movsxd r8, r8d
mov edx, dword [rax + 0x90]
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
mov eax, dword [rsp + 0x78]
mov r8d, 0xffffffff
mov rcx, rbx
mov rdx, r15
mov esi, dword [rsp + 0xc0]
lea r9, [rsp + 0xf0]
mov dword [rsp + 0x110], 0
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x210]
mov dword [rsp + 0x30], esi
not esi
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xe4]
mov qword [rsp + 0x20], rax
call fcn.1401e5f00
mov rax, qword [rsp + 0x48]
movsxd r8, esi
mov rcx, qword [rax + 0x18]
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x1401d97e6
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 0x90]
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
mov rsi, qword [rsp + 0x48]
xor r9d, r9d
mov dword [rsp + 0x20], 0
mov edx, 0x43
mov r8d, dword [rsp + 0x98]
mov rcx, rsi
call fcn.140177290
mov rcx, qword [rsi + 0x18]
mov r8d, dword [rsp + 0x78]
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
not r8d
js 0x1401d97d7
mov rax, qword [rsp + 0x48]
movsxd r8, r8d
mov edx, dword [rax + 0x90]
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
mov qword [rsp + 0x50], 0
cmp byte [rsp + 0xe5], 3
je 0x1401d9387
cmp qword [rsp + 0xf0], 0
je 0x1401d8453
mov rax, qword [rsp + 0x58]
lea r8, [rsp + 0xf0]
mov rdx, r15
mov rcx, rbx
mov r9d, dword [rax]
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x20], rax
call fcn.14018deb0
mov rax, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x70]
mov rcx, qword [rax + 0x18]
neg r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x1401d9242
mov rax, qword [rsp + 0x48]
movsxd r8, r8d
mov edx, dword [rax + 0x90]
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
mov edx, dword [rbx + 0x30]
xor eax, eax
test edx, edx
setg al
cmp qword [rsp + 0x50], 0
je 0x1401d6890
mov rdx, qword [rsp + 0x50]
mov dword [rsp + 0x48], eax
mov rcx, qword [rsp + 0x40]
call fcn.14015e420
mov eax, dword [rsp + 0x48]
jmp 0x1401d6890
mov r9d, dword [rbp + 0x68]
xor r8d, r8d
mov rcx, rbx
mov edx, 0x47
mov dword [rsp + 0x20], 0
call fcn.140177290
mov eax, dword [rbp + 0x68]
xor r8d, r8d
mov edx, 0x47
mov dword [rsp + 0x20], 0
mov rcx, rbx
lea r9d, [rax + 1]
call fcn.140177290
jmp 0x1401d7e96
mov rax, qword [rsp + 0x200]
mov rcx, qword [rsp + 0x200]
mov r13d, dword [r12 + 0x90]
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x70], eax
add eax, 1
cmp r13d, dword [r12 + 0x94]
mov dword [rcx + 0x38], eax
mov dword [rdi + 0x3c], eax
jge 0x1401d94a0
lea r10d, [r13 + 1]
movsxd rax, r13d
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
mov dword [r12 + 0x90], r10d
lea rax, [rax + rdx*8]
mov qword [rax], 9
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
imul rax, r15, 0x68
mov dword [rdi + 0x38], r10d
lea rdx, [rsi + rax + 0x30]
movzx eax, byte [rdx + 0x18]
or eax, 0x10
test al, 8
mov byte [rdx + 0x18], al
je 0x1401d910b
mov eax, dword [rdi + 0x4c]
mov r9, rbx
mov edx, 1
mov dword [rsp + 0x70], r10d
mov rcx, qword [rsp + 0x200]
lea r8, str.MATERIALIZE___S
mov byte [rsp + 0x150], 0xc
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x158], 0
mov dword [rsp + 0x154], eax
mov dword [rsp + 0x160], 0
call fcn.14018db20
mov r8, qword [rsp + 0x58]
mov rdx, rbp
mov rcx, qword [rsp + 0x200]
call fcn.1401d6730
mov rax, qword [rdi + 0x28]
movzx edx, word [rbp + 2]
mov r10d, dword [rsp + 0x70]
mov word [rax + 0x3a], dx
mov r8d, dword [rdi + 0x3c]
mov edx, 0x43
mov rcx, r12
mov r9d, r10d
mov dword [rsp + 0x20], 0
call fcn.140177290
mov rcx, qword [r12]
lea rax, [0x14041e460]
mov edx, dword [r12 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1401d8647
movsxd rax, r13d
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov rax, qword [rsp + 0x200]
mov byte [rax + 0x1f], 0
mov dword [rax + 0x28], 0
imul rax, r15, 0x68
movzx eax, word [rsi + rax + 0x48]
and ax, 0x108
cmp ax, 0x100
jne 0x1401d6e28
mov rdx, qword [rdi + 0x38]
mov rax, qword [rdi + 0x68]
mov qword [rax + 4], rdx
mov edx, dword [rdi + 0x4c]
mov dword [rax + 0xc], edx
movzx edx, word [rbp + 2]
mov word [rax + 0x10], dx
jmp 0x1401d6e28
test ah, 0x80
jne 0x1401d6cd7
lea rax, [0x1401547a0]
movq xmm0, rbx
lea rdi, [0x14016c0a0]
movq xmm4, rax
mov rax, qword [rbx]
lea r8, [rsp + 0x120]
movq xmm6, rdi
punpcklqdq xmm6, xmm4
lea rdi, [rsp + 0x150]
mov r12, r8
add rax, 0x67
movq xmm5, rax
punpcklqdq xmm0, xmm5
movaps xmmword [rsp + 0x120], xmm0
jmp 0x1401d8705
mov r14d, dword [rsp + 0x134]
test r14d, r14d
je 0x1401d9280
mov rcx, qword [r15 + 0x30]
mov rdx, qword [r15 + 0x28]
mov eax, 1
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x140], 0
mov dword [rsp + 0x138], 0
test rdx, rdx
je 0x1401d874f
mov r8d, dword [rdx]
test r8d, r8d
jle 0x1401d874f
movzx eax, byte [rdx + 0x44]
and eax, 0x40
cmp al, 1
sbb eax, eax
and eax, 0xfffffffe
add eax, 3
mov rdx, rcx
mov rcx, r12
mov dword [rsp + 0x13c], eax
call fcn.140184330
mov eax, dword [rsp + 0x130]
test eax, eax
je 0x1401d86f0
mov rdx, qword [r15 + 0x30]
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x170], 0
movups xmmword [rsp + 0x158], xmm6
test rdx, rdx
mov qword [rsp + 0x178], r12
je 0x1401d87ad
mov rcx, rdi
call fcn.140163c70
mov rdx, qword [rsp + 0x140]
mov rax, qword [rsp + 0x120]
test rdx, rdx
mov rcx, qword [rax]
je 0x1401d86f0
call fcn.1401584a0
jmp 0x1401d86f0
mov r9d, dword [rsi]
lea r8d, [r14 + 1]
mov rdx, rbx
mov rcx, rsi
call fcn.140161940
mov r10d, 1
test rax, rax
jne 0x1401d6fe0
jmp 0x1401d6faa
mov rax, qword [rsi + 0x28]
mov r8, qword [rax]
jmp 0x1401d6c7d
mov rcx, qword [r15 + 0x20]
mov edx, dword [rcx]
lea rax, [rcx + 8]
test edx, edx
jle 0x1401d8857
sub edx, 1
shl rdx, 5
lea rdx, [rcx + rdx + 0x28]
mov r8, rdx
sub r8, rax
and r8d, 0x20
je 0x1401d8840
xor r8d, r8d
mov word [rax + 0x1a], r8w
lea rax, [rcx + 0x28]
cmp rax, rdx
je 0x1401d8857
nop dword [rax]
xor r12d, r12d
xor ecx, ecx
add rax, 0x40
mov word [rax - 0x26], r12w
mov word [rax - 6], cx
cmp rax, rdx
jne 0x1401d8840
mov edx, dword [r14]
lea rax, [r14 + 8]
test edx, edx
jle 0x1401d88a7
lea ecx, [rdx - 1]
shl rcx, 5
lea rcx, [r14 + rcx + 0x28]
mov r8, rcx
sub r8, rax
and r8d, 0x20
je 0x1401d8890
xor r9d, r9d
mov word [rax + 0x1a], r9w
lea rax, [r14 + 0x28]
cmp rax, rcx
je 0x1401d88a7
nop dword [rax + rax]
xor r11d, r11d
xor edi, edi
add rax, 0x40
mov word [rax - 0x26], r11w
mov word [rax - 6], di
cmp rax, rcx
jne 0x1401d8890
cmp word [r15 + 2], 0x42
jle 0x1401d88ba
mov r10d, 0x42
mov word [r15 + 2], r10w
cmp qword [rsp + 0x50], 0
je 0x1401d88cf
mov rax, qword [rsp + 0x50]
cmp dword [rax], edx
je 0x1401d9712
mov eax, dword [rbx + 0x44]
mov dword [rsp + 0x88], eax
mov dword [rsp + 0xa8], 0
sub eax, 1
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x68]
mov edx, 0x38
mov rcx, qword [rsp + 0x40]
mov dword [rbx + 0x44], eax
call fcn.140168520
test rax, rax
mov r12, rax
je 0x1401d8955
xor eax, eax
mov ecx, 7
mov rdi, r12
rep stosq qword [rdi], rax
mov rcx, qword [rbx]
test rcx, rcx
je 0x1401d9378
mov edx, 0x18
call fcn.140168520
test rax, rax
je 0x1401da502
mov rdx, qword [rbx + 0xc8]
lea rdi, [fcn.1401585f0]
mov qword [rax], rdx
mov qword [rbx + 0xc8], rax
mov qword [rax + 8], r12
mov qword [rax + 0x10], rdi
mov rax, qword [rsp + 0x40]
movzx eax, byte [rax + 0x67]
test al, al
mov byte [rsp + 0x80], al
jne 0x1401d6884
mov eax, dword [r15 + 0x10]
movq xmm0, rbx
movq xmm3, rsi
test r14, r14
punpcklqdq xmm0, xmm3
lea rdi, [rsp + 0x150]
mov dword [r12 + 0x34], eax
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
movaps xmmword [rsp + 0x150], xmm0
mov qword [rsp + 0x160], r12
je 0x1401d9823
mov eax, dword [r14]
mov rcx, rdi
mov qword [r12 + 0x10], r14
mov rdx, qword [rsp + 0x58]
mov word [r12 + 2], ax
call fcn.140163f20
mov rdx, qword [rsp + 0x50]
mov rcx, rdi
call fcn.140163f20
cmp qword [rsp + 0x78], 0
je 0x1401d8ad7
mov rdx, qword [r15 + 0x40]
lea rax, [0x14017e190]
mov qword [rsp + 0x130], 0
lea r8, [rsp + 0x120]
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x138], 0
mov qword [rsp + 0x140], 0
test rdx, rdx
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x148], r15
je 0x1401d8a6f
mov rcx, r8
mov qword [rsp + 0x50], r8
call fcn.140163c70
mov r8, qword [rsp + 0x50]
mov rax, qword [r15 + 0x30]
mov qword [rsp + 0x60], rax
lea rdx, [0x14018d350]
mov rcx, r8
mov dword [rsp + 0x140], 0
movq xmm0, rdx
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x148], rdi
lea rax, [0x14014ab00]
mov qword [rsp + 0x120], 0
movq xmm5, rax
lea rax, [0x14014ab10]
punpcklqdq xmm0, xmm5
movups xmmword [rsp + 0x128], xmm0
mov qword [rsp + 0x138], rax
call fcn.140163c70
mov qword [rsp + 0x50], 0
mov eax, dword [r12 + 0x20]
cmp qword [r15 + 0x38], 0
mov dword [r12 + 0x24], eax
je 0x1401d9804
mov rdx, rdi
mov rcx, r12
call fcn.140163fc0
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0x67], 0
jne 0x1401d946a
test r14, r14
mov edx, dword [r12 + 0x30]
je 0x1401da1f9
xor ecx, ecx
cmp edx, 1
mov word [rsp + 0xb8], cx
je 0x1401da54d
mov eax, dword [rbx + 0x34]
xor r8d, r8d
mov rcx, rbx
mov r9d, dword [r12 + 0x20]
lea edx, [rax + 1]
mov dword [rbx + 0x34], edx
mov rdx, r14
mov dword [r12 + 4], eax
call fcn.140184cb0
movzx r9d, word [r12 + 2]
mov edx, 0x77
mov r8d, dword [r12 + 4]
mov dword [rsp + 0x30], 0xfffffff8
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
mov qword [rsp + 0xc8], rax
call fcn.140177b30
xor r8d, r8d
mov dword [rsp + 0xd8], eax
mov eax, dword [rbx + 0x38]
lea edx, [rax + 1]
mov dword [rsp + 0xac], edx
lea edx, [rax + 3]
mov dword [rsp + 0xb0], edx
mov edx, dword [rbx + 0x44]
lea r10d, [rax + 2]
mov r9d, r10d
mov dword [rsp + 0xc4], r10d
lea r11d, [rdx - 1]
mov dword [rsp + 0xdc], edx
sub edx, 2
mov dword [rbx + 0x44], edx
mov dword [rsp + 0xd0], r11d
lea r11d, [rax + 4]
mov dword [rsp + 0xc0], edx
lea edx, [rax + 5]
mov eax, dword [r14]
mov dword [rsp + 0xbc], edx
mov dword [rsp + 0xb4], r11d
lea edx, [r11 + rax]
lea ecx, [rdx + 1]
add eax, edx
mov edx, 0x47
mov dword [rsp + 0x80], ecx
mov rcx, qword [rsp + 0x48]
mov dword [rbx + 0x38], eax
mov dword [rsp + 0x20], 0
call fcn.140177290
mov edx, dword [rsp + 0xbc]
xor r8d, r8d
mov eax, dword [r14]
mov rcx, qword [rsp + 0x48]
mov r9d, edx
add eax, edx
mov edx, 0x4b
sub eax, 1
mov dword [rsp + 0x20], eax
call fcn.140177290
mov rcx, qword [rsp + 0x48]
mov edx, 0xa
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0xc0]
mov r8d, dword [rsp + 0xb4]
call fcn.140177290
mov edx, 0x40
mov r9, r14
mov rcx, rbx
movzx eax, byte [rsp + 0xe4]
mov dword [rsp + 0x38], 0
mov r8, qword [rsp + 0x60]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rbp
cmp al, 2
mov byte [rsp + 0x90], al
mov eax, pe_nt_image_headers64
cmove edx, eax
movzx eax, word [rsp + 0xa8]
shl eax, 9
or eax, edx
or ax, word [rsp + 0xb8]
mov rdx, rsi
movzx eax, ax
mov dword [rsp + 0x30], eax
call fcn.1401d01a0
test rax, rax
mov qword [rsp + 0x98], rax
je 0x1401d9458
cmp qword [rbx + 0x60], 0
je 0x1401d8d3c
movsxd rcx, dword [r12 + 0x24]
cmp word [r12 + 2], 0
mov dword [r12 + 0x20], ecx
je 0x1401d8d31
mov rax, qword [r15 + 0x38]
mov edx, dword [rax]
sub edx, 1
test ecx, ecx
jle 0x1401d8d28
imul rcx, rcx, 0x18
mov rax, qword [r12 + 0x18]
add rax, 0x16
add rcx, rax
movsx r8d, word [rax]
cmp edx, r8d
cmovl edx, r8d
add rax, 0x18
cmp rax, rcx
jne 0x1401d8d14
add edx, 1
mov word [r12 + 2], dx
mov rdx, rdi
mov rcx, r12
call fcn.140163fc0
mov edx, dword [rbx + 0x38]
lea eax, [rdx + 1]
mov dword [r12 + 0xc], eax
mov eax, dword [r12 + 0x30]
add eax, dword [r12 + 0x20]
add eax, edx
xor edx, edx
mov dword [rbx + 0x38], eax
mov rax, qword [rsp + 0x98]
movzx esi, byte [rax + 0x43]
movsx eax, byte [rax + 0x41]
mov dword [rsp + 0xd4], esi
test al, al
cmovs eax, edx
cmp dword [r14], eax
je 0x1401da7c0
cmp byte [rsp + 0x90], 0
lea r9, str.GROUP_BY
je 0x1401d8d9e
test byte [r15 + 4], 1
lea rax, str.DISTINCT
cmove r9, rax
xor edx, edx
mov rcx, rbx
lea r8, str.USE_TEMP_B_TREE_FOR__s
call fcn.14018db20
movsxd rdx, dword [r12 + 0x20]
mov edi, dword [r14]
test edx, edx
jle 0x1401dada1
imul rdx, rdx, 0x18
mov rax, qword [r12 + 0x18]
mov esi, edi
add rax, 0x16
add rdx, rax
movsx ecx, word [rax]
cmp ecx, esi
setge cl
add rax, 0x18
movzx ecx, cl
add esi, ecx
cmp rax, rdx
jne 0x1401d8dd1
mov edx, esi
mov rcx, rbx
call fcn.140150b10
xor edx, edx
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, eax
mov rdx, r14
mov dword [rsp + 0x60], eax
call fcn.1401e33c0
xor eax, eax
cmp dword [r12 + 0x20], 0
mov byte [r12], 1
jle 0x1401d99d0
mov rcx, rbx
mov rbx, rax
jmp 0x1401d8e33
add rbx, 1
cmp dword [r12 + 0x20], ebx
jle 0x1401d99cd
mov rdx, qword [r12 + 0x18]
lea rax, [rbx + rbx*2]
lea rax, [rdx + rax*8]
movsx edx, word [rax + 0x16]
cmp edx, edi
jl 0x1401d8e24
cmp qword [rcx + 0x10], 0
je 0x1401d8e70
mov rdx, qword [rax + 8]
mov qword [rsp + 0x200], rcx
mov eax, dword [rsp + 0x60]
lea r8d, [rax + rdi]
call fcn.1401dd5a0
mov rcx, qword [rsp + 0x200]
add edi, 1
jmp 0x1401d8e24
mov edi, dword [rbx + 0x34]
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
mov rdx, qword [r15 + 0x20]
lea eax, [rdi + 1]
mov dword [rsp + 0xe8], edi
mov dword [rbx + 0x34], eax
call fcn.140184cb0
mov r8d, edi
mov rdi, qword [rsp + 0x48]
xor r9d, r9d
mov dword [rsp + 0x30], 0xfffffff8
mov edx, 0x76
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
mov rcx, rdi
call fcn.140177b30
mov dword [rsp + 0xec], eax
movsxd rax, dword [rdi + 0x90]
test eax, eax
jle 0x1401d8eee
mov rdx, qword [rdi + 0x88]
lea rax, [rax + rax*2]
mov ecx, 8
lea rax, [rdx + rax*8]
mov word [rax - 0x16], cx
mov eax, 3
jmp 0x1401d7523
test r14, r14
jne 0x1401d8805
xor r9d, r9d
mov word [r15 + 2], r9w
jmp 0x1401d88cf
mov qword [rsp + 0xf0], 0
mov edx, dword [rsp + 0x108]
test edx, edx
js 0x1401d7960
mov rcx, qword [rsp + 0x48]
call fcn.1401657e0
jmp 0x1401d7960
mov r12, qword [rsp + 0x58]
mov edx, 0x76
mov rax, qword [rsp + 0x210]
mov rcx, qword [rsp + 0x48]
mov r9d, dword [r12]
mov dword [rsp + 0x20], 0
mov r8d, dword [rax + 4]
call fcn.140177290
mov eax, dword [r15 + 4]
test ah, 8
mov edx, eax
je 0x1401d74a7
mov ecx, dword [r12]
mov rdx, r12
lea r8d, [rcx - 1]
test r8d, r8d
jle 0x1401d901f
movsxd r12, ecx
mov dword [rsp + 0x70], edi
mov edi, r8d
shl r12, 5
mov qword [rsp + 0x80], rsi
mov rsi, rdx
add r12, rdx
mov qword [rsp + 0x88], rbp
mov rbp, r12
mov r12, rbx
mov rbx, qword [rsp + 0x40]
jmp 0x1401d8fee
mov rdx, qword [rbp - 0x18]
test rdx, rdx
je 0x1401d8fd1
mov rcx, rbx
call fcn.14015e330
mov rdx, qword [rbp - 0x10]
test rdx, rdx
je 0x1401d8fe2
mov rcx, rbx
call fcn.1401584a0
sub dword [rsi], 1
sub rbp, 0x20
sub edi, 1
je 0x1401d8ffc
movsxd rax, edi
shl rax, 5
test byte [rsi + rax + 0x1c], 0x40
je 0x1401d8fc0
mov rcx, qword [rsp + 0x58]
mov rbx, r12
movsxd rdi, dword [rsp + 0x70]
mov rsi, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x88]
mov eax, dword [r15 + 4]
mov ecx, dword [rcx]
mov edx, eax
xor eax, eax
test ecx, ecx
mov r9, qword [rsp + 0x58]
movsxd r8, ecx
jle 0x1401d74a7
nop dword [rax + rax]
movsxd rcx, eax
shl rcx, 5
test byte [r9 + rcx + 0x1c], 0x40
jne 0x1401d9056
mov rcx, rax
shl rcx, 5
mov rcx, qword [r9 + rcx + 8]
mov byte [rcx], 0x79
add rax, 1
cmp rax, r8
jne 0x1401d9038
jmp 0x1401d74a7
mov rdx, qword [rsp + 0x58]
mov r8d, 0xffffffff
mov rcx, qword [rsp + 0x50]
call fcn.14018cd90
test eax, eax
jne 0x1401d7418
cmp qword [r15 + 0x70], 0
jne 0x1401d7418
and dword [r15 + 4], 0xfffffffe
xor r8d, r8d
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x40]
call fcn.14016be10
mov byte [rsp + 0xe4], 2
or dword [r15 + 4], 8
mov r14, rax
mov qword [r15 + 0x38], rax
jmp 0x1401d7418
xor r9d, r9d
mov rcx, rbx
mov edx, 0x92
mov dword [rsp + 0x20], 0
call fcn.140177290
mov eax, dword [rbp + 0x68]
xor r8d, r8d
mov edx, 0x47
mov dword [rsp + 0x20], 0
mov rcx, rbx
lea r9d, [rax + 1]
call fcn.140177290
jmp 0x1401d7eb0
mov ecx, 0x18
call fcn.140153820
jmp 0x1401d6beb
mov r11d, dword [r12 + 0x90]
cmp r11d, dword [r12 + 0x94]
jge 0x1401da618
lea eax, [r11 + 1]
mov dword [r12 + 0x90], eax
movsxd rax, r11d
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rdx*8]
mov qword [rax], 0xf
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov eax, dword [rdi + 0x4c]
mov r9, rbx
mov edx, 1
mov dword [rsp + 0x70], r11d
mov rcx, qword [rsp + 0x200]
lea r8, str.MATERIALIZE___S
mov dword [rsp + 0x88], r10d
mov byte [rsp + 0x150], 0xc
mov qword [rsp + 0x168], 0
mov dword [rsp + 0x154], eax
mov qword [rsp + 0x158], 0
mov dword [rsp + 0x160], 0
call fcn.14018db20
mov r8, qword [rsp + 0x58]
mov rdx, rbp
mov rcx, qword [rsp + 0x200]
call fcn.1401d6730
movsxd r11, dword [rsp + 0x70]
mov rax, qword [rdi + 0x28]
movzx edx, word [rbp + 2]
mov r10d, dword [rsp + 0x88]
test r11d, r11d
mov word [rax + 0x3a], dx
je 0x1401d85ff
mov rcx, qword [r12]
lea rax, [0x14041e460]
mov edx, dword [r12 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1401d9215
mov rax, qword [r12 + 0x88]
lea rcx, [r11 + r11*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
jmp 0x1401d85ff
mov r8d, dword [rsp + 0xd8]
xor r9d, r9d
mov edx, 0x24
mov rcx, rsi
mov dword [rsp + 0x20], 0
call fcn.140177290
jmp 0x1401d7f86
mov rdx, qword [rsp + 0x48]
call fcn.14017a070
jmp 0x1401d8486
cmp qword [rbx + 0xb0], 0
je 0x1401da512
mov rcx, rbx
call fcn.140177310
mov rcx, rax
jmp 0x1401d7e19
mov ebp, dword [rsi + 0x90]
mov eax, dword [rsi + 0x94]
jmp 0x1401d8165
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x60]
jmp 0x1401d6cd7
mov dword [rsp + 0xb0], 0
mov dword [rsp + 0xd4], 0
jmp 0x1401d7d62
cmp qword [rbx + 0xb0], 0
je 0x1401da537
mov rcx, rbx
call fcn.140177310
mov rsi, rax
mov eax, dword [rbx + 0x44]
mov dword [rsp + 0x88], eax
jmp 0x1401d79cc
mov rsi, qword [rsp + 0x68]
mov rcx, rbx
mov r8d, 0xffffffff
mov rdx, r15
lea r9, [rsp + 0xf0]
mov eax, dword [rsi + 0x34]
mov dword [rsp + 0x38], eax
mov eax, dword [rsi + 0x30]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xe4]
mov qword [rsp + 0x20], rax
call fcn.1401e5f00
mov rcx, rsi
call fcn.1401d5a00
jmp 0x1401d8409
mov dword [rsp + 0x20], 0
mov r9d, 2
mov edx, 0x76
mov rcx, r14
call fcn.140177290
mov rax, qword [r14]
cmp byte [rax + 0x67], 0
je 0x1401d7716
jmp 0x1401d7735
cmp qword [rbx + 0xb0], 0
je 0x1401da5d6
mov rcx, rbx
mov dword [rsp + 0x78], r9d
call fcn.140177310
mov r9d, dword [rsp + 0x78]
mov r14, rax
jmp 0x1401d758b
mov ecx, 0x18
call fcn.140153820
jmp 0x1401d892c
lea r9, str.DISTINCT
xor edx, edx
mov rcx, rbx
lea r8, str.USE_TEMP_B_TREE_FOR__s
call fcn.14018db20
jmp 0x1401d8420
mov dword [0x14041e468], eax
lea rdx, [0x14041e460]
jmp 0x1401d8260
mov ebp, dword [rsi + 0x90]
cmp ebp, dword [rsi + 0x94]
jge 0x1401dada8
lea eax, [rbp + 1]
mov ecx, dword [rsp + 0x60]
xor r10d, r10d
mov dword [rsi + 0x90], eax
movsxd rax, ebp
imul rax, rax, 0x18
add rax, qword [rsi + 0x88]
mov dword [rax + 4], ecx
mov ecx, 1
shl rcx, 0x20
mov qword [rax + 0x10], r10
mov qword [rax + 8], rcx
mov dword [rax], 0x3b
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, rdi
call fcn.1401e4880
mov r8d, dword [rsp + 0x50]
xor r9d, r9d
mov rcx, rdi
mov edx, 2
call fcn.1401e4880
mov rcx, qword [rsi]
lea rax, [0x14041e460]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1401d944c
movsxd rax, ebp
imul rax, rax, 0x18
add rax, qword [rsi + 0x88]
mov dword [rax + 8], edx
mov rcx, qword [rsi + 0x18]
jmp 0x1401d80ac
test rbp, rbp
je 0x1401d946a
mov rcx, qword [rsp + 0x40]
mov rdx, rbp
call fcn.14015e420
mov eax, 1
jmp 0x1401d8490
cmp qword [rax + 0x2f8], 0
jne 0x1401d7735
sub dword [rsi], 1
jne 0x1401d7735
mov rcx, qword [rsi + 0x10]
mov rdx, rsi
call fcn.140158fd0
jmp 0x1401d7735
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov edx, 9
mov rcx, r12
call fcn.1401771f0
lea r10d, [rax + 1]
mov r13d, eax
jmp 0x1401d8564
mov dword [rsp + 0xbc], 0
mov dword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
jmp 0x1401d7baf
mov r11d, dword [r14 + 0x84]
test r11d, r11d
jne 0x1401d954d
lea rdi, str.first_value
mov rcx, r14
lea r9, str.nth_value
lea r8, str.lead
lea r10, [0x1403b33e8]
jmp 0x1401d9529
cmp rdx, r10
je 0x1401d954d
mov rcx, qword [rcx + 0x40]
test rcx, rcx
je 0x1401da1d9
mov rax, qword [rcx + 0x50]
mov rdx, qword [rax + 0x38]
cmp rdx, rdi
sete al
cmp rdx, r9
sete r11b
or eax, r11d
cmp rdx, r8
sete r11b
or al, r11b
je 0x1401d9517
mov eax, dword [rbx + 0x38]
xor ebp, ebp
mov dword [rsp + 0x50], ebp
lea edi, [rax + 1]
add eax, r12d
lea edx, [rax + 1]
add eax, 2
mov dword [rsp + 0xa8], edx
mov dword [rsp + 0x90], eax
mov dword [rbx + 0x38], eax
mov dword [rsp + 0x178], eax
jmp 0x1401d7afc
cmp byte [r14 + 0x20], 0x59
jne 0x1401da4d9
mov eax, dword [rbx + 0x38]
lea edi, [rax + 1]
add eax, r12d
lea ecx, [rax + 1]
mov dword [rsp + 0xa8], ecx
lea ecx, [rax + 2]
mov dword [rsp + 0x90], ecx
mov dword [rsp + 0x178], ecx
jmp 0x1401d7af2
cmp byte [r14 + 0x20], 0x59
je 0x1401d921d
cmp dword [rsp + 0x60], 0
je 0x1401d921d
mov eax, dword [rsp + 0x50]
mov edx, 0x6b
mov rcx, rsi
mov r9d, dword [rsp + 0x60]
mov dword [rsp + 0x20], eax
mov r8d, eax
call fcn.140177290
movzx eax, byte [r14 + 0x21]
jmp 0x1401d7f7e
mov rbp, qword [rsp + 0xa0]
mov edx, 0x50
mov rcx, rsi
mov r12d, dword [rsp + 0xbc]
mov r8d, dword [rsp + 0xc8]
mov eax, dword [rbp]
mov r9d, r12d
mov dword [rsp + 0x90], eax
sub eax, 1
mov dword [rsp + 0x20], eax
call fcn.140177290
mov eax, dword [rbp]
mov r8d, r12d
mov edx, 0x50
mov r9d, dword [rsp + 0x180]
mov rcx, rsi
mov dword [rsp + 0x90], eax
sub eax, 1
mov dword [rsp + 0x20], eax
call fcn.140177290
mov eax, dword [rbp]
mov r8d, r12d
mov edx, 0x50
mov r9d, dword [rsp + 0x188]
mov rcx, rsi
mov dword [rsp + 0x90], eax
sub eax, 1
mov dword [rsp + 0x20], eax
call fcn.140177290
mov eax, dword [rbp]
mov r8d, r12d
mov edx, 0x50
mov r9d, dword [rsp + 0x190]
mov rcx, rsi
mov dword [rsp + 0x90], eax
sub eax, 1
mov dword [rsp + 0x20], eax
call fcn.140177290
xor r8d, r8d
mov edx, 9
mov rcx, rsi
mov r9d, dword [rsp + 0xb4]
mov dword [rsp + 0x20], 0
call fcn.140177290
mov rax, qword [rsi]
mov edx, dword [rsi + 0x90]
cmp byte [rax + 0x67], 0
je 0x1401d800a
mov dword [0x14041e468], edx
mov eax, dword [rsp + 0xb4]
mov rcx, rbx
mov r9d, dword [rsp + 0xbc]
mov r8d, dword [rsp + 0xc8]
mov rdx, qword [rsp + 0xa0]
mov dword [rsp + 0x20], eax
call fcn.140184d50
jmp 0x1401d8033
test edx, edx
jle 0x1401d9745
mov r8, qword [rsp + 0x50]
movsxd rcx, edx
mov eax, 0x18
shl rcx, 5
add rcx, 0x18
nop dword [rax + rax]
movzx edx, byte [r8 + rax]
and edx, 1
mov byte [r14 + rax], dl
add rax, 0x20
cmp rax, rcx
jne 0x1401d9730
mov rdx, qword [rsp + 0x50]
mov r8d, 0xffffffff
mov rcx, r14
call fcn.14018cd90
test eax, eax
mov eax, dword [rbx + 0x44]
mov dword [rsp + 0x88], eax
jne 0x1401d88d9
mov dword [rsp + 0xa8], 1
sub eax, 1
mov dword [rsp + 0x68], eax
jmp 0x1401d88eb
movzx ebp, word [r14 + 0x20]
xor r9d, r9d
mov edx, 3
mov rcx, rdi
mov r8d, dword [rsp + 0x60]
call fcn.1401e4880
xor r9d, r9d
cmp bp, 0x5859
jne 0x1401d8083
mov r8d, dword [rsp + 0x50]
mov edx, 2
mov rcx, rdi
call fcn.1401e4880
mov rcx, rdi
xor r9d, r9d
xor r8d, r8d
mov edx, 1
call fcn.1401e4880
mov rcx, qword [rsi + 0x18]
jmp 0x1401d80ac
mov rdx, qword [rsp + 0x48]
call fcn.14017a070
jmp 0x1401d8409
mov rdx, qword [rsp + 0x48]
call fcn.14017a070
jmp 0x1401d83b6
mov rdx, qword [rsp + 0x48]
call fcn.14017a070
jmp 0x1401d8338
mov rax, qword [r15 + 0x40]
test rax, rax
mov qword [rsp + 0x50], rax
je 0x1401da9f4
xor r8d, r8d
mov qword [rsp + 0x50], r8
jmp 0x1401d8af5
mov rdx, qword [rsp + 0x58]
xor eax, eax
mov rcx, rdi
mov qword [r12 + 0x10], 0
mov word [r12 + 2], ax
call fcn.140163f20
mov rdx, qword [rsp + 0x50]
mov rcx, rdi
call fcn.140163f20
cmp qword [rsp + 0x78], 0
je 0x1401d8ad7
lea r8, [rsp + 0x120]
jmp 0x1401d8a78
call fcn.1401e4880
cmp byte [r14 + 0x20], 0x59
mov r9d, 1
mov r12d, dword [rsi + 0x90]
je 0x1401da9aa
cmp byte [r14 + 0x22], 0x5a
je 0x1401da8ac
mov r8d, dword [rsp + 0x60]
mov edx, 1
mov rcx, rdi
call fcn.1401e4880
mov r8d, dword [rsp + 0x50]
mov edx, 2
mov rcx, rdi
mov r9d, 1
mov dword [rsp + 0x60], eax
call fcn.1401e4880
mov dword [rsp + 0x50], eax
mov r9d, r12d
xor r8d, r8d
mov edx, 9
mov dword [rsp + 0x20], 0
mov rcx, rsi
call fcn.140177290
mov rdx, qword [rsi]
lea rax, [0x14041e460]
mov r12d, dword [rsi + 0x90]
cmp byte [rdx + 0x67], 0
jne 0x1401d9903
movsxd rax, dword [rsp + 0x50]
imul rax, rax, 0x18
add rax, qword [rsi + 0x88]
xor r8d, r8d
mov rcx, rdi
mov dword [rax + 8], r12d
mov r9d, 1
mov edx, 1
call fcn.1401e4880
xor r8d, r8d
mov edx, 9
mov r9d, r12d
mov dword [rsp + 0x20], 0
mov rcx, rsi
mov edi, eax
call fcn.140177290
mov rdx, qword [rsi]
mov eax, dword [rsi + 0x90]
cmp byte [rdx + 0x67], 0
jne 0x1401d93a4
movsxd rcx, dword [rsp + 0x60]
mov rdx, qword [rsi + 0x88]
imul rcx, rcx, 0x18
mov dword [rdx + rcx + 8], eax
movsxd rcx, edi
imul rcx, rcx, 0x18
mov dword [rdx + rcx + 8], eax
jmp 0x1401d8254
mov rdx, rsi
call fcn.14017a070
jmp 0x1401d80d4
mov rcx, rsi
mov r8d, 1
mov edx, 0x47
mov dword [rsp + 0x20], 0
call fcn.140177290
xor r8d, r8d
mov edx, 0x47
mov rcx, rsi
mov r9d, dword [r14 + 0x88]
mov dword [rsp + 0x20], 0
call fcn.140177290
jmp 0x1401d829a
mov rcx, qword [rbx]
mov rdx, rdi
call fcn.14015e420
jmp 0x1401d6c14
mov rbx, rcx
mov byte [r12], 0
movzx eax, byte [rbx + 0x1f]
test al, al
je 0x1401daaae
sub eax, 1
mov byte [rbx + 0x1f], al
movzx eax, al
mov edi, dword [rbx + rax*4 + 0xe8]
mov r8d, dword [rsp + 0x60]
mov r9d, esi
mov edx, 0x61
mov dword [rsp + 0x20], edi
mov rcx, qword [rsp + 0x48]
call fcn.140177290
mov r8d, dword [r12 + 4]
xor eax, eax
mov r9d, edi
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], eax
mov edx, 0x8b
call fcn.140177290
test edi, edi
je 0x1401d9a42
movzx eax, byte [rbx + 0x1f]
cmp al, 7
ja 0x1401d9a42
lea edx, [rax + 1]
mov byte [rbx + 0x1f], dl
mov dword [rbx + rax*4 + 0xe8], edi
mov edx, dword [rsp + 0x60]
mov r8d, esi
mov rcx, rbx
call fcn.14015b860
mov rcx, qword [rsp + 0x98]
call fcn.1401d5a00
mov edi, dword [rbx + 0x34]
lea eax, [rdi + 1]
mov dword [rsp + 0x60], edi
mov dword [rbx + 0x34], eax
mov dword [r12 + 8], edi
movzx eax, byte [rbx + 0x1f]
test al, al
je 0x1401da9df
sub eax, 1
mov byte [rbx + 0x1f], al
movzx eax, al
mov eax, dword [rbx + rax*4 + 0xe8]
mov dword [rsp + 0xa0], eax
mov dword [rsp + 0x20], esi
mov rsi, qword [rsp + 0x48]
mov edx, 0x79
xor edi, edi
mov r9d, dword [rsp + 0xa0]
mov r8d, dword [rsp + 0x60]
mov rcx, rsi
call fcn.140177290
mov r8d, dword [r12 + 4]
mov edx, 0x22
mov rcx, rsi
mov r9d, dword [rsp + 0x68]
mov dword [rsp + 0x20], edi
call fcn.140177290
mov byte [r12 + 1], 1
mov dword [rsp + 0x90], 1
cmp qword [rbx + 0x60], 0
je 0x1401d9b42
lea r8, [rsp + 0x120]
xor eax, eax
mov ecx, 0xc
mov rdi, r8
xor esi, esi
rep stosd dword [rdi], eax
lea rax, [0x14014b8a0]
mov qword [rsp + 0x128], rax
cmp dword [r12 + 0x30], 0
jle 0x1401d9b42
mov rdi, r8
mov rax, rsi
shl rax, 5
add rax, qword [r12 + 0x28]
mov rdx, qword [rax]
test rdx, rdx
je 0x1401d9b37
mov rcx, rdi
call fcn.140163c70
add rsi, 1
cmp dword [r12 + 0x30], esi
jg 0x1401d9b1b
mov r10d, dword [rsp + 0xa8]
test r10d, r10d
je 0x1401da024
mov rax, qword [rsp + 0x40]
test byte [rax + 0x60], 4
jne 0x1401da024
cmp dword [rsp + 0x90], 0
jne 0x1401dae07
mov rax, qword [rsp + 0x98]
test byte [rax + 0x44], 8
jne 0x1401daddd
mov rax, qword [rsp + 0x48]
mov edi, dword [rax + 0x90]
mov eax, dword [r14]
test eax, eax
jle 0x1401d9beb
mov edx, dword [rsp + 0x90]
xor esi, esi
mov eax, dword [rsp + 0x80]
test edx, edx
mov r8d, eax
je 0x1401d9ff4
mov r9d, r13d
mov r13, rsi
mov rsi, rbx
mov ebx, eax
jmp 0x1401d9bc3
lea r8d, [rbx + r13]
mov r9d, r13d
mov dword [rsp + 0x20], r8d
mov rcx, qword [rsp + 0x48]
mov edx, 0x5e
add r13, 1
mov r8d, dword [rsp + 0x60]
call fcn.140177290
mov eax, dword [r14]
cmp eax, r13d
jg 0x1401d9bbc
mov rbx, rsi
mov rsi, qword [rsp + 0xc8]
test rsi, rsi
je 0x1401d9bfb
add dword [rsi], 1
mov r13, qword [rsp + 0x48]
mov edx, 0x5a
mov dword [rsp + 0x20], eax
mov rsi, qword [rsp + 0xc8]
mov r9d, dword [rsp + 0x80]
mov dword [rsp + 0x30], 0xfffffff8
mov r8d, dword [rsp + 0xbc]
mov rcx, r13
mov qword [rsp + 0x28], rsi
call fcn.140177b30
xor r9d, r9d
mov edx, 0xe
mov rcx, r13
mov esi, dword [r13 + 0x90]
lea r8d, [rsi + 1]
mov dword [rsp + 0x20], r8d
call fcn.140177290
mov eax, dword [r14]
mov edx, 0x4f
mov rcx, qword [rbx + 0x10]
mov r9d, dword [rsp + 0xbc]
mov r8d, dword [rsp + 0x80]
mov dword [rsp + 0x20], eax
call fcn.140177290
mov r9d, dword [rsp + 0xd0]
mov edx, 0xa
mov rcx, r13
mov r8d, dword [rsp + 0xb0]
mov dword [rsp + 0x20], 0
call fcn.140177290
mov r9d, dword [rsp + 0x68]
mov edx, 0x3b
mov rcx, r13
mov r8d, dword [rsp + 0xc4]
mov dword [rsp + 0x20], 0
call fcn.140177290
mov r9d, dword [rsp + 0xc0]
mov edx, 0xa
mov rcx, r13
mov r8d, dword [rsp + 0xb4]
mov dword [rsp + 0x20], 0
call fcn.140177290
mov rcx, qword [r13]
lea rax, [0x14041e460]
mov edx, dword [r13 + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1401d9d0d
movsxd rax, esi
imul rax, rax, 0x18
add rax, qword [r13 + 0x88]
mov esi, dword [rsp + 0xac]
mov dword [rax + 8], edx
mov r8, r12
mov rcx, rbx
mov r9d, dword [rsp + 0xd4]
mov edx, esi
call fcn.1401e4fd0
mov r9d, esi
mov rsi, qword [rsp + 0x48]
mov dword [rsp + 0x20], 0
mov r8d, 1
mov edx, 0x47
mov rcx, rsi
call fcn.140177290
mov eax, dword [rsp + 0x90]
test eax, eax
je 0x1401da4b6
mov r8d, dword [r12 + 4]
xor eax, eax
mov r9d, edi
mov edx, 0x25
mov dword [rsp + 0x20], eax
mov rcx, rsi
call fcn.140177290
test rbp, rbp
je 0x1401d9d8b
mov rcx, qword [rsp + 0x40]
mov rdx, rbp
call fcn.14015e420
mov rsi, qword [rsp + 0x48]
mov edx, 0xa
mov dword [rsp + 0x20], 0
mov r14d, dword [rsp + 0xb0]
mov r9d, dword [rsp + 0xd0]
mov rcx, rsi
mov r8d, r14d
call fcn.140177290
mov edx, dword [rsp + 0x68]
mov rcx, rsi
call fcn.140177ac0
mov r9d, dword [rsp + 0xc4]
mov r8d, 1
mov rcx, rsi
mov edi, dword [rsi + 0x90]
mov edx, 0x47
mov dword [rsp + 0x20], 0
call fcn.140177290
xor r9d, r9d
mov r8d, r14d
mov rcx, rsi
mov dword [rsp + 0x20], 0
mov edx, 0x43
call fcn.140177290
mov rcx, qword [rsi + 0x18]
mov r8d, dword [rsp + 0xdc]
mov eax, dword [rcx + 0x44]
neg r8d
add eax, dword [rcx + 0x48]
js 0x1401da89d
mov rax, qword [rsp + 0x48]
movsxd r8, r8d
mov edx, dword [rax + 0x90]
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
mov r14, qword [rsp + 0x48]
mov edx, 0x3b
mov r8d, dword [rsp + 0xac]
mov esi, dword [r14 + 0x90]
mov rcx, r14
mov dword [rsp + 0x20], 0
lea r9d, [rsi + 2]
add esi, 1
call fcn.140177290
xor r9d, r9d
mov edx, 0x43
mov rcx, r14
mov ebp, dword [rsp + 0xb0]
mov dword [rsp + 0x20], 0
mov r8d, ebp
call fcn.140177290
mov rdx, r12
mov rcx, rbx
call fcn.140179550
mov rdx, qword [rsp + 0x78]
mov r8d, esi
mov rcx, rbx
mov r9d, 0x10
call fcn.1401ce4b0
mov rdx, r15
mov rcx, rbx
mov dword [rsp + 0x38], edi
mov rax, qword [rsp + 0x210]
lea r9, [rsp + 0xf0]
mov r8d, 0xffffffff
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xe4]
mov qword [rsp + 0x20], rax
call fcn.1401e5f00
xor r9d, r9d
mov r8d, ebp
mov rcx, r14
mov dword [rsp + 0x20], 0
mov edx, 0x43
call fcn.140177290
mov rcx, qword [r14 + 0x18]
mov r8d, dword [rsp + 0xc0]
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
not r8d
js 0x1401da88e
mov rax, qword [rsp + 0x48]
movsxd r8, r8d
mov edx, dword [rax + 0x90]
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
mov rdx, r12
mov rcx, rbx
call fcn.14018dc20
mov rsi, qword [rsp + 0x48]
xor r8d, r8d
mov edx, 0x47
mov r9d, dword [rsp + 0xac]
mov dword [rsp + 0x20], 0
mov rcx, rsi
call fcn.140177290
xor r9d, r9d
mov edx, 0x43
mov rcx, rsi
mov r8d, dword [rsp + 0xb4]
mov dword [rsp + 0x20], 0
call fcn.140177290
cmp word [rsp + 0xb8], 0
je 0x1401d9fae
mov edx, dword [rsp + 0xd4]
test edx, edx
je 0x1401d9fae
mov rax, qword [r12 + 0x28]
mov rcx, rbx
mov r9d, dword [rax + 0x14]
mov r8d, dword [rax + 0x10]
call fcn.140165830
mov rax, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x88]
mov rcx, qword [rax + 0x18]
neg r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x1401da528
mov rax, qword [rsp + 0x48]
movsxd r8, r8d
mov edx, dword [rax + 0x90]
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
jmp 0x1401d8412
mov eax, dword [rsp + 0x80]
lea r8d, [rax + rsi]
mov byte [r12], 1
cmp qword [rbx + 0x10], 0
je 0x1401da014
mov rax, rsi
mov rcx, rbx
shl rax, 5
mov rdx, qword [r14 + rax + 8]
call fcn.1401dd5a0
mov eax, dword [r14]
add rsi, 1
cmp eax, esi
jg 0x1401d9fe9
jmp 0x1401d9beb
mov ecx, dword [rsp + 0x90]
mov rax, qword [rsp + 0x48]
test ecx, ecx
mov edi, dword [rax + 0x90]
je 0x1401d9b8d
mov eax, dword [rsp + 0x60]
mov edx, 0x85
mov r8d, dword [r12 + 4]
mov r9d, dword [rsp + 0xa0]
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], eax
call fcn.140177290
jmp 0x1401d9b8d
xor r9d, r9d
xor r8d, r8d
mov edx, 3
mov rcx, rdi
call fcn.1401e4880
cmp byte [r14 + 0x22], 0x5a
je 0x1401d944f
cmp byte [r14 + 0x20], 0x59
je 0x1401daabc
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
jmp 0x1401d8086
movzx r12d, word [r14 + 0x20]
xor r9d, r9d
mov edx, 3
mov rcx, rdi
mov r8d, dword [rsp + 0x60]
call fcn.1401e4880
cmp r12w, 0x5859
je 0x1401dab1a
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, rdi
call fcn.1401e4880
mov rcx, qword [rsi]
lea rdx, [0x14041e460]
mov eax, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1401d8260
mov rdx, qword [rsi + 0x88]
jmp 0x1401d8254
mov eax, dword [rbx + 0x38]
xor edi, edi
mov rcx, r14
mov r8d, 1
lea r9d, [rax + 1]
add eax, 2
mov dword [r12 + 0x84], r9d
mov dword [rbx + 0x38], eax
mov dword [r12 + 0x88], eax
mov eax, dword [rbx + 0x34]
lea edx, [rax + 1]
mov dword [rbx + 0x34], edx
mov edx, 0x47
mov dword [r12 + 0x64], eax
mov dword [rsp + 0x20], edi
call fcn.140177290
xor eax, eax
xor r8d, r8d
mov rcx, r14
mov r9d, dword [r12 + 0x88]
mov edx, 0x47
mov dword [rsp + 0x20], eax
call fcn.140177290
mov r9d, dword [r12 + 0x58]
xor eax, eax
mov rcx, r14
mov r8d, dword [r12 + 0x64]
mov edx, 0x73
mov dword [rsp + 0x20], eax
call fcn.140177290
jmp 0x1401d7890
xor r8d, r8d
xor r9d, r9d
mov edx, 0x24
mov dword [rsp + 0x20], r8d
mov r8d, dword [rsp + 0xac]
mov rcx, rsi
call fcn.1401771f0
mov ebp, eax
jmp 0x1401d81b3
mov edx, dword [rdx + 0x370]
jmp 0x1401d794c
mov eax, dword [rsp + 0x90]
xor r9d, r9d
mov edx, 0x34
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.1401771f0
mov dword [rsp + 0xa8], eax
jmp 0x1401d7e0c
cmp byte [r14 + 0x22], 0x58
movzx eax, byte [r14 + 0x20]
je 0x1401da793
mov dword [rsp + 0x174], 1
jmp 0x1401d954d
cmp qword [r15 + 0x30], 0
jne 0x1401dab34
mov rcx, qword [r15 + 0x20]
cmp dword [rcx], 1
jne 0x1401dab34
mov rax, qword [r15 + 0x28]
cmp dword [rax], 1
jne 0x1401dab34
cmp qword [rax + 0x30], 0
jne 0x1401dab34
cmp edx, 1
jne 0x1401dac16
mov rdi, qword [r15 + 0x40]
test rdi, rdi
jne 0x1401dad0f
mov rbp, qword [rax + 0x28]
cmp byte [rbp + 0x3f], 0
jne 0x1401dad0f
mov rcx, qword [rcx + 8]
cmp byte [rcx], 0xa8
jne 0x1401dad0f
cmp r12, qword [rcx + 0x38]
mov rax, qword [r12 + 0x28]
jne 0x1401dad14
mov r8, qword [rax + 8]
test byte [r8 + 5], 1
je 0x1401dad14
test dword [rcx + 4], 0x1000004
jne 0x1401dad14
mov rdx, qword [rbp + 0x60]
mov rcx, qword [rbx]
test rdx, rdx
je 0x1401dae5e
call fcn.140150c60
mov r14d, eax
mov rcx, qword [rbx + 0xb0]
mov edx, r14d
mov esi, dword [rbx + 0x34]
mov r13d, dword [rbp + 0x28]
test rcx, rcx
cmove rcx, rbx
lea eax, [rsi + 1]
mov dword [rbx + 0x34], eax
call fcn.1401cae20
mov rax, qword [rbp]
xor r9d, r9d
mov edx, r14d
mov r8d, dword [rbp + 0x28]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.14017a820
test byte [rbp + 0x30], 0x80
je 0x1401da8e1
mov rdi, qword [rbp + 0x10]
test rdi, rdi
mov rax, rdi
jne 0x1401da309
jmp 0x1401da8f8
mov rdi, qword [rdi + 0x28]
test rdi, rdi
je 0x1401da315
movzx edx, byte [rdi + 0x64]
and edx, 3
cmp dl, 2
jne 0x1401da300
mov rdx, qword [r15 + 0x28]
test byte [rdx + 0x48], 1
je 0x1401da45e
test rdi, rdi
je 0x1401da8f8
mov r9d, dword [rdi + 0x58]
mov rdx, rdi
mov rcx, rbx
mov dword [rsp + 0x60], r9d
call fcn.1401820c0
mov dword [rsp + 0x20], r14d
mov r14, qword [rsp + 0x48]
mov r8d, esi
mov r9d, dword [rsp + 0x60]
mov r13, rax
mov edx, 0x70
mov dword [rsp + 0x28], 1
mov rcx, r14
call fcn.140178290
test r13, r13
je 0x1401da383
mov r9d, 0xfffffff8
mov r8, r13
or edx, 0xffffffff
mov rcx, r14
call fcn.14016a840
mov ecx, dword [r12 + 0x20]
xor r10d, r10d
mov eax, dword [r12 + 0x30]
mov r8d, dword [rbx + 0x38]
mov r14, qword [rsp + 0x48]
add eax, ecx
lea edx, [r8 + 1]
add eax, r8d
mov r8d, esi
mov dword [r12 + 0xc], edx
lea r9d, [rcx + rdx]
mov edx, 0x62
mov rcx, r14
mov dword [rbx + 0x38], eax
mov dword [rsp + 0x20], r10d
call fcn.140177290
xor r11d, r11d
xor r9d, r9d
mov r8d, esi
mov dword [rsp + 0x20], r11d
mov edx, 0x7a
mov rcx, r14
call fcn.140177290
cmp byte [rbx + 0x133], 2
je 0x1401dad76
mov esi, dword [rsp + 0x68]
xor ecx, ecx
mov r9d, 0x10
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0xf0], rcx
mov rcx, rbx
mov r8d, esi
call fcn.1401ce4b0
xor r8d, r8d
mov dword [rsp + 0x38], esi
xor r9d, r9d
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x20], r8
mov rdx, r15
or r8d, 0xffffffff
mov dword [rsp + 0x30], esi
mov rcx, rbx
mov qword [rsp + 0x28], rax
call fcn.1401e5f00
jmp 0x1401d9fae
test rdi, rdi
je 0x1401da44e
cmp dx, word [rdi + 0x5c]
jge 0x1401da451
mov rdi, rax
mov rax, qword [rax + 0x28]
test rax, rax
je 0x1401da323
test byte [rax + 0x64], 4
jne 0x1401da451
movzx edx, word [rax + 0x5c]
cmp dx, word [rbp + 0x3c]
jge 0x1401da451
cmp qword [rax + 0x48], 0
jne 0x1401da451
jmp 0x1401da443
cmp qword [rdx + 0x2f8], 0
jne 0x1401d7cd0
test rdi, rdi
je 0x1401d7cd0
sub dword [rdi], 1
jne 0x1401d7cd0
mov rcx, qword [rdi + 0x10]
mov rdx, rdi
mov dword [rsp + 0xd4], eax
call fcn.140158fd0
mov eax, dword [rsp + 0xd4]
jmp 0x1401d7cd0
mov rcx, qword [rsp + 0x98]
call fcn.1401d5a00
mov edx, dword [rsp + 0xd8]
mov rcx, qword [rsp + 0x48]
call fcn.1401657e0
jmp 0x1401d9d79
mov rdx, qword [r14 + 0x28]
mov rcx, qword [rbx]
call fcn.140188c30
test eax, eax
je 0x1401da7b6
mov dword [rsp + 0x174], 1
movzx edx, byte [r14 + 0x21]
jmp 0x1401d7ab8
mov rcx, qword [rbx]
mov rdx, r12
call fcn.1401585f0
jmp 0x1401d8955
mov rax, qword [rbx]
test byte [rax + 0x60], 8
jne 0x1401d925f
mov byte [rbx + 0x23], 1
jmp 0x1401d925f
mov rdx, qword [rsp + 0x48]
call fcn.14017a070
jmp 0x1401d8412
mov rax, qword [rbx]
test byte [rax + 0x60], 8
jne 0x1401d92b6
mov byte [rbx + 0x23], 1
jmp 0x1401d92b6
mov rax, qword [r12 + 0x28]
cmp dword [rax + 0x10], 0
js 0x1401d8b30
mov rax, qword [rax]
test rax, rax
je 0x1401dad9a
test byte [rax + 5], 0x10
jne 0x1401d8b30
mov rbp, qword [rax + 0x20]
test rbp, rbp
je 0x1401d8b30
mov rbp, qword [rbp + 8]
test rbp, rbp
je 0x1401da59e
mov rcx, qword [rsp + 0x40]
mov rdx, rbp
xor r9d, r9d
xor r8d, r8d
call fcn.14016b9b0
mov rbp, rax
mov rcx, qword [rsp + 0x40]
xor r8d, r8d
mov rdx, r14
call fcn.14016be10
mov r8, rbp
mov rcx, rbx
mov rdx, rax
call fcn.140176790
mov rbp, rax
neg rax
sbb ax, ax
and ax, 0x500
mov word [rsp + 0xb8], ax
jmp 0x1401d8b30
mov rax, qword [rbx]
test byte [rax + 0x60], 8
jne 0x1401d935e
mov byte [rbx + 0x23], 1
jmp 0x1401d935e
mov r8d, dword [rsp + 0xb0]
xor r10d, r10d
xor r9d, r9d
mov edx, 0xa
mov dword [rsp + 0x20], r10d
mov rcx, rsi
call fcn.1401771f0
mov dword [rsp + 0xd4], eax
jmp 0x1401d7d45
mov dword [rsp + 0x70], r10d
xor r10d, r10d
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], r10d
mov edx, 0xf
mov rcx, r12
call fcn.1401771f0
mov r10d, dword [rsp + 0x70]
mov r11d, eax
jmp 0x1401d9157
xor edx, edx
cmp al, 0x56
mov ebp, dword [rsi + 0x90]
sete dl
cmp ebp, dword [rsi + 0x94]
lea edx, [rdx + rdx + 0x37]
jge 0x1401dad57
lea eax, [rbp + 1]
mov edi, dword [rsp + 0x50]
xor ecx, ecx
mov dword [rsi + 0x90], eax
movsxd rax, ebp
imul rax, rax, 0x18
add rax, qword [rsi + 0x88]
mov dword [rax + 4], edi
mov edi, dword [rsp + 0x60]
mov byte [rax], dl
xor edx, edx
mov word [rax + 2], 0
mov dword [rax + 8], edx
mov dword [rax + 0xc], edi
mov qword [rax + 0x10], rcx
mov byte [rax + 1], 0
xor r8d, r8d
mov rdx, r14
mov rcx, rbx
call fcn.1401773e0
xor eax, eax
xor r9d, r9d
mov edx, 0x24
mov r12d, dword [rsp + 0x80]
mov rcx, rsi
mov dword [rsp + 0x20], eax
lea rdi, [rsp + 0x150]
mov r8d, r12d
call fcn.140177290
mov rcx, rdi
call fcn.1401e3e30
xor eax, eax
xor r9d, r9d
mov r8d, r12d
mov edx, 0x92
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140177290
xor eax, eax
xor r8d, r8d
mov edx, 9
mov r9d, dword [rsp + 0xb4]
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140177290
mov rcx, qword [rsi]
lea rax, [0x14041e460]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x1401da738
movsxd rax, ebp
imul rax, rax, 0x18
add rax, qword [rsi + 0x88]
mov dword [rax + 8], edx
movzx eax, byte [r14 + 0x21]
jmp 0x1401d7f76
xor r9d, r9d
xor r8d, r8d
mov edx, 0x47
mov dword [rsp + 0x20], r9d
mov r9d, dword [rsp + 0xb0]
mov rcx, rsi
call fcn.1401771f0
mov ebp, dword [rsi + 0x90]
mov r13d, eax
mov eax, dword [rsi + 0x94]
jmp 0x1401d813b
mov dword [rsp + 0x20], r12d
mov r8d, ebp
mov edx, 0x5a
mov rcx, rsi
call fcn.1401771f0
jmp 0x1401d7ca4
cmp al, 0x59
je 0x1401d954d
mov rdx, qword [r14 + 0x30]
mov rcx, qword [rbx]
call fcn.140188c30
test eax, eax
je 0x1401da7b6
mov dword [rsp + 0x174], 3
movzx edx, byte [r14 + 0x21]
jmp 0x1401d7ab8
xor r11d, r11d
mov dword [rsp + 0xa0], r11d
mov dword [rsp + 0x60], r11d
mov dword [rsp + 0x90], r11d
jmp 0x1401d9ae4
cmp dword [rsp + 0x60], 0
mov r12d, dword [rsi + 0x90]
je 0x1401d8080
mov ebp, dword [rbx + 0x44]
mov edx, 0x39
mov rcx, rdi
mov r9d, dword [rsp + 0x60]
mov r8d, dword [rsp + 0x80]
lea eax, [rbp - 1]
mov dword [rbx + 0x44], eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x20], eax
call fcn.140184ec0
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, rdi
call fcn.1401e4880
mov r8d, dword [rsp + 0x50]
xor r9d, r9d
mov edx, 2
mov rcx, rdi
call fcn.1401e4880
xor eax, eax
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], eax
mov r9d, r12d
mov edx, 9
call fcn.140177290
mov rcx, qword [rsi + 0x18]
mov r8d, ebp
neg r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x1401dadcc
mov edx, dword [rsi + 0x90]
movsxd r8, r8d
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
jmp 0x1401d80ac
mov rdx, qword [rsp + 0x48]
call fcn.14017a070
jmp 0x1401d9f33
mov rdx, qword [rsp + 0x48]
call fcn.14017a070
jmp 0x1401d9e39
mov r8d, dword [rsp + 0x50]
mov edx, 1
mov rcx, rdi
call fcn.1401e4880
xor r8d, r8d
mov edx, 2
mov rcx, rdi
mov r9d, 1
mov dword [rsp + 0x60], eax
call fcn.1401e4880
mov dword [rsp + 0x50], eax
jmp 0x1401d98c1
mov rax, qword [r15 + 0x28]
test byte [rax + 0x48], 1
jne 0x1401da8f8
mov rax, qword [rbp + 0x10]
test rax, rax
jne 0x1401da45e
mov rdi, qword [rsp + 0x48]
mov r9d, r13d
mov r8d, esi
mov edx, 0x70
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], r14d
mov rcx, rdi
call fcn.140178290
mov ecx, dword [r12 + 0x20]
mov eax, dword [r12 + 0x30]
mov r8d, dword [rbx + 0x38]
add eax, ecx
lea edx, [r8 + 1]
add eax, r8d
mov r8d, esi
mov dword [r12 + 0xc], edx
lea r9d, [rcx + rdx]
mov edx, 0x62
mov rcx, rdi
mov dword [rbx + 0x38], eax
xor eax, eax
mov dword [rsp + 0x20], eax
call fcn.140177290
xor eax, eax
xor r9d, r9d
mov r8d, esi
mov dword [rsp + 0x20], eax
mov edx, 0x7a
mov rcx, rdi
call fcn.140177290
cmp byte [rbx + 0x133], 2
jne 0x1401da3eb
lea rax, [0x1403a3634]
mov rdx, rax
mov qword [rsp + 0x20], rdx
lea r8, str.SCAN__s_s_s
xor edx, edx
mov rcx, rbx
mov qword [rsp + 0x28], rax
mov r9, qword [rbp]
call fcn.14018db20
jmp 0x1401da3eb
mov r8d, dword [rsp + 0x50]
mov edx, 2
mov rcx, rdi
call fcn.1401e4880
xor r8d, r8d
mov edx, 1
mov rcx, rdi
mov r9d, 1
mov dword [rsp + 0x50], eax
call fcn.1401e4880
mov dword [rsp + 0x60], eax
jmp 0x1401d98c1
mov eax, dword [rbx + 0x38]
add eax, 1
mov dword [rsp + 0xa0], eax
mov dword [rbx + 0x38], eax
jmp 0x1401d9a93
cmp dword [r12 + 0x30], 1
jne 0x1401d8af5
mov rax, qword [r12 + 0x28]
mov rax, qword [rax]
mov r11, qword [rax + 0x20]
test r11, r11
je 0x1401d8af5
mov ecx, dword [r11]
mov dword [rsp + 0x90], ecx
sub ecx, 1
jne 0x1401d8af5
test byte [rax + 7], 1
jne 0x1401d8af5
mov rdx, qword [rsp + 0x40]
test byte [rdx + 0x62], 1
jne 0x1401d8af5
mov rcx, qword [rax + 8]
lea rdx, [0x1403a6f7f]
call fcn.140147dc0
test eax, eax
jne 0x1401dae73
mov rcx, qword [r11 + 8]
call fcn.14014ac90
test eax, eax
setne r9b
add r9d, r9d
mov rcx, qword [rsp + 0x40]
xor r8d, r8d
mov rdx, r11
mov byte [rsp + 0x80], r9b
call fcn.14016be10
test rax, rax
mov qword [rsp + 0x50], rax
je 0x1401daa9a
movzx r9d, byte [rsp + 0x80]
mov byte [rax + 0x18], r9b
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x80], al
jmp 0x1401d8af5
mov eax, dword [rbx + 0x38]
lea edi, [rax + 1]
mov dword [rbx + 0x38], edi
jmp 0x1401d99f1
mov ebp, dword [rbx + 0x44]
mov edx, 0x39
mov rcx, rdi
mov r12d, dword [rsi + 0x90]
mov r9d, dword [rsp + 0x60]
mov r8d, dword [rsp + 0x80]
lea eax, [rbp - 1]
mov dword [rbx + 0x44], eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x20], eax
call fcn.140184ec0
mov r8d, dword [rsp + 0x50]
xor r9d, r9d
mov rcx, rdi
mov edx, 2
call fcn.1401e4880
xor r9d, r9d
xor r8d, r8d
mov edx, 1
jmp 0x1401da841
mov r8d, dword [rsp + 0x50]
xor r9d, r9d
mov edx, 2
mov rcx, rdi
call fcn.1401e4880
jmp 0x1401da0c3
cmp dword [r12 + 0x24], 0
jne 0x1401dac22
cmp edx, 1
je 0x1401dae69
xor r13d, r13d
xor edi, edi
mov ecx, dword [rbx + 0x38]
xor ebp, ebp
lea eax, [rcx + 1]
mov dword [r12 + 0xc], eax
mov eax, dword [r12 + 0x20]
add eax, edx
mov rdx, r12
add eax, ecx
mov rcx, rbx
mov dword [rbx + 0x38], eax
call fcn.14018dc20
mov r9, qword [rsp + 0x50]
mov rdx, rsi
mov rcx, rbx
movzx eax, byte [rsp + 0x80]
mov dword [rsp + 0x38], ebp
mov r8, qword [rsp + 0x60]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r14
or eax, edi
movzx eax, ax
mov dword [rsp + 0x30], eax
call fcn.1401d01a0
test rax, rax
mov rsi, rax
je 0x1401d946a
movzx edi, byte [rax + 0x43]
mov r8, r12
mov edx, r13d
mov rcx, rbx
mov r9d, edi
call fcn.1401e4fd0
test edi, edi
je 0x1401dabe7
mov rax, qword [r12 + 0x28]
test rax, rax
je 0x1401dabe7
mov r9d, dword [rax + 0x14]
mov edx, edi
mov rcx, rbx
mov r8d, dword [rax + 0x10]
call fcn.140165830
test r13d, r13d
jne 0x1401dacec
cmp byte [rsp + 0x80], 0
jne 0x1401dac87
mov rcx, rsi
call fcn.1401d5a00
mov rdx, r12
mov rcx, rbx
call fcn.140179550
jmp 0x1401da3eb
cmp dword [r12 + 0x24], 0
je 0x1401dab49
test edx, edx
jle 0x1401dad46
mov rax, qword [r12 + 0x28]
xor ecx, ecx
mov r8, qword [rax]
test byte [r8 + 7], 1
jne 0x1401dac4a
mov r8, qword [rax + 8]
test byte [r8 + 4], 0x20
jne 0x1401dad48
add ecx, 1
add rax, 0x20
cmp ecx, edx
jne 0x1401dac31
mov eax, dword [rbx + 0x38]
mov edx, 0x47
xor r8d, r8d
xor edi, edi
mov rcx, qword [rsp + 0x48]
lea r13d, [rax + 1]
xor eax, eax
mov dword [rbx + 0x38], r13d
mov r9d, r13d
mov dword [rsp + 0x20], eax
call fcn.140177290
mov edx, dword [r12 + 0x30]
jmp 0x1401dab4e
test byte [rsi + 0x44], 4
je 0x1401dabfe
cmp byte [rsi + 0x41], 0
je 0x1401dabfe
movzx eax, byte [rsi + 0x40]
sub eax, 1
cdqe
jmp 0x1401dacc3
imul rcx, rax, 0x70
lea rdx, [rax - 1]
mov rcx, qword [rsi + rcx + 0x3c0]
test byte [rcx + 0x38], 4
jne 0x1401dae31
mov rax, rdx
cmp rax, 0xffffffffffffffff
jne 0x1401daca6
mov r9d, dword [rsi + 0x34]
xor r10d, r10d
xor r8d, r8d
mov edx, 9
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x20], r10d
call fcn.140177290
jmp 0x1401dabfe
mov rcx, qword [rsp + 0x48]
xor edi, edi
mov r9d, r13d
mov r8d, 1
mov dword [rsp + 0x20], edi
mov edx, 0x47
call fcn.140177290
jmp 0x1401dabf0
mov rax, qword [r12 + 0x28]
cmp dword [r12 + 0x24], 0
jne 0x1401dac2f
xor edi, edi
cmp dword [rax + 0x10], 0
js 0x1401dab4e
mov rax, qword [rax]
mov r14, qword [rax + 0x20]
mov rax, r14
neg rax
sbb di, di
and di, 0x500
jmp 0x1401dab4e
xor ecx, ecx
xor edi, edi
cmp ecx, edx
jne 0x1401dab4e
jmp 0x1401dac55
mov eax, dword [rsp + 0x60]
xor r9d, r9d
mov rcx, rsi
mov r8d, dword [rsp + 0x50]
mov dword [rsp + 0x20], eax
call fcn.1401771f0
mov ebp, eax
jmp 0x1401da69e
test byte [rbp + 0x30], 0x80
je 0x1401dad8b
movzx eax, byte [rdi + 0x64]
and eax, 3
cmp al, 2
je 0x1401da97c
mov rax, qword [rdi]
lea rdx, str._USING_COVERING_INDEX
jmp 0x1401da986
xor ebp, ebp
jmp 0x1401d8b30
mov esi, edi
jmp 0x1401d8de7
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov edx, 0x3b
mov rcx, rsi
mov dword [rsp + 0x20], 1
call fcn.1401771f0
mov ebp, eax
jmp 0x1401d9400
mov rdx, rsi
call fcn.14017a070
mov rcx, qword [rsi + 0x18]
jmp 0x1401d80ac
mov rsi, qword [rsp + 0x48]
xor r9d, r9d
mov edx, dword [rsp + 0x108]
mov qword [rsp + 0xf0], r9
mov rcx, rsi
call fcn.1401657e0
mov edi, dword [rsi + 0x90]
jmp 0x1401d9b8d
mov rsi, qword [rsp + 0x48]
xor r8d, r8d
mov edx, dword [rsp + 0x108]
mov qword [rsp + 0xf0], r8
mov rcx, rsi
call fcn.1401657e0
mov edi, dword [rsi + 0x90]
jmp 0x1401da03e
cdqe
xor r11d, r11d
mov rcx, qword [rsp + 0x48]
xor r8d, r8d
imul rax, rax, 0x70
mov dword [rsp + 0x20], r11d
mov edx, 9
mov r9d, dword [rsi + rax + 0x370]
call fcn.140177290
jmp 0x1401dabfe
mov r14d, 0xffff8000
jmp 0x1401da29d
mov rax, qword [r12 + 0x28]
jmp 0x1401dad20
lea rdx, [0x1403a6f83]
call fcn.140147dc0
test eax, eax
jne 0x1401d8af5
mov r9d, 1
mov dword [rsp + 0x90], 2
jmp 0x1401daa6b