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

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], r9
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x47]
sub rsp, 0xe0
mov rax, qword [rcx + 0x10]
mov rbx, r9
mov r13, qword [rcx]
mov r14, r8
xor r8d, r8d
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x50], r13
xorps xmm0, xmm0
mov qword [rbp - 0x51], r8
mov r12, rcx
movdqu xmmword [rbp - 0x39], xmm0
lea r9d, [r8 + 0x40]
test rbx, rbx
je 0x140066306
cmp dword [rbx], r9d
cmovge rbx, r8
mov qword [rbp + 0x67], rbx
mov al, byte [r13 + 0x5c]
mov ecx, 0xfeff
movzx r15d, word [rbp + 0x77]
and r15w, cx
mov qword [rbp - 0x49], rbx
and al, 0x10
mov eax, dword [rdx]
cmove r15w, word [rbp + 0x77]
mov word [rsp + 0x30], r15w
cmp eax, r9d
jle 0x140066348
mov r8d, r9d
lea rdx, str.at_most__d_tables_in_a_join
mov rcx, r12
call fcn.140007e0c
jmp 0x140066e21
mov ecx, 1
test r15b, 0x20
cmovne eax, ecx
mov rcx, r13
mov dword [rsp + 0x34], eax
imul eax, eax, 0x58
add eax, 0x39f
and eax, 0xfffffff8
movsxd rsi, eax
lea rdx, [rsi + 0x60]
call fcn.1400057f0
mov rdi, rax
mov qword [rbp - 0x61], rax
xor eax, eax
cmp byte [r13 + 0x61], al
je 0x14006639a
test rdi, rdi
je 0x140066e21
mov rdx, rdi
mov rcx, r13
call fcn.14000557c
jmp 0x140066e21
movsxd rcx, dword [rsp + 0x34]
xorps xmm0, xmm0
mov rax, qword [rbp + 0x57]
xor edx, edx
mov qword [rdi + 8], rax
mov rax, qword [rbp + 0x6f]
mov qword [rdi + 0x18], rax
mov qword [rdi], r12
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x20], r14
or dword [rdi + 0x30], 0xffffffff
or dword [rdi + 0x2c], 0xffffffff
mov byte [rdi + 0x42], cl
mov eax, dword [r12 + 0x44]
dec eax
mov dword [r12 + 0x44], eax
mov dword [rdi + 0x34], eax
mov dword [rdi + 0x38], eax
mov eax, dword [rbp + 0x7f]
mov word [rdi + 0x28], ax
mov word [rdi + 0x40], r15w
mov eax, dword [r12 + 0xac]
mov dword [rdi + 0x3c], eax
xor eax, eax
movups xmmword [rdi + 0x43], xmm0
imul r8, rcx, 0x58
movups xmmword [rdi + 0x53], xmm0
mov dword [rdi + 0x63], eax
lea rcx, [rdi + 0x398]
add r8, 0x60
mov byte [rdi + 0x67], al
call fcn.140076670
lea r8, [rdi + 0x68]
mov qword [rbp - 0x59], rdi
lea rcx, [rsi + rdi]
mov qword [rbp - 0x71], r8
lea rax, [rcx + 0x48]
mov qword [rbp - 0x41], rcx
mov qword [rcx + 0x38], rax
lea rdx, [rdi + 0x290]
xor eax, eax
mov qword [rbp - 0x79], rdx
mov word [rcx + 0x2c], ax
mov dword [rcx + 0x28], eax
mov qword [rbp - 0x51], r8
lea r9d, [rax + 3]
mov word [rcx + 0x30], r9w
mov rcx, r8
mov dword [rdx + 4], eax
mov rdx, r14
mov byte [r8 + 0x11], al
mov qword [r8 + 8], rax
mov dword [r8 + 0x14], eax
lea eax, [r9 + 5]
mov dword [r8 + 0x18], eax
lea rax, [r8 + 0x28]
mov qword [r8 + 0x20], rax
mov qword [r8], rdi
call fcn.140061794
xor r9d, r9d
mov r10d, 2
cmp dword [rsp + 0x34], r9d
jne 0x1400664c3
test rbx, rbx
je 0x14006649b
mov al, byte [rbx]
mov byte [rdi + 0x43], al
bt r15w, 8
mov r15d, 1
jae 0x1400664ad
mov byte [rdi + 0x47], r15b
lea r8, str.SCAN_CONSTANT_ROW
xor edx, edx
mov rcx, r12
call fcn.1400208c4
jmp 0x140066647
mov rbx, qword [rbp + 0x57]
mov edi, r9d
mov rdx, qword [rbp - 0x79]
mov r15d, 1
lea rsi, [rbx + 0x28]
movsxd rcx, dword [rdx + 4]
mov eax, dword [rsi + 0x24]
mov dword [rdx + rcx*4 + 8], eax
add dword [rdx + 4], r15d
test byte [rsi + 0x20], 4
je 0x14006662b
mov rax, qword [rsi + 0x40]
mov r13, qword [rsi]
mov qword [rbp - 0x69], rax
test rax, rax
je 0x14006662b
mov r14d, r9d
mov r8d, r9d
mov dword [rsp + 0x48], r9d
cmp dword [rax], r9d
jle 0x14006662b
add rax, 8
mov qword [rsp + 0x40], rax
movsx ecx, word [r13 + 0x46]
cmp r14d, ecx
jge 0x140066546
mov rdx, qword [r13 + 8]
movsxd rax, r14d
shl rax, 5
test byte [rax + rdx + 0x1b], r10b
jne 0x140066564
add r14d, r15d
cmp r14d, ecx
jl 0x140066530
mov r9d, r8d
lea rdx, str.too_many_arguments_on__s_____max__d
mov r8, qword [r13]
mov rcx, r12
call fcn.140007e0c
xor r9d, r9d
jmp 0x140066621
mov rcx, qword [r12]
xor r9d, r9d
xor r8d, r8d
mov edx, 0xa2
call fcn.14003150c
xor r9d, r9d
mov r15, rax
test rax, rax
je 0x14006661b
mov ecx, dword [rsi + 0x24]
mov rdx, qword [rsp + 0x40]
mov word [rax + 0x2c], r14w
inc r14d
mov dword [rax + 0x28], ecx
mov qword [rax + 0x40], r13
mov rdx, qword [rdx]
test rdx, rdx
je 0x1400665b4
mov rcx, qword [r12]
xor r8d, r8d
call fcn.140031c5c
jmp 0x1400665b7
mov rax, r9
xor r9d, r9d
mov r8, rax
mov edx, 0xa9
mov rcx, r12
call fcn.1400316c0
mov r9, rax
mov r8, r15
mov edx, 0x35
mov rcx, r12
call fcn.1400316c0
mov rcx, qword [rbp - 0x71]
mov r15d, 1
mov r8d, r15d
mov rdx, rax
call fcn.1400609e0
mov r8d, dword [rsp + 0x48]
lea r10d, [r15 + 1]
mov rax, qword [rbp - 0x69]
add r8d, r15d
add qword [rsp + 0x40], 0x28
mov dword [rsp + 0x48], r8d
cmp r8d, dword [rax]
jl 0x140066522
xor r9d, r9d
jmp 0x140066627
mov r15d, 1
mov r10d, 2
mov rdx, qword [rbp - 0x79]
add edi, r15d
add rsi, 0x70
cmp edi, dword [rbx]
jl 0x1400664d8
mov rdi, qword [rbp - 0x61]
mov rbx, qword [rbp + 0x67]
mov r13, qword [rsp + 0x50]
lea r14, [rdi + 0x68]
mov esi, dword [r14 + 0x14]
sub esi, r15d
js 0x14006666f
mov rbx, qword [rbp + 0x57]
mov r8d, esi
mov rdx, r14
mov rcx, rbx
call fcn.140060f1c
sub esi, r15d
jns 0x140066658
mov rbx, qword [rbp + 0x67]
xor ecx, ecx
cmp byte [r13 + 0x61], cl
jne 0x140066e0b
mov r15d, ecx
cmp dword [r14 + 0x14], ecx
jle 0x140066728
mov r13d, dword [rsp + 0x34]
lea ebx, [rcx + 1]
mov esi, ecx
mov r14, qword [r14 + 0x20]
test byte [rsi + r14 + 0x12], 2
jne 0x14006670a
cmp qword [rsi + r14 + 0x38], rcx
jne 0x14006670a
test r13d, r13d
je 0x1400666eb
mov rdx, qword [rsi + r14]
lea rax, [0x140066284]
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x21], rax
lea rax, [0x140032910]
movups xmmword [rbp - 0x19], xmm0
mov qword [rbp - 0x19], rax
movups xmmword [rbp - 9], xmm0
mov byte [rbp - 5], bl
test rdx, rdx
je 0x1400666eb
lea rcx, [rbp - 0x29]
call fcn.14002e72c
xor ecx, ecx
cmp byte [rbp - 5], cl
je 0x14006670a
mov r8d, dword [rdi + 0x38]
mov r9d, 0x10
mov rdx, qword [rsi + r14]
mov rcx, r12
call fcn.140036180
or word [rsi + r14 + 0x12], 4
xor ecx, ecx
add r15d, ebx
lea r14, [rdi + 0x68]
add rsi, 0x40
cmp r15d, dword [r14 + 0x14]
jl 0x140066692
mov rbx, qword [rbp + 0x67]
mov r13, qword [rsp + 0x50]
movzx r15d, word [rsp + 0x30]
mov ecx, 0x100
mov rsi, qword [rbp + 0x6f]
and r15w, cx
mov word [rbp + 0x67], r15w
je 0x140066778
mov rdx, qword [rbp + 0x57]
mov r9, rsi
mov r8, r14
mov rcx, r12
call fcn.140061e78
xor r15d, r15d
test eax, eax
je 0x140066764
lea ebx, [r15 + 1]
mov byte [rdi + 0x47], bl
jmp 0x14006677b
test rbx, rbx
jne 0x14006677b
mov eax, 0x80
mov qword [rdi + 0x10], rsi
or word [rdi + 0x40], ax
jmp 0x14006677b
xor r15d, r15d
mov ebx, dword [rsp + 0x34]
mov eax, 1
cmp ebx, eax
jne 0x140066795
lea rcx, [rbp - 0x59]
call fcn.1400660bc
test eax, eax
jne 0x1400667d9
lea rcx, [rbp - 0x59]
call fcn.140064fb8
test eax, eax
jne 0x140066e0b
xor edx, edx
mov rcx, rdi
call fcn.140065918
cmp byte [r13 + 0x61], r15b
jne 0x140066e0b
cmp qword [rdi + 0x10], r15
je 0x1400667df
movzx edx, word [rdi + 0x60]
mov rcx, rdi
inc dx
call fcn.140065918
cmp byte [r13 + 0x61], r15b
jne 0x140066e0b
cmp qword [rdi + 0x10], r15
jne 0x1400667ef
mov eax, dword [r13 + 0x30]
bt rax, 0xc
jae 0x1400667ef
or qword [rdi + 0x58], 0xffffffffffffffff
cmp dword [r12 + 0x30], r15d
jne 0x140066e0b
cmp byte [r13 + 0x61], r15b
jne 0x140066e0b
or qword [rsp + 0x48], 0xffffffffffffffff
mov r11d, 2
cmp byte [rdi + 0x42], r11b
jb 0x1400669aa
test rsi, rsi
je 0x1400669aa
mov eax, 0x100
test word [r13 + 0x5c], ax
jne 0x1400669aa
mov rdx, rsi
lea rsi, [rdi + 0x290]
mov rcx, rsi
call fcn.14006198c
mov rdx, qword [rbp - 0x49]
mov rbx, rax
mov qword [rsp + 0x40], rax
test rdx, rdx
je 0x140066866
mov rcx, rsi
call fcn.14006198c
or rbx, rax
mov qword [rsp + 0x40], rbx
movzx r8d, byte [rdi + 0x42]
mov eax, 1
lea ebx, [r8 - 1]
cmp ebx, eax
jl 0x1400669a0
mov r12, qword [rsp + 0x40]
lea r15, [rdi + 0x340]
movsxd rdx, r8d
lea r13, [rdi + 0x398]
imul rcx, r8, 0x58
lea rax, [rdx - 1]
imul r14, rax, 0x58
imul rax, rdx, 0x58
add r14, 0x3e0
add r15, rcx
add r14, rdi
add r13, rax
mov r10, qword [r14]
mov rsi, qword [rdi + 8]
movzx eax, byte [r10 + 0x10]
imul r11, rax, 0x70
test byte [r11 + rsi + 0x44], 8
je 0x140066982
xor eax, eax
cmp word [rbp + 0x67], ax
jne 0x1400668e4
test dword [r10 + 0x28], 0x1000
je 0x140066982
mov r9, qword [r10 + 8]
test r12, r9
jne 0x140066982
mov rax, qword [rbp - 0x51]
mov rcx, qword [rax + 0x20]
movsxd rdx, dword [rax + 0x14]
mov r8, rcx
shl rdx, 6
add rdx, rcx
cmp rcx, rdx
jae 0x140066934
test qword [r8 + 0x38], r9
je 0x140066926
mov rax, qword [r8]
test byte [rax + 4], 1
je 0x14006692f
movsx eax, word [rax + 0x30]
cmp eax, dword [r11 + rsi + 0x4c]
jne 0x14006692f
add r8, 0x40
cmp r8, rdx
jb 0x14006690c
cmp r8, rdx
jb 0x140066982
not r9
and qword [rsp + 0x48], r9
jmp 0x140066951
mov rax, qword [rcx + 0x38]
test qword [r10 + 8], rax
je 0x14006694d
or word [rcx + 0x12], 4
add rcx, 0x40
cmp rcx, rdx
jb 0x14006693e
movzx ecx, byte [rdi + 0x42]
lea eax, [rcx - 1]
cmp ebx, eax
je 0x140066979
sub ecx, ebx
mov rdx, r13
dec ecx
imul eax, ecx, 0x58
mov rcx, r15
movsxd r8, eax
call fcn.140077320
mov cl, byte [rdi + 0x42]
dec cl
dec dword [rsp + 0x34]
mov byte [rdi + 0x42], cl
dec ebx
sub r13, 0x58
sub r15, 0x58
sub r14, 0x58
cmp ebx, 1
jge 0x1400668b2
mov r12, qword [rbp + 0x4f]
xor r15d, r15d
mov ebx, dword [rsp + 0x34]
mov r11d, 2
mov rcx, qword [rdi]
movzx r13d, r15w
movsx eax, word [rdi + 0x60]
movzx r8d, word [rsp + 0x30]
mov r10, qword [rbp + 0x57]
add dword [rcx + 0xac], eax
test r8b, 4
je 0x140066a39
mov rdx, qword [rdi + 0x3e0]
mov r9d, 8
mov ecx, dword [rdx + 0x28]
bt ecx, 0xc
jb 0x1400669ff
mov r13d, r15d
test r9b, r8b
je 0x140066a39
mov rax, qword [r10 + 0x28]
cmp dword [rax + 0x54], r15d
jne 0x140066a39
bt ecx, 0xd
jae 0x1400669ff
test r8b, 0x10
je 0x140066a39
mov eax, ecx
movzx r13d, r15w
and eax, 0x1000
neg eax
sbb al, al
add al, r11b
mov r11d, 0x40
mov byte [rdi + 0x45], al
mov rax, qword [r10 + 0x28]
test byte [rax + 0x40], 0x20
jne 0x140066a3f
test r11b, cl
je 0x140066a3f
and ecx, 0xffffffbf
movzx r13d, r8w
mov dword [rdx + 0x28], ecx
and r13w, r9w
jmp 0x140066a3f
mov r11d, 0x40
test ebx, ebx
jle 0x140066d2e
mov eax, ebx
lea r9, [rdi + 0x3e0]
mov qword [rbp + 0x67], r9
mov ebx, 1
mov qword [rsp + 0x40], rax
movzx eax, byte [r9 - 0x1c]
mov r15d, 0xfff0bdc0
mov rdx, qword [rsp + 0x50]
imul r14, rax, 0x70
xor eax, eax
mov rsi, qword [r14 + r10 + 0x28]
mov rcx, qword [rsi + 0x70]
test rcx, rcx
je 0x140066a9b
mov r15d, eax
mov rax, qword [rdx + 0x20]
add rax, 0x18
jmp 0x140066a96
add r15d, ebx
lea rax, [rax + 0x20]
cmp qword [rax], rcx
jne 0x140066a8f
mov rbx, qword [r9]
mov eax, 2
xor ecx, ecx
mov qword [rbp + 0x4f], rbx
test byte [rsi + 0x40], al
jne 0x140066b19
cmp qword [rsi + 0x18], rcx
jne 0x140066b19
test dword [rbx + 0x28], 0x400
je 0x140066b64
mov rbx, qword [rsi + 0x60]
jmp 0x140066ad0
cmp qword [rbx], rdx
je 0x140066ad5
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140066ac7
mov r8d, dword [r14 + r10 + 0x4c]
xor r9d, r9d
mov dword [rsp + 0x20], ecx
mov edx, 0xa3
mov rcx, qword [rsp + 0x38]
call fcn.1400206a8
mov rcx, qword [rsp + 0x38]
mov r9d, 0xfffffff4
mov r8, rbx
mov edx, eax
call fcn.140020f98
mov r9, qword [rbp + 0x67]
xor ecx, ecx
movzx r8d, word [rsp + 0x30]
mov r10, qword [rbp + 0x57]
mov rbx, qword [rbp + 0x4f]
mov r11, qword [rsp + 0x38]
test dword [rbx + 0x28], 0x200
je 0x140066ceb
test byte [rsi + 0x40], 0x20
mov edx, 0x61
mov rbx, qword [rbx + 0x20]
lea esi, [rdx - 0x5f]
je 0x140066c25
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, sil
jne 0x140066c25
test r8b, 0x20
je 0x140066c25
mov r8d, dword [r9 - 0x44]
mov edx, ecx
jmp 0x140066c82
cmp dword [rsi + 0x54], ecx
jne 0x140066b19
test byte [rbx + 0x28], r11b
jne 0x140066b19
test r8b, 0x20
jne 0x140066b19
xor eax, eax
mov ecx, 0x61
cmp byte [rdi + 0x45], al
je 0x140066b8c
lea ecx, [rax + 0x62]
mov eax, dword [r14 + r10 + 0x4c]
mov dword [rdi + 0x2c], eax
mov edx, dword [r14 + r10 + 0x4c]
mov r9, rsi
mov dword [rsp + 0x20], ecx
mov r8d, r15d
mov rcx, r12
call fcn.140047e94
xor ecx, ecx
cmp byte [rdi + 0x45], cl
jne 0x140066beb
lea eax, [rcx + 0x40]
cmp word [rsi + 0x46], ax
jge 0x140066beb
test byte [rsi + 0x40], 0x20
jne 0x140066beb
mov rax, qword [rbp + 0x57]
mov rax, qword [r14 + rax + 0x60]
test rax, rax
je 0x140066bd3
lea r8d, [rcx + 1]
add ecx, r8d
shr rax, 1
jne 0x140066bcb
movsxd r8, ecx
mov r9d, 0xfffffffd
mov rcx, qword [rsp + 0x38]
or edx, 0xffffffff
call fcn.140020f98
xor ecx, ecx
mov r11, qword [rsp + 0x38]
mov r9, qword [rbp + 0x67]
movzx r8d, word [rsp + 0x30]
mov r10, qword [rbp + 0x57]
movsxd rax, dword [r11 + 0x90]
test eax, eax
jle 0x140066b1e
lea rcx, [rax + rax*2]
mov rax, qword [r11 + 0x88]
mov word [rax + rcx*8 - 0x16], r13w
xor ecx, ecx
jmp 0x140066b1e
cmp byte [rdi + 0x45], cl
je 0x140066c5d
mov rax, qword [r14 + r10 + 0x28]
mov r8d, dword [rbp + 0x7f]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140066c52
mov edx, 1
cmp rcx, rbx
je 0x140066c52
mov rcx, qword [rcx + 0x28]
add r8d, edx
test rcx, rcx
jne 0x140066c41
mov edx, 0x62
mov dword [rdi + 0x30], r8d
jmp 0x140066c82
mov eax, dword [rbp + 0x7f]
test eax, eax
je 0x140066c74
test r8b, 0x20
je 0x140066c74
mov r8d, eax
mov edx, 0x60
jmp 0x140066c82
mov r8d, dword [r12 + 0x34]
lea eax, [r8 + 1]
mov dword [r12 + 0x34], eax
mov dword [r9 - 0x40], r8d
test edx, edx
je 0x140066ceb
mov r9d, dword [rbx + 0x58]
mov rcx, r11
mov dword [rsp + 0x20], r15d
call fcn.1400206a8
mov rdx, rbx
mov rcx, r12
call fcn.140021058
mov rax, qword [rbp + 0x4f]
mov ebx, 1
test byte [rax + 0x28], 0xf
je 0x140066cf0
test dword [rax + 0x28], 0x88002
jne 0x140066cf0
test byte [rdi + 0x40], bl
jne 0x140066cf0
cmp byte [rdi + 0x47], sil
je 0x140066cf0
mov rdx, qword [rsp + 0x38]
movsxd rax, dword [rdx + 0x90]
test eax, eax
jle 0x140066cf0
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x88]
mov word [rax + rcx*8 - 0x16], si
jmp 0x140066cf0
mov ebx, 1
test r15d, r15d
js 0x140066d00
mov edx, r15d
mov rcx, r12
call fcn.1400414e8
mov r9, qword [rbp + 0x67]
mov r11d, 0x40
movzx r8d, word [rsp + 0x30]
add r9, 0x58
sub qword [rsp + 0x40], rbx
mov r10, qword [rbp + 0x57]
mov qword [rbp + 0x67], r9
jne 0x140066a5e
mov ebx, dword [rsp + 0x34]
xor r15d, r15d
mov rax, qword [rsp + 0x38]
mov r13, qword [rsp + 0x50]
mov eax, dword [rax + 0x90]
mov dword [rdi + 0x4c], eax
cmp byte [r13 + 0x61], r15b
jne 0x140066e0b
mov r14d, r15d
test ebx, ebx
jle 0x140066e06
movzx r15d, word [rsp + 0x30]
lea rsi, [rdi + 0x3c4]
mov rax, qword [rsi + 0x1c]
test dword [rax + 0x28], 0x4000
je 0x140066da4
movzx eax, byte [rsi]
lea rdx, [rsi - 0x2c]
mov r8, qword [rbp + 0x57]
mov r9, qword [rsp + 0x48]
add r8, 8
imul rcx, rax, 0x70
mov qword [rsp + 0x20], rdx
lea rdx, [rdi + 0x68]
add r8, rcx
mov rcx, r12
call fcn.140062170
xor eax, eax
cmp byte [r13 + 0x61], al
jne 0x140066e0b
mov rdx, qword [rbp + 0x57]
lea rbx, [rsi - 0x2c]
mov r8, rbx
movzx r9d, r15w
mov rcx, r12
call fcn.14005e674
mov rcx, qword [rsp + 0x38]
mov r9d, r14d
mov rdx, rcx
mov r8, rdi
mov eax, dword [rcx + 0x90]
mov rcx, r12
mov dword [rsi - 0xc], eax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
call fcn.14005f6f8
mov ecx, dword [rsi - 0x14]
inc r14d
add rsi, 0x58
mov qword [rsp + 0x48], rax
mov dword [rdi + 0x34], ecx
cmp r14d, dword [rsp + 0x34]
jl 0x140066d63
mov rax, rdi
jmp 0x140066e23
mov eax, dword [rdi + 0x3c]
mov rdx, rdi
mov rcx, r13
mov dword [r12 + 0xac], eax
call fcn.140062df8
xor eax, eax
mov rbx, qword [rsp + 0x130]
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret