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

Disassembly:
push rbp
push rsi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x18]
sub rsp, 0x118
mov rax, qword [0x1401c4de0]
xor rax, rsp
mov qword [rbp - 8], rax
mov rax, qword [rcx + 0x10]
mov r13, rcx
mov r12, qword [rbp + 0x70]
xor r14d, r14d
mov qword [rsp + 0x48], rcx
xorps xmm0, xmm0
mov rcx, qword [rcx]
mov rsi, r8
movzx r8d, word [rbp + 0x78]
mov r15, r9
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x58], rax
movdqu xmmword [rbp - 0x48], xmm0
test r9, r9
je 0x1400f3b69
cmp dword [r9], 0x40
cmovge r15, r14
mov qword [rsp + 0x38], r15
movzx r9d, r8w
mov qword [rbp - 0x58], r15
mov eax, dword [rcx + 0x5c]
mov r10d, 0xfeff
and r9w, r10w
test al, 0x10
mov eax, dword [rdx]
cmove r9w, r8w
mov word [rsp + 0x30], r9w
cmp eax, 0x40
jle 0x1400f3bae
mov r8d, 0x40
lea rdx, str.at_most__d_tables_in_a_join
mov rcx, r13
call fcn.1400b5ee0
xor eax, eax
jmp 0x1400f42db
and r9w, 0x20
mov qword [rsp + 0x110], rbx
mov edx, 1
mov qword [rsp + 0x108], rdi
cmovne eax, edx
mov word [rsp + 0x40], r9w
mov dword [rsp + 0x34], eax
mov word [rbp - 0x70], r9w
lea eax, [rax + rax*2]
shl eax, 5
add eax, 0x367
movsxd rbx, eax
and rbx, 0xfffffffffffffff8
lea rdx, [rbx + 0x60]
call fcn.1400b31d0
mov rcx, qword [rsp + 0x68]
mov rdi, rax
mov qword [rsp + 0x50], rax
cmp byte [rcx + 0x63], r14b
je 0x1400f3c7b
test rax, rax
je 0x1400f42c9
cmp qword [rcx + 0x2e0], r14
je 0x1400f3c27
mov rdx, rax
call fcn.140091d10
jmp 0x1400f42c9
cmp rdi, qword [rcx + 0x1d0]
jae 0x1400f3c6e
cmp rdi, qword [rcx + 0x1c0]
jb 0x1400f3c4f
mov rax, qword [rcx + 0x1b8]
mov qword [rdi], rax
mov qword [rcx + 0x1b8], rdi
jmp 0x1400f42c9
cmp rdi, qword [rcx + 0x1c8]
jb 0x1400f3c6e
mov rax, qword [rcx + 0x1a8]
mov qword [rdi], rax
mov qword [rcx + 0x1a8], rdi
jmp 0x1400f42c9
mov rcx, rdi
call fcn.14006abe0
jmp 0x1400f42c9
movsxd rdx, dword [rsp + 0x34]
lea rcx, [rdi + 0x360]
mov qword [rax], r13
xorps xmm0, xmm0
mov rax, qword [rsp + 0x60]
mov qword [rdi + 8], rax
mov rax, 0xffffffffffffffff
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x20], rsi
mov qword [rdi + 0x18], r12
mov qword [rdi + 0x28], rax
mov byte [rdi + 0x40], dl
mov qword [rsp + 0x78], rax
mov eax, dword [r13 + 0x44]
dec eax
mov dword [r13 + 0x44], eax
mov dword [rdi + 0x30], eax
mov dword [rdi + 0x34], eax
movzx eax, word [rsp + 0x30]
mov word [rdi + 0x3c], ax
mov eax, dword [rbp + 0x80]
mov word [rdi + 0x3e], ax
mov dword [rbp - 0x80], eax
mov eax, dword [r13 + 0xc0]
mov dword [rdi + 0x38], eax
xor eax, eax
movups xmmword [rdi + 0x41], xmm0
movups xmmword [rdi + 0x51], xmm0
mov qword [rdi + 0x61], rax
mov dword [rdi + 0x69], eax
mov word [rdi + 0x6d], ax
mov byte [rdi + 0x6f], al
lea rax, [rdx + 1]
lea r8, [rax + rax*2]
xor edx, edx
shl r8, 5
call fcn.140144890
mov qword [rbp - 0x68], rdi
lea r9, [rdi + 0x70]
mov qword [rbp - 0x60], r9
lea rcx, [rbx + rdi]
mov qword [rbp - 0x50], rcx
lea rax, [rcx + 0x48]
mov qword [rcx + 0x38], rax
mov eax, 3
mov word [rcx + 0x30], ax
lea r13, [rdi + 0x258]
mov word [rcx + 0x2c], r14w
lea r12, [r9 + 0x28]
mov dword [rcx + 0x28], r14d
mov rbx, rsi
mov dword [r13 + 4], r14d
mov qword [r9], rdi
mov byte [r9 + 0x11], r14b
mov qword [r9 + 8], r14
mov dword [r9 + 0x14], r14d
mov dword [r9 + 0x18], 8
mov qword [r9 + 0x20], r12
mov qword [rbp - 0x78], r9
test rsi, rsi
je 0x1400f3d97
mov eax, dword [rbx + 4]
test eax, 0x41000
je 0x1400f3d97
bt eax, 0x12
jae 0x1400f3d8e
mov rax, qword [rbx + 0x20]
mov rbx, qword [rax + 8]
jmp 0x1400f3d92
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x1400f3d74
mov byte [rdi + 0x80], 0x2c
mov r8d, 0x80
test rbx, rbx
je 0x1400f4056
cmp byte [rbx], 0x2c
je 0x1400f4037
movsxd rdx, dword [rdi + 0x88]
cmp dword [rdi + 0x84], edx
jl 0x1400f3f9e
mov rax, qword [r9]
mov r14, qword [rdi + 0x90]
imul rdx, rdx, 0x70
mov rcx, qword [rax]
mov rbx, qword [rcx]
movzx eax, word [rbx + 0x184]
cmp rdx, rax
jbe 0x1400f3e0c
cmp dword [rbx + 0x180], 0
jne 0x1400f3dfd
inc dword [rbx + 0x194]
jmp 0x1400f3ec8
cmp byte [rbx + 0x63], 0
jne 0x1400f3ee3
jmp 0x1400f3ec8
cmp rdx, r8
ja 0x1400f3e8f
mov rcx, qword [rbx + 0x1b8]
test rcx, rcx
je 0x1400f3e77
mov rax, qword [rcx]
mov qword [rbx + 0x1b8], rax
inc dword [rbx + 0x190]
mov qword [rdi + 0x90], rcx
movsxd rax, dword [rdi + 0x84]
mov rdx, r14
imul r8, rax, 0x38
call fcn.1401441e0
cmp r14, r12
je 0x1400f3f38
test r14, r14
je 0x1400f3f38
cmp qword [rbx + 0x2e0], 0
je 0x1400f3eef
mov rdx, r14
mov rcx, rbx
call fcn.140091d10
jmp 0x1400f3f38
mov rcx, qword [rbx + 0x1b0]
test rcx, rcx
je 0x1400f3e8f
mov rax, qword [rcx]
mov qword [rbx + 0x1b0], rax
jmp 0x1400f3e27
mov rcx, qword [rbx + 0x1a8]
test rcx, rcx
je 0x1400f3ea7
mov rax, qword [rcx]
mov qword [rbx + 0x1a8], rax
jmp 0x1400f3e27
mov rcx, qword [rbx + 0x1a0]
test rcx, rcx
je 0x1400f3ec2
mov rax, qword [rcx]
mov qword [rbx + 0x1a0], rax
jmp 0x1400f3e27
inc dword [rbx + 0x198]
mov rcx, rbx
call fcn.140080390
mov qword [rdi + 0x90], rax
mov rcx, rax
test rax, rax
jne 0x1400f3e34
mov qword [rdi + 0x90], r14
jmp 0x1400f4056
cmp r14, qword [rbx + 0x1d0]
jae 0x1400f3f30
cmp r14, qword [rbx + 0x1c0]
jb 0x1400f3f14
mov rax, qword [rbx + 0x1b8]
mov qword [r14], rax
mov qword [rbx + 0x1b8], r14
jmp 0x1400f3f38
cmp r14, qword [rbx + 0x1c8]
jb 0x1400f3f30
mov rax, qword [rbx + 0x1a8]
mov qword [r14], rax
mov qword [rbx + 0x1a8], r14
jmp 0x1400f3f38
mov rcx, r14
call fcn.14006abe0
mov rcx, qword [rdi + 0x90]
cmp rcx, qword [rbx + 0x1d0]
jae 0x1400f3f6a
cmp rcx, qword [rbx + 0x1c0]
jb 0x1400f3f58
mov eax, 0x80
jmp 0x1400f3f77
cmp rcx, qword [rbx + 0x1c8]
jb 0x1400f3f6a
movzx eax, word [rbx + 0x186]
jmp 0x1400f3f77
mov rax, qword [0x1401c1e08]
call qword [case.0x1400c8de2.0]
movsxd rcx, eax
lea r9, [rdi + 0x70]
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 5
mov dword [rdi + 0x88], ecx
movsxd rdx, dword [rdi + 0x84]
imul r8, rdx, 0x38
lea eax, [rdx + 1]
add r8, qword [rdi + 0x90]
mov dword [rdi + 0x84], eax
test rsi, rsi
je 0x1400f3fdf
test dword [rsi + 4], 0x40000
je 0x1400f3fdf
movsxd rcx, dword [rsi + 0x2c]
call fcn.1400c9940
mov ecx, 0x10e
sub ax, cx
mov word [r8 + 0x10], ax
jmp 0x1400f3ff0
mov eax, 1
mov word [r8 + 0x10], ax
test rsi, rsi
je 0x1400f4013
nop
mov eax, dword [rsi + 4]
test eax, 0x41000
je 0x1400f4013
bt eax, 0x12
jae 0x1400f400a
mov rax, qword [rsi + 0x20]
mov rsi, qword [rax + 8]
jmp 0x1400f400e
mov rsi, qword [rsi + 0x10]
test rsi, rsi
jne 0x1400f3ff0
mov qword [r8], rsi
xor r12d, r12d
mov word [r8 + 0x12], r12w
xorps xmm0, xmm0
mov qword [r8 + 8], r9
xor eax, eax
movups xmmword [r8 + 0x14], xmm0
movups xmmword [r8 + 0x24], xmm0
mov dword [r8 + 0x34], eax
jmp 0x1400f4059
mov rdx, qword [rbx + 0x10]
mov r8b, 0x2c
mov rcx, r9
call fcn.1400f8c70
mov rdx, qword [rbx + 0x18]
lea rcx, [rdi + 0x70]
mov r8b, 0x2c
call fcn.1400f8c70
xor r12d, r12d
cmp dword [rsp + 0x34], 0
mov ecx, 0x100
jne 0x1400f4091
test r15, r15
je 0x1400f4071
movzx eax, byte [r15]
mov byte [rdi + 0x41], al
test word [rsp + 0x30], cx
je 0x1400f407c
mov byte [rdi + 0x43], 1
mov rcx, qword [rsp + 0x48]
lea r8, str.SCAN_CONSTANT_ROW
xor edx, edx
call fcn.1400ec4c0
jmp 0x1400f40ec
mov rdi, qword [rsp + 0x60]
mov ebx, r12d
mov r14, qword [rsp + 0x48]
mov r15, qword [rbp - 0x78]
lea rsi, [rdi + 0x4c]
nop word [rax + rax]
movsxd rcx, dword [r13 + 4]
lea rdx, [rdi + 8]
mov eax, dword [rsi]
mov r8, r15
mov dword [r13 + rcx*4 + 8], eax
inc dword [r13 + 4]
movsxd rax, ebx
imul rcx, rax, 0x70
add rdx, rcx
mov rcx, r14
call fcn.1400f8cf0
inc ebx
lea rsi, [rsi + 0x70]
cmp ebx, dword [rdi]
jl 0x1400f40b0
mov rdi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x38]
lea rsi, [rdi + 0x70]
mov ebx, dword [rsi + 0x14]
sub ebx, 1
js 0x1400f4118
mov rdi, qword [rsp + 0x60]
nop dword [rax]
mov r8d, ebx
mov rdx, rsi
mov rcx, rdi
call fcn.140082440
sub ebx, 1
jns 0x1400f4100
mov rdi, qword [rsp + 0x50]
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0x63], 0
jne 0x1400f42a5
mov rcx, qword [rbp - 0x60]
mov r14d, r12d
cmp dword [rcx + 0x14], 0
jle 0x1400f41f7
mov r13, qword [rsp + 0x48]
lea r8, [0x140085c70]
mov r15d, dword [rsp + 0x34]
lea r9, [0x1400daf90]
mov rsi, r12
mov rbx, qword [rcx + 0x20]
add rbx, rsi
test byte [rbx + 0x12], 2
jne 0x1400f41d6
cmp qword [rbx + 0x30], 0
jne 0x1400f41d6
test r15d, r15d
je 0x1400f41aa
mov rdx, qword [rbx]
mov eax, 1
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x20], r12
mov dword [rbp - 0x18], r12d
mov qword [rbp - 0x12], r12
mov word [rbp - 0xa], r12w
mov word [rbp - 0x14], ax
mov qword [rbp - 0x30], r8
mov qword [rbp - 0x28], r9
test rdx, rdx
je 0x1400f41aa
lea rcx, [rbp - 0x38]
call fcn.140109da0
cmp word [rbp - 0x14], 0
je 0x1400f41c4
mov r8d, dword [rdi + 0x34]
mov r9d, 0x10
mov rdx, qword [rbx]
mov rcx, r13
call fcn.1400bac70
or word [rbx + 0x12], 4
mov rcx, qword [rbp - 0x60]
lea r9, [0x1400daf90]
lea r8, [0x140085c70]
inc r14d
add rsi, 0x38
cmp r14d, dword [rcx + 0x14]
jl 0x1400f4153
mov r15, qword [rsp + 0x38]
lea r13, [rdi + 0x258]
lea rsi, [rdi + 0x70]
movzx r14d, word [rsp + 0x30]
mov ecx, 0x100
mov rbx, qword [rsp + 0x70]
movzx eax, r14w
and ax, cx
mov word [rsp + 0x50], ax
je 0x1400f4246
mov rdx, qword [rsp + 0x60]
mov r9, rbx
mov rcx, qword [rsp + 0x48]
mov r8, rsi
call fcn.14008f7a0
test eax, eax
je 0x1400f4234
mov byte [rdi + 0x43], 1
jmp 0x1400f4246
test r15, r15
jne 0x1400f4246
mov eax, 0x80
mov qword [rdi + 0x10], rbx
or word [rdi + 0x3c], ax
mov esi, dword [rsp + 0x34]
cmp esi, 1
jne 0x1400f4260
lea rcx, [rbp - 0x68]
call fcn.14010fae0
test eax, eax
jne 0x1400f42f9
lea rcx, [rbp - 0x68]
call fcn.14010ac20
test eax, eax
jne 0x1400f42a5
xor edx, edx
mov rcx, rdi
call fcn.14010e430
mov r10, qword [rsp + 0x68]
cmp byte [r10 + 0x63], 0
jne 0x1400f42a5
cmp qword [rdi + 0x10], 0
je 0x1400f4305
movzx edx, word [rdi + 0x48]
mov rcx, rdi
inc dx
call fcn.14010e430
mov r10, qword [rsp + 0x68]
cmp byte [r10 + 0x63], 0
je 0x1400f42fe
mov r15, qword [rsp + 0x48]
mov rcx, rdi
call fcn.14010fcc0
mov eax, dword [rdi + 0x38]
mov rdx, rdi
mov rcx, qword [rsp + 0x68]
mov dword [r15 + 0xc0], eax
call fcn.14010a810
xor eax, eax
mov rbx, qword [rsp + 0x110]
mov rdi, qword [rsp + 0x108]
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.140142180
add rsp, 0x118
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
ret
mov r10, qword [rsp + 0x68]
cmp qword [rdi + 0x10], 0
jne 0x1400f4318
mov eax, dword [r10 + 0x30]
bt rax, 0xc
jae 0x1400f4318
mov qword [rdi + 0x68], 0xffffffffffffffff
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 0x30], 0
jne 0x1400f42aa
cmp byte [r10 + 0x63], 0
jne 0x1400f42aa
cmp byte [rdi + 0x40], 2
mov r11d, 0x400
jb 0x1400f450c
test rbx, rbx
je 0x1400f450c
movzx eax, r14w
and ax, r11w
cmp r12w, ax
jne 0x1400f450c
mov eax, 0x100
test dword [r10 + 0x5c], eax
jne 0x1400f450c
mov rdx, rbx
mov rcx, r13
call fcn.1400f89a0
mov rdx, qword [rbp - 0x58]
mov r8, rax
mov qword [rsp + 0x38], rax
test rdx, rdx
je 0x1400f439a
mov rcx, r13
call fcn.1400f89a0
mov r8, qword [rsp + 0x38]
or r8, rax
mov qword [rsp + 0x38], r8
movzx edx, byte [rdi + 0x40]
lea esi, [rdx - 1]
cmp esi, 1
jl 0x1400f44fd
mov r14, qword [rbp - 0x60]
lea rax, [rdx + 8]
movsxd rcx, edx
lea r12, [rax + rax*2]
shl r12, 5
add r12, rdi
lea r11, [rcx - 1]
lea r11, [r11 + r11*2]
shl r11, 5
lea r13, [rcx + 9]
add r11, 0x3b0
lea r13, [r13 + r13*2]
add r11, rdi
shl r13, 5
mov qword [rsp + 0x70], r11
add r13, rdi
nop dword [rax + rax]
mov r11, qword [r11]
movzx eax, byte [r11 + 0x10]
imul rbx, rax, 0x70
add rbx, qword [rdi + 8]
test byte [rbx + 0x44], 8
je 0x1400f44ce
cmp word [rsp + 0x50], 0
jne 0x1400f4420
test dword [r11 + 0x28], 0x1000
je 0x1400f44ce
mov rdx, qword [r11 + 8]
test r8, rdx
jne 0x1400f44ce
mov rax, qword [r14 + 0x20]
movsxd rcx, dword [r14 + 0x14]
mov r8, rax
imul r10, rcx, 0x38
add r10, rax
cmp rax, r10
jae 0x1400f4478
test qword [r8 + 0x30], rdx
je 0x1400f445d
mov r9, qword [r8]
test byte [r9 + 4], 1
je 0x1400f4473
mov ecx, dword [rbx + 0x4c]
cmp dword [r9 + 0x34], ecx
jne 0x1400f4473
add r8, 0x38
cmp r8, r10
jb 0x1400f4444
mov r8, rdx
not r8
and qword [rsp + 0x78], r8
jmp 0x1400f4488
cmp r8, r10
jb 0x1400f44ce
mov rcx, rdx
not rcx
and qword [rsp + 0x78], rcx
cmp rax, r10
jae 0x1400f44a0
test qword [rax + 0x30], rdx
je 0x1400f4497
or word [rax + 0x12], 4
mov rdx, qword [r11 + 8]
add rax, 0x38
cmp rax, r10
jb 0x1400f4488
movzx ecx, byte [rdi + 0x40]
lea eax, [rcx - 1]
cmp esi, eax
je 0x1400f44c3
sub ecx, esi
mov rdx, r13
dec ecx
lea eax, [rcx + rcx*2]
mov rcx, r12
shl eax, 5
movsxd r8, eax
call fcn.1401441e0
dec byte [rdi + 0x40]
dec dword [rsp + 0x34]
mov r14, qword [rbp - 0x60]
mov r11, qword [rsp + 0x70]
dec esi
mov r8, qword [rsp + 0x38]
sub r11, 0x60
sub r13, 0x60
mov qword [rsp + 0x70], r11
sub r12, 0x60
cmp esi, 1
jge 0x1400f43f0
movzx r14d, word [rsp + 0x30]
xor r12d, r12d
mov esi, dword [rsp + 0x34]
mov r11d, 0x400
mov r10, qword [rsp + 0x68]
mov rcx, qword [rdi]
movzx ebx, r12w
movsx eax, word [rdi + 0x48]
mov r9, qword [rsp + 0x60]
mov dword [rsp + 0x50], ebx
add dword [rcx + 0xc0], eax
test r14b, 4
je 0x1400f45ac
mov rdx, qword [rdi + 0x3b0]
mov ecx, dword [rdx + 0x28]
test ecx, 0x1000
jne 0x1400f4577
mov ebx, r12d
mov dword [rsp + 0x50], ebx
test r14b, 8
je 0x1400f45ac
mov rax, qword [r9 + 0x28]
mov dword [rsp + 0x50], ebx
cmp dword [rax + 0x54], 0
jne 0x1400f45ac
bt ecx, 0xd
jae 0x1400f4571
movzx ebx, r12w
mov dword [rsp + 0x50], ebx
test r14b, 0x10
je 0x1400f45ac
test ecx, 0x1000
sete al
movzx ebx, r12w
inc al
mov dword [rsp + 0x50], ebx
mov byte [rdi + 0x42], al
mov rax, qword [r9 + 0x28]
test byte [rax + 0x40], 0x80
jne 0x1400f45ac
mov dword [rsp + 0x50], ebx
test cl, 0x40
je 0x1400f45ac
and ecx, 0xffffffbf
movzx ebx, r14w
and bx, 8
mov dword [rdx + 0x28], ecx
mov dword [rsp + 0x50], ebx
test esi, esi
jle 0x1400f4a66
lea r8, [rdi + 0x3b0]
mov eax, esi
mov qword [rsp + 0x38], r8
mov qword [rbp - 0x78], rax
nop word [rax + rax]
movzx eax, byte [r8 - 0x1c]
mov esi, 0xffff8000
imul r13, rax, 0x70
mov rdx, 0xffffffffffff8000
add r13, r9
mov r14, qword [r13 + 0x28]
mov rcx, qword [r14 + 0x70]
test rcx, rcx
je 0x1400f461e
mov rax, qword [r10 + 0x20]
mov esi, r12d
add rax, 0x18
mov rdx, r12
cmp qword [rax], rcx
je 0x1400f461e
nop dword [rax + rax]
inc esi
lea rax, [rax + 0x20]
inc rdx
cmp qword [rax], rcx
jne 0x1400f4610
test dword [r14 + 0x40], 0x4000
mov r9, qword [r8]
mov qword [rsp + 0x70], r9
jne 0x1400f4896
cmp qword [r14 + 0x18], 0
jne 0x1400f4896
mov eax, dword [r9 + 0x28]
test r11d, eax
je 0x1400f476a
mov rbx, qword [r14 + 0x60]
test rbx, rbx
je 0x1400f4663
cmp qword [rbx], r10
je 0x1400f4663
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1400f4655
mov r15, qword [rsp + 0x58]
mov r8d, dword [r13 + 0x4c]
movsxd rdx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], edx
jg 0x1400f4695
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov edx, 0xa9
mov rcx, r15
call fcn.14008db80
mov edx, eax
jmp 0x1400f46c4
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0xa9
mov dword [rax + rcx*8 + 4], r8d
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r12
mov rax, qword [r15]
cmp byte [rax + 0x63], 0
jne 0x1400f4704
test edx, edx
jns 0x1400f46da
mov edx, dword [r15 + 0x90]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1400f4758
mov r9d, 0xfffffff4
mov r8, rbx
mov rcx, r15
call fcn.140101ce0
mov r8, qword [rsp + 0x38]
mov rax, qword [rsp + 0x70]
test dword [rax + 0x28], 0x200
je 0x1400f4a03
test byte [r14 + 0x40], 0x80
mov r10d, 0x62
mov rbx, qword [rax + 0x20]
je 0x1400f48a0
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
movzx eax, word [rsp + 0x40]
jne 0x1400f48a5
test ax, ax
je 0x1400f48a5
mov eax, dword [r8 - 0x4c]
mov dword [r8 - 0x48], eax
jmp 0x1400f4a03
test rbx, rbx
je 0x1400f4704
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xf4
inc dword [rbx + 0x18]
jmp 0x1400f4704
cmp dword [r14 + 0x54], 0
jne 0x1400f4896
test al, 0x40
jne 0x1400f4858
cmp word [rbp - 0x70], 0
jne 0x1400f4858
cmp byte [rdi + 0x42], 0
mov ecx, 0x62
je 0x1400f479f
mov eax, dword [r13 + 0x4c]
mov ecx, 0x63
mov dword [rdi + 0x28], eax
mov edx, dword [r13 + 0x4c]
mov r9, r14
mov dword [rsp + 0x20], ecx
mov r8d, esi
mov rcx, r15
call fcn.1400ca880
cmp byte [rdi + 0x42], 0
jne 0x1400f482a
cmp word [r14 + 0x46], 0x40
jge 0x1400f482a
test byte [r14 + 0x40], 0xe0
jne 0x1400f482a
mov rax, qword [r13 + 0x60]
mov r9d, r12d
test rax, rax
je 0x1400f47de
inc r9d
shr rax, 1
jne 0x1400f47d6
mov r15, qword [rsp + 0x58]
movsxd r8, r9d
mov rax, qword [r15]
cmp byte [rax + 0x63], 0
jne 0x1400f482f
movsxd rax, dword [r15 + 0x90]
lea rdx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rdx, [rdx - 3]
cmp byte [rax + rdx*8 + 1], 0
lea rdx, [rax + rdx*8]
je 0x1400f4820
mov r9d, 0xfffffffd
mov rcx, r15
call fcn.140101ce0
jmp 0x1400f482f
mov dword [rdx + 0x10], r9d
mov byte [rdx + 1], 0xfd
jmp 0x1400f482f
mov r15, qword [rsp + 0x58]
movsxd rax, dword [r15 + 0x90]
mov r8, qword [rsp + 0x38]
test eax, eax
jle 0x1400f4709
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov word [rax + rcx*8 - 0x16], bx
jmp 0x1400f4709
cmp esi, 1
je 0x1400f4896
mov rax, qword [r15]
shl rdx, 5
mov rcx, qword [rax + 0x20]
mov rax, qword [rdx + rcx + 8]
cmp byte [rax + 0x11], 0
je 0x1400f4896
mov rax, qword [r14]
xor r9d, r9d
mov r8d, dword [r14 + 0x38]
mov edx, esi
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.140090a20
mov r15, qword [rsp + 0x58]
jmp 0x1400f4704
mov r15, qword [rsp + 0x58]
jmp 0x1400f4709
movzx eax, word [rsp + 0x40]
cmp byte [rdi + 0x42], 0
je 0x1400f48e0
mov rax, qword [r13 + 0x28]
mov edx, dword [rbp - 0x80]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1400f48d0
nop dword [rax + rax]
cmp rcx, rbx
je 0x1400f48d0
mov rcx, qword [rcx + 0x28]
inc edx
test rcx, rcx
jne 0x1400f48c0
mov r13, qword [rsp + 0x48]
mov r10d, 0x63
mov dword [rdi + 0x2c], edx
jmp 0x1400f490d
mov ecx, dword [rbp - 0x80]
test ecx, ecx
je 0x1400f48fd
test ax, ax
je 0x1400f48fd
mov r13, qword [rsp + 0x48]
mov edx, ecx
mov r10d, 0x61
mov eax, ecx
jmp 0x1400f490f
mov r13, qword [rsp + 0x48]
mov edx, dword [r13 + 0x34]
lea eax, [rdx + 1]
mov dword [r13 + 0x34], eax
mov eax, edx
mov dword [r8 - 0x48], eax
movsxd rcx, dword [r15 + 0x90]
mov r8d, dword [rbx + 0x58]
cmp dword [r15 + 0x94], ecx
jg 0x1400f493e
mov r9d, r8d
mov dword [rsp + 0x20], esi
mov r8d, edx
mov rcx, r15
mov edx, r10d
call fcn.14008db80
jmp 0x1400f4974
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov byte [rax + rcx*8], r10b
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], r12
mov byte [rax + rcx*8 + 1], 0
mov r14, qword [r13 + 0x10]
mov rdx, rbx
mov rcx, r13
call fcn.1400c81e0
mov rdx, rax
test rax, rax
je 0x1400f49c4
mov rax, qword [r14]
cmp byte [rax + 0x63], 0
je 0x1400f49a8
cmp qword [rax + 0x2e0], 0
jne 0x1400f49c4
mov rcx, rdx
call fcn.1400c8350
jmp 0x1400f49c4
movsxd rax, dword [r14 + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
mov byte [rax + rcx*8 - 0x17], 0xf7
mov qword [rax + rcx*8 - 8], rdx
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x28]
test al, 0xf
je 0x1400f4a03
test eax, 0x188002
jne 0x1400f4a03
test byte [rdi + 0x3c], 1
jne 0x1400f4a03
cmp byte [rdi + 0x43], 2
je 0x1400f4a03
movsxd rax, dword [r15 + 0x90]
test eax, eax
jle 0x1400f4a03
lea rcx, [rax + rax*2]
mov edx, 2
mov rax, qword [r15 + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov r15, qword [rsp + 0x48]
test esi, esi
js 0x1400f4a35
mov rax, qword [r15 + 0xa0]
mov rcx, r15
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x74]
bt eax, esi
jb 0x1400f4a35
bts eax, esi
mov dword [rcx + 0x74], eax
cmp esi, 1
jne 0x1400f4a35
call fcn.1400cac60
mov r8, qword [rsp + 0x38]
mov r11d, 0x400
mov ebx, dword [rsp + 0x50]
add r8, 0x60
sub qword [rbp - 0x78], 1
mov r10, qword [rsp + 0x68]
mov r9, qword [rsp + 0x60]
mov qword [rsp + 0x38], r8
jne 0x1400f45d0
mov esi, dword [rsp + 0x34]
mov r14, qword [rsp + 0x58]
mov r13, qword [rsp + 0x68]
mov eax, dword [r14 + 0x90]
mov dword [rdi + 0x4c], eax
cmp byte [r13 + 0x63], 0
jne 0x1400f42aa
test esi, esi
jle 0x1400f4b42
lea rbx, [rdi + 0x394]
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbx + 0x1c]
lea rsi, [rbx - 0x34]
test dword [rax + 0x28], 0x4000
je 0x1400f4ae5
movzx eax, byte [rbx]
lea rdx, [rdi + 0x70]
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x78]
add r8, 8
imul rcx, rax, 0x70
mov qword [rsp + 0x20], rsi
add r8, rcx
mov rcx, r15
call fcn.14007df90
cmp byte [r13 + 0x63], 0
jne 0x1400f42aa
movzx r9d, word [rsp + 0x30]
mov r8, rsi
mov rdx, qword [rsp + 0x60]
mov rcx, r15
call fcn.1400f86a0
mov eax, dword [r14 + 0x90]
mov r9d, r12d
mov dword [rbx - 0x14], eax
mov r8, rdi
mov rax, qword [rsp + 0x78]
mov rdx, r14
mov qword [rsp + 0x28], rax
mov rcx, r15
mov qword [rsp + 0x20], rsi
call fcn.1400f4ce0
mov ecx, dword [rbx - 0x1c]
inc r12d
add rbx, 0x60
mov qword [rsp + 0x78], rax
mov dword [rdi + 0x30], ecx
cmp r12d, dword [rsp + 0x34]
jl 0x1400f4aa0
mov eax, dword [r14 + 0x90]
mov dword [rdi + 0x50], eax
mov rax, rdi
jmp 0x1400f42cb