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

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x68
mov r13, qword [rdx]
mov rbx, rdx
mov rsi, qword [rcx + 0x10]
xor edi, edi
movsxd r10, r9d
mov rbp, r8
mov r11, rcx
mov qword [rsp + 0x50], r13
movzx edx, byte [r13]
mov r15d, 0x400
lea eax, [rdx - 0x2d]
test al, 0xf7
je 0x1400f3542
cmp dl, 0x32
jne 0x1400f2f07
mov r14d, dword [rsp + 0xd8]
lea edx, [rdi + 0x48]
mov r9d, r14d
xor r8d, r8d
mov rcx, rsi
call fcn.140149860
jmp 0x1400f3443
mov r12, qword [r8 + 0x50]
mov ebp, edi
mov dword [rsp + 0x38], 5
mov r15, rdi
mov qword [rsp + 0x48], r12
test dword [r12 + 0x28], 0x400
jne 0x1400f2f4a
mov rax, qword [r12 + 0x20]
test rax, rax
je 0x1400f2f4a
mov rax, qword [rax + 0x38]
cmp byte [r10 + rax], dil
je 0x1400f2f4a
cmp dword [rsp + 0xd0], edi
mov eax, edi
sete al
jmp 0x1400f2f51
mov eax, dword [rsp + 0xd0]
mov r14d, dword [rsp + 0xd8]
mov dword [rsp + 0x30], eax
test r9d, r9d
jle 0x1400f2f8a
mov r8, qword [r12 + 0x38]
mov rax, rdi
nop word [rax + rax]
mov rcx, qword [r8 + rax*8]
test rcx, rcx
je 0x1400f2f82
cmp qword [rcx], r13
je 0x1400f3036
inc rax
cmp rax, r10
jl 0x1400f2f70
movzx r8d, word [r12 + 0x2c]
cmp r10d, r8d
jge 0x1400f2fc8
mov rax, qword [r12 + 0x38]
sub r8d, r10d
lea rdx, [rax + r10*8]
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdx]
lea ecx, [rbp + 1]
lea rdx, [rdx + 8]
cmp qword [rax], r13
cmovne ecx, ebp
mov ebp, ecx
sub r8, 1
jne 0x1400f2fb0
test dword [r13 + 4], 0x800
mov r14d, edi
mov dword [rsp + 0x3c], edi
mov dword [rsp + 0x34], edi
je 0x1400f30c1
mov rax, qword [r13 + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
je 0x1400f30c1
mov r9, qword [rsp + 0x50]
mov r8, r12
mov r13, qword [r11]
mov edx, r10d
mov rcx, r11
call fcn.14010f660
mov r12, rax
cmp byte [r13 + 0x61], dil
jne 0x1400f30a3
mov rcx, qword [rsp + 0xb0]
movsxd r14, ebp
shl r14, 2
mov rcx, qword [rcx]
test rcx, rcx
je 0x1400f304b
mov rdx, r14
call fcn.140121770
jmp 0x1400f3053
mov rcx, qword [rsp + 0xc0]
mov rdx, rbx
call fcn.1400f8340
jmp 0x1400f358c
mov rcx, r14
call fcn.1401354c0
mov r15, rax
test rax, rax
je 0x1400f3068
mov r8, r14
xor edx, edx
mov rcx, rax
call sub.msvcrt.dll_memset
mov rcx, qword [rsp + 0xb0]
lea rax, [rsp + 0x34]
xor r9d, r9d
mov qword [rsp + 0x28], rax
mov rdx, r12
mov qword [rsp + 0x20], r15
lea r8d, [r9 + 4]
call fcn.140129ad0
mov r14d, dword [rsp + 0x34]
mov dword [rsp + 0x38], eax
mov rax, qword [rbx]
mov dword [rsp + 0x3c], r14d
mov dword [rax + 0x2c], r14d
test r12, r12
je 0x1400f30b3
mov rdx, r12
mov rcx, r13
call fcn.140127dc0
mov r13, qword [rbx]
mov r12, qword [rsp + 0x48]
mov eax, dword [rsp + 0x38]
jmp 0x1400f30f0
xor r9d, r9d
lea rax, [rsp + 0x34]
mov qword [rsp + 0x28], rax
mov rdx, r13
mov rcx, r11
mov qword [rsp + 0x20], rdi
lea r8d, [r9 + 4]
call fcn.140129ad0
mov r14d, dword [rsp + 0x34]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], r14d
cmp eax, 4
jne 0x1400f3104
cmp dword [rsp + 0x30], edi
mov eax, edi
sete al
mov dword [rsp + 0x30], eax
jmp 0x1400f3108
mov eax, dword [rsp + 0x30]
test eax, eax
mov ecx, 0x21
mov edx, 0x25
cmovne edx, ecx
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1400f313a
xor r9d, r9d
mov dword [rsp + 0x20], edi
mov r8d, r14d
mov rcx, rsi
call fcn.1401022b0
jmp 0x1400f316a
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], di
mov dword [rax + rcx*8 + 4], r14d
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
mov byte [rax + rcx*8 + 1], dil
or dword [r12 + 0x28], 0x800
mov rcx, qword [rsp + 0xc0]
mov r14d, dword [rcx + 0x40]
test r14d, r14d
jne 0x1400f3199
mov rax, qword [rsp + 0xb0]
dec dword [rax + 0x44]
mov eax, dword [rax + 0x44]
mov r14d, dword [rcx + 0x40]
mov dword [rcx + 0x10], eax
lea eax, [r14 + rbp]
mov rbp, qword [rsp + 0xc0]
mov rdx, qword [rbp + 0x48]
mov dword [rbp + 0x40], eax
cdqe
lea r8, [rax + rax*4]
mov rax, qword [rsp + 0xb0]
shl r8, 2
mov rcx, qword [rax]
call fcn.140121910
mov qword [rbp + 0x48], rax
mov rdx, rax
test rax, rax
je 0x1400f3408
movsxd r9, dword [rsp + 0xc8]
movsxd rax, r14d
lea rcx, [rax + rax*4]
movzx eax, word [r12 + 0x2c]
lea r14, [rdx + rcx*4]
cmp r9d, eax
jge 0x1400f340b
mov ecx, dword [rsp + 0xd8]
lea r11, [r9*8]
mov ebx, dword [rsp + 0x3c]
mov r10d, ecx
sub r10d, r9d
mov qword [rsp + 0x50], r11
mov eax, r9d
mov dword [rsp + 0x34], r10d
sub eax, ecx
mov qword [rsp + 0x48], r15
mov dword [rsp + 0x40], eax
mov r8, r15
mov ebp, ecx
nop
mov rax, qword [r12 + 0x38]
mov rdx, r8
mov rcx, qword [r11 + rax]
cmp qword [rcx], r13
jne 0x1400f33cf
cmp dword [rsp + 0x38], 1
jne 0x1400f32a6
movsxd rdx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], edx
jg 0x1400f3281
mov r9d, ebp
mov dword [rsp + 0x20], edi
mov r8d, ebx
mov edx, 0x7f
mov rcx, rsi
call fcn.1401022b0
mov r9d, dword [rsp + 0xc8]
mov edx, eax
jmp 0x1400f3322
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x7f
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], edi
jmp 0x1400f3319
test r15, r15
je 0x1400f32b0
mov r8d, dword [r8]
jmp 0x1400f32b3
mov r8d, edi
test r15, r15
lea rax, [rdx + 4]
cmove rax, rdx
movsxd rdx, dword [rsi + 0x90]
mov qword [rsp + 0x48], rax
cmp dword [rsi + 0x94], edx
jg 0x1400f32f5
mov r9d, r8d
mov dword [rsp + 0x20], ebp
mov r8d, ebx
mov edx, 0x59
mov rcx, rsi
call fcn.1401022b0
mov r9d, dword [rsp + 0xc8]
mov edx, eax
jmp 0x1400f3322
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x59
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rdi
mov dword [rax + rcx*8 + 4], ebx
mov dword [r14 + 4], edx
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1400f3355
xor r9d, r9d
mov dword [rsp + 0x20], edi
mov r8d, ebp
mov rcx, rsi
lea edx, [r9 + 0x32]
call fcn.1401022b0
mov r9d, dword [rsp + 0xc8]
jmp 0x1400f337e
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x32
mov dword [rax + rcx*8 + 4], ebp
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
mov ecx, dword [rsp + 0x40]
mov r10d, dword [rsp + 0x34]
add ecx, ebp
cmp ecx, r9d
jne 0x1400f33bc
cmp dword [rsp + 0x30], edi
mov dword [r14], ebx
sete al
add al, 4
mov byte [r14 + 0x10], al
test r9d, r9d
jle 0x1400f33b6
mov dword [r14 + 8], r10d
mov dword [r14 + 0xc], ecx
or dword [r12 + 0x28], 0x40000
jmp 0x1400f33c1
mov dword [r14 + 0xc], edi
jmp 0x1400f33c1
mov byte [r14 + 0x10], 0xad
mov r8, qword [rsp + 0x48]
add r14, 0x14
mov r11, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x40]
inc ebp
movzx eax, word [r12 + 0x2c]
dec r10d
add r11, 8
mov dword [rsp + 0x34], r10d
add ecx, ebp
mov qword [rsp + 0x50], r11
cmp ecx, eax
jl 0x1400f3230
mov rbx, qword [rsp + 0xb8]
mov rbp, qword [rsp + 0xc0]
jmp 0x1400f340b
mov dword [rbp + 0x40], edi
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rax]
test r15, r15
je 0x1400f3435
test rcx, rcx
je 0x1400f34dc
cmp qword [rcx + 0x2d8], rdi
je 0x1400f3495
mov rdx, r15
call fcn.140105bc0
mov r14d, dword [rsp + 0xd8]
mov r15d, 0x400
test byte [rbx + 0x12], 4
jne 0x1400f358c
mov edx, 0x200
cmp dword [rbp], 0
je 0x1400f3465
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x1400f358c
mov rax, qword [rbx + 0x38]
test qword [rbp + 0x58], rax
jne 0x1400f358c
test edi, edi
je 0x1400f355b
movzx eax, word [rbx + 0x12]
test r15w, ax
je 0x1400f355b
or ax, dx
mov word [rbx + 0x12], ax
jmp 0x1400f3560
cmp r15, qword [rcx + 0x1c8]
jae 0x1400f34dc
cmp r15, qword [rcx + 0x1b8]
jb 0x1400f34bd
mov rax, qword [rcx + 0x1b0]
mov qword [r15], rax
mov qword [rcx + 0x1b0], r15
jmp 0x1400f3435
cmp r15, qword [rcx + 0x1c0]
jb 0x1400f34dc
mov rax, qword [rcx + 0x1a0]
mov qword [r15], rax
mov qword [rcx + 0x1a0], r15
jmp 0x1400f3435
cmp dword [0x140227480], edi
je 0x1400f3534
mov rcx, qword [0x14022f738]
test rcx, rcx
je 0x1400f34f6
call qword [0x140227500]
mov rcx, r15
call qword [0x1402274b8]
dec qword [0x14022f6c8]
movsxd rcx, eax
sub qword [0x14022f680], rcx
mov rcx, r15
call qword [0x1402274a8]
mov rcx, qword [0x14022f738]
test rcx, rcx
je 0x1400f3435
call qword [0x140227510]
jmp 0x1400f3435
mov rcx, r15
call qword [0x1402274a8]
jmp 0x1400f3435
mov r8d, dword [rsp + 0xd8]
mov rdx, qword [r13 + 0x18]
call fcn.140126660
mov r14d, eax
jmp 0x1400f3443
or word [rbx + 0x12], 4
movsxd rax, dword [rbx + 0x18]
test eax, eax
js 0x1400f358c
mov rcx, rax
mov rax, qword [rbx + 8]
shl rcx, 6
mov rbx, rcx
add rbx, qword [rax + 0x20]
add byte [rbx + 0x16], 0xff
jne 0x1400f358c
inc edi
test byte [rbx + 0x12], 4
je 0x1400f3452
mov eax, r14d
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret