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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
push rsi
push r13
push r14
sub rsp, 0xc0
mov qword [rax - 0x20], rbx
xor r11d, r11d
mov qword [rax - 0x30], rdi
mov rsi, r9
mov qword [rax - 0x38], r12
mov rbx, rdx
mov qword [rax - 0x40], r15
mov r12, rcx
mov r15, qword [rcx + 0x10]
mov r13d, r11d
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x58], r15
test r15, r15
jne 0x1400f3f33
cmp qword [rcx + 0xb0], r11
jne 0x1400f3f23
mov rax, qword [rcx]
test byte [rax + 0x60], 8
jne 0x1400f3f23
mov byte [rcx + 0x23], 1
call fcn.14011aea0
mov r15, rax
mov qword [rsp + 0x58], rax
xor r11d, r11d
mov r14d, dword [r12 + 0x38]
mov dword [rsp + 0xe0], r14d
lea eax, [r14 + 1]
mov dword [r12 + 0x38], eax
test rsi, rsi
je 0x1400f3fa5
test dword [rbx + 4], 0x1000
je 0x1400f3fa5
mov rax, qword [rbx + 0x20]
mov r10, qword [rax + 0x20]
movsxd rdi, dword [r10]
test edi, edi
jle 0x1400f3f8b
xor ecx, ecx
mov r9d, ecx
add r10, 8
nop
mov rcx, qword [r10]
call fcn.1400ee0d0
test eax, eax
jne 0x1400f3f8b
inc r11d
inc r9
add r10, 0x20
cmp r9, rdi
jl 0x1400f3f70
mov rbx, qword [rsp + 0xe8]
cmp r11d, edi
mov r11, r13
cmove rsi, r13
mov qword [rsp + 0xf8], rsi
mov edi, 1
mov qword [rsp + 0xb0], rbp
cmp dword [r12 + 0x34], r13d
jne 0x1400f4714
mov eax, dword [rbx + 4]
bt eax, 0xc
jae 0x1400f4714
test al, 0x40
jne 0x1400f4714
mov r8, qword [rbx + 0x20]
cmp qword [r8 + 0x50], r13
jne 0x1400f4714
test byte [r8 + 4], 9
jne 0x1400f4714
cmp qword [r8 + 0x60], r13
jne 0x1400f4714
cmp qword [r8 + 0x30], r13
jne 0x1400f4714
mov rax, qword [r8 + 0x28]
cmp dword [rax], edi
jne 0x1400f4714
test byte [rax + 0x24], 4
jne 0x1400f4714
mov rax, qword [rax + 0x18]
cmp byte [rax + 0x3f], dil
je 0x1400f4714
mov rcx, qword [r8 + 0x20]
movsxd r9, dword [rcx]
test r9, r9
jle 0x1400f4058
mov rdx, r11
add rcx, 8
nop word [rax + rax]
mov rax, qword [rcx]
cmp byte [rax], 0xa8
jne 0x1400f4714
inc rdx
add rcx, 0x20
cmp rdx, r9
jl 0x1400f4040
test r8, r8
je 0x1400f4714
mov r10, qword [r8 + 0x20]
mov esi, 0xffff8000
mov rax, qword [r8 + 0x28]
mov qword [rsp + 0x48], r10
mov dword [rsp + 0x30], esi
movsxd rbp, dword [r10]
mov r14, qword [rax + 0x18]
mov dword [rsp + 0x34], ebp
mov rdx, qword [r14 + 0x60]
test rdx, rdx
je 0x1400f40b3
mov rax, qword [r12]
mov esi, r11d
mov dword [rsp + 0x30], r11d
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x1400f40b3
inc esi
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x1400f40a4
mov dword [rsp + 0x30], esi
mov rax, qword [r12 + 0xb0]
mov rcx, r12
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x84]
bt eax, esi
jb 0x1400f40e4
bts eax, esi
mov dword [rcx + 0x84], eax
cmp esi, edi
jne 0x1400f40e8
call fcn.140101e20
jmp 0x1400f411b
cmp esi, edi
je 0x1400f4123
mov rax, qword [r12]
movsxd rdx, esi
shl rdx, 5
mov rcx, qword [rax + 0x20]
mov rax, qword [rdx + rcx + 8]
cmp byte [rax + 0x11], r13b
je 0x1400f4123
mov rax, qword [r14]
xor r9d, r9d
mov r8d, dword [r14 + 0x28]
mov edx, esi
mov rcx, r12
mov qword [rsp + 0x20], rax
call fcn.1400c5cf0
mov r10, qword [rsp + 0x48]
xor r11d, r11d
cmp ebp, edi
jne 0x1400f421a
mov rax, qword [r10 + 8]
cmp word [rax + 0x30], r13w
jge 0x1400f421a
mov edx, reloc.WS2_32.dll_ntohs
mov rcx, r15
call fcn.14011a4a0
mov edx, dword [rsp + 0xe0]
mov r9, r14
mov r8d, esi
movsxd rbx, eax
mov rcx, r12
mov dword [rsp + 0x20], 0x66
call fcn.140101a50
mov r9, qword [r14]
lea r8, str.USING_ROWID_SEARCH_ON_TABLE__s_FOR_IN_OPERATOR
xor edx, edx
mov rcx, r12
mov r13d, edi
call fcn.140124690
mov rax, qword [r15]
mov edx, dword [r15 + 0x90]
cmp byte [rax + 0x67], 0
je 0x1400f4197
lea rax, [0x14019e058]
jmp 0x1400f41a6
mov rax, qword [r15 + 0x88]
lea rcx, [rbx + rbx*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov rbp, rdi
mov rsi, qword [rsp + 0xe8]
mov r14d, dword [rsp + 0xe0]
mov r11, qword [rsp + 0x100]
mov r15, qword [rsp + 0x98]
mov r12, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0xb8]
test r11, r11
je 0x1400f490c
lea eax, [r13 - 3]
cmp eax, 1
jbe 0x1400f490c
mov rcx, qword [rsi + 0x10]
movzx eax, byte [rcx]
cmp al, 0xb0
jne 0x1400f4209
movzx eax, byte [rcx + 2]
cmp al, 0xb1
jne 0x1400f4832
mov rax, qword [rcx + 0x20]
jmp 0x1400f4842
mov rdx, rbp
mov esi, edi
mov qword [rsp + 0x40], rdx
test ebp, ebp
jle 0x1400f4329
mov rbp, r11
mov rdi, r11
test esi, esi
je 0x1400f470c
mov rdx, qword [rbx + 0x10]
movzx r9d, byte [rdx]
movzx eax, r9b
cmp r9b, 0xb0
jne 0x1400f4250
movzx eax, byte [rdx + 2]
cmp al, 0xb1
jne 0x1400f425d
mov rax, qword [rdx + 0x20]
mov r8, rax
jmp 0x1400f4269
cmp al, 0x8b
jne 0x1400f428b
mov rax, qword [rdx + 0x20]
mov r8, qword [rax + 0x20]
cmp dword [r8], 1
jle 0x1400f428b
cmp r9b, 0x8b
je 0x1400f4282
cmp byte [rdx + 2], 0x8b
je 0x1400f4282
mov rdx, qword [rdi + rax + 8]
jmp 0x1400f428b
mov rax, qword [rax + 0x20]
mov rdx, qword [rax + rdi + 8]
mov rax, qword [rdi + r10 + 8]
movsx rcx, word [rax + 0x30]
test cx, cx
js 0x1400f42b0
cmp cx, word [r14 + 0x36]
jge 0x1400f42b0
mov rax, qword [r14 + 8]
lea rcx, [rcx + rcx*2]
movzx ebx, byte [rax + rcx*8 + 0xc]
jmp 0x1400f42b2
mov bl, 0x44
mov rcx, rdx
call fcn.1400ed8b0
cmp al, 0x40
jle 0x1400f42d4
cmp bl, 0x40
jle 0x1400f42d7
cmp al, 0x43
jge 0x1400f42d0
cmp bl, 0x43
jge 0x1400f42d0
mov al, 0x41
jmp 0x1400f42d9
mov al, 0x43
jmp 0x1400f42d9
movzx eax, bl
or al, 0x40
movsx ecx, al
sub ecx, 0x41
je 0x1400f42f5
xor r11d, r11d
cmp ecx, 1
je 0x1400f42f8
cmp bl, 0x43
mov esi, r11d
setge sil
jmp 0x1400f42f8
xor r11d, r11d
mov rdx, qword [rsp + 0x40]
inc rbp
mov rbx, qword [rsp + 0xe8]
add rdi, 0x20
mov r10, qword [rsp + 0x48]
cmp rbp, rdx
jl 0x1400f4232
test esi, esi
je 0x1400f470c
mov ebp, edx
mov edi, 1
mov r14, qword [r14 + 0x10]
test r14, r14
je 0x1400f470c
lea rsi, [0x14019e058]
nop dword [rax]
test r13d, r13d
jne 0x1400f4828
movzx ecx, word [r14 + 0x60]
cmp ecx, ebp
jl 0x1400f46e1
cmp qword [r14 + 0x48], 0
jne 0x1400f46e1
cmp ecx, 0x3f
jae 0x1400f46e1
test byte [rsp + 0xf0], 4
je 0x1400f438f
movzx eax, word [r14 + 0x5e]
cmp eax, ebp
jg 0x1400f46e1
cmp ecx, ebp
jle 0x1400f438f
cmp byte [r14 + 0x62], r13b
je 0x1400f46e1
xor r8d, r8d
mov r13d, r8d
mov ebp, r8d
test rdx, rdx
jle 0x1400f44db
mov r15d, r8d
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [rbx + 0x10]
movzx r9d, byte [rdx]
movzx eax, r9b
cmp r9b, 0xb0
jne 0x1400f43c6
movzx eax, byte [rdx + 2]
cmp al, 0xb1
jne 0x1400f43d3
mov rax, qword [rdx + 0x20]
mov r8, rax
jmp 0x1400f43df
cmp al, 0x8b
jne 0x1400f4401
mov rax, qword [rdx + 0x20]
mov r8, qword [rax + 0x20]
cmp dword [r8], 1
jle 0x1400f4401
cmp r9b, 0x8b
je 0x1400f43f8
cmp byte [rdx + 2], 0x8b
je 0x1400f43f8
mov rdx, qword [r15 + rax + 8]
jmp 0x1400f4401
mov rax, qword [rax + 0x20]
mov rdx, qword [rax + r15 + 8]
test dword [rdx + 4], 0x200
mov rax, qword [rsp + 0x48]
mov rbx, qword [r15 + rax + 8]
jne 0x1400f4435
test rbx, rbx
je 0x1400f4422
test dword [rbx + 4], 0x200
jne 0x1400f4432
mov rcx, r12
call fcn.1400f15a0
mov rdi, rax
test rax, rax
jne 0x1400f4440
mov rdx, rbx
mov rcx, r12
call fcn.1400f15a0
mov rdi, rax
movzx ebx, word [rbx + 0x30]
xor eax, eax
mov r11, qword [r14 + 8]
mov esi, eax
mov rdx, qword [rsp + 0x40]
mov r10d, eax
cmp word [r11], bx
jne 0x1400f454e
test rdi, rdi
je 0x1400f448f
mov rax, qword [r14 + 0x40]
mov r8, qword [rdi]
mov r9, qword [rax + r10*8]
sub r9, r8
movzx eax, byte [r8]
movzx ecx, byte [r9 + r8]
cmp eax, ecx
jne 0x1400f4524
test eax, eax
jne 0x1400f4541
mov rdx, qword [rsp + 0x40]
mov edi, 1
cmp esi, dword [rsp + 0x34]
je 0x1400f44d1
mov ecx, esi
mov eax, edi
shl rax, cl
test r13, rax
jne 0x1400f44d1
or r13, rax
mov rax, qword [rsp + 0x100]
test rax, rax
je 0x1400f44b9
mov dword [rax + rbp*4], esi
mov rbx, qword [rsp + 0xe8]
inc rbp
add r15, 0x20
cmp rbp, rdx
jl 0x1400f43b0
lea rsi, [0x14019e058]
xor r8d, r8d
mov ebp, dword [rsp + 0x34]
mov rax, rdi
mov r15, qword [rsp + 0x58]
mov ecx, ebp
shl rax, cl
dec rax
cmp r13, rax
jne 0x1400f46dc
movsxd rdi, dword [r15 + 0x90]
cmp dword [r15 + 0x94], edi
jg 0x1400f4565
mov dword [rsp + 0x20], r8d
xor r9d, r9d
xor r8d, r8d
mov edx, reloc.WS2_32.dll_ntohs
mov rcx, r15
call fcn.1400bb2e0
mov edi, eax
jmp 0x1400f4590
lea rdx, [0x140171c70]
movzx edx, byte [rcx + rdx]
mov rcx, rax
lea rax, [0x140171c70]
movzx eax, byte [rcx + rax]
cmp eax, edx
jne 0x1400f4549
inc r8
jmp 0x1400f4471
mov rdx, qword [rsp + 0x40]
inc esi
inc r10
add r11, 2
cmp r10, rdx
jl 0x1400f4454
jmp 0x1400f448f
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], reloc.WS2_32.dll_ntohs
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r8
mov r9, qword [r14]
lea r8, str.USING_INDEX__s_FOR_IN_OPERATOR
xor edx, edx
mov rcx, r12
call fcn.140124690
movsxd rcx, dword [r15 + 0x90]
mov edx, dword [r14 + 0x58]
mov r8d, dword [rsp + 0xe0]
cmp dword [r15 + 0x94], ecx
jg 0x1400f45da
mov eax, dword [rsp + 0x30]
mov r9d, edx
mov edx, 0x66
mov dword [rsp + 0x20], eax
mov rcx, r15
call fcn.1400bb2e0
jmp 0x1400f460f
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 8], edx
mov edx, dword [rsp + 0x30]
mov dword [rax + rcx*8 + 0xc], edx
mov dword [rax + rcx*8], 0x66
mov dword [rax + rcx*8 + 4], r8d
mov qword [rax + rcx*8 + 0x10], r9
mov rbx, qword [r12 + 0x10]
mov rdx, r14
mov rcx, r12
call fcn.1400ff560
mov r8, rax
test rax, rax
je 0x1400f466a
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x1400f464e
cmp qword [rax + 0x308], 0
jne 0x1400f466a
add dword [r8], 0xffffffff
jne 0x1400f466a
mov rcx, qword [r8 + 0x10]
mov rdx, r8
call fcn.1400ea6d0
jmp 0x1400f466a
movsxd rax, dword [rbx + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov byte [rax + rcx*8 - 0x17], 0xf8
mov qword [rax + rcx*8 - 8], r8
mov rax, qword [r14 + 0x38]
mov rcx, qword [rsp + 0xf8]
movzx r13d, byte [rax]
add r13d, 3
mov dword [rsp + 0x38], r13d
test rcx, rcx
je 0x1400f46ac
mov r8d, dword [r12 + 0x3c]
inc r8d
mov dword [r12 + 0x3c], r8d
mov dword [rcx], r8d
cmp ebp, 1
jne 0x1400f46ac
mov edx, dword [rsp + 0xe0]
mov rcx, r15
call fcn.140112ee0
mov rax, qword [r15]
mov edx, dword [r15 + 0x90]
cmp byte [rax + 0x67], 0
je 0x1400f46c4
mov rax, rsi
mov dword [rax + 8], edx
jmp 0x1400f46e1
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 8], edx
lea rax, [rax + rcx*8]
jmp 0x1400f46e1
mov r13d, dword [rsp + 0x38]
mov r14, qword [r14 + 0x28]
mov edi, 1
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0xe8]
test r14, r14
jne 0x1400f4340
test r13d, r13d
jne 0x1400f41a9
xor r11d, r11d
mov r14d, dword [rsp + 0xe0]
mov eax, dword [rsp + 0xf0]
mov ebp, 1
mov rsi, qword [rsp + 0xe8]
test bpl, al
je 0x1400f47a5
test dword [rsi + 4], 0x1000
jne 0x1400f47a5
mov rbx, qword [rsi + 0x10]
lea rax, [fcn.1400b1fb0]
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0x60]
lea rax, [0x140112e40]
mov qword [rsi + 0x10], r11
mov rdx, rsi
mov qword [rsp + 0x70], rax
mov word [rsp + 0x84], bp
mov qword [rsp + 0x60], r12
call fcn.14012ac00
cmp word [rsp + 0x84], 0
mov qword [rsi + 0x10], rbx
je 0x1400f4788
mov rax, qword [rsi + 0x20]
cmp dword [rax], 2
jg 0x1400f479e
dec dword [r12 + 0x38]
mov r14d, 0xffffffff
mov r13d, 5
jmp 0x1400f41bc
mov eax, dword [rsp + 0xf0]
movzx edi, word [r12 + 0xe0]
xor ecx, ecx
mov ebx, ecx
mov r13d, 2
test al, 4
je 0x1400f47e1
mov word [r12 + 0xe0], cx
mov r8d, r14d
mov rcx, r12
mov rdx, rsi
call fcn.1400e5660
mov word [r12 + 0xe0], di
jmp 0x1400f41bc
mov rax, qword [rsp + 0xf8]
test rax, rax
je 0x1400f47fa
inc dword [r12 + 0x3c]
mov ebx, dword [r12 + 0x3c]
mov dword [rax], ebx
mov r8d, r14d
mov rdx, rsi
mov rcx, r12
call fcn.1400e5660
test ebx, ebx
je 0x1400f481a
mov r8d, ebx
mov edx, r14d
mov rcx, r15
call fcn.140112ee0
mov word [r12 + 0xe0], di
jmp 0x1400f41bc
mov ebp, 1
jmp 0x1400f41ac
cmp al, 0x8b
jne 0x1400f48e4
mov rax, qword [rcx + 0x20]
mov rax, qword [rax + 0x20]
mov ebp, dword [rax]
xor eax, eax
mov ecx, eax
test ebp, ebp
jle 0x1400f48e6
cmp ebp, 0x10
jb 0x1400f48e6
movdqa xmm2, xmmword [0x14017b6e0]
mov eax, ebp
and eax, 0x8000000f
jge 0x1400f4871
dec eax
or eax, 0xfffffff0
inc eax
mov r10d, ebp
lea rdx, [r11 + 0x20]
sub r10d, eax
mov r8d, 8
lea eax, [r8 - 4]
movd xmm0, ecx
pshufd xmm0, xmm0, 0
lea rdx, [rdx + 0x40]
paddd xmm0, xmm2
movd xmm1, eax
movdqu xmmword [rdx - 0x60], xmm0
lea eax, [r8 + 4]
add ecx, 0x10
pshufd xmm1, xmm1, 0
paddd xmm1, xmm2
movd xmm0, r8d
movdqu xmmword [rdx - 0x50], xmm1
add r8d, 0x10
movd xmm1, eax
pshufd xmm0, xmm0, 0
pshufd xmm1, xmm1, 0
paddd xmm0, xmm2
paddd xmm1, xmm2
movdqu xmmword [rdx - 0x40], xmm0
movdqu xmmword [rdx - 0x30], xmm1
cmp ecx, r10d
jl 0x1400f4881
jmp 0x1400f48e6
xor ecx, ecx
movsxd rdx, ecx
movsxd r8, ebp
cmp rdx, r8
jge 0x1400f490c
mov dword [r11 + rdx*4], ecx
inc ecx
inc rdx
cmp rdx, r8
jl 0x1400f48f1
mov rcx, qword [rsp + 0x108]
mov dword [rcx], r14d
jmp 0x1400f4917
mov rax, qword [rsp + 0x108]
mov dword [rax], r14d
mov rbp, qword [rsp + 0xb0]
mov eax, r13d
add rsp, 0xc0
pop r14
pop r13
pop rsi
ret