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

Disassembly:
mov qword [rsp + 0x18], rbx
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x20
mov rbx, qword [rcx + 0x10]
mov r14, qword [rcx]
mov rsi, rcx
xor edi, edi
add rbx, 0x38
xor r12d, r12d
lea edx, [rdi + 8]
mov rcx, rbx
xor r15d, r15d
call fcn.1402364e0
cmp dword [rsi + 0x84], 7
mov qword [rsi + 0x28], rdi
jne 0x140236729
mov byte [r14 + 0x50], 1
lea eax, [rdi + 1]
mov rbx, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
mov r9d, dword [rsi + 0x8c]
mov r10d, dword [rsi + 0x3c]
mov qword [rsp + 0x50], rbp
and r9d, 3
cmp r9d, 1
jne 0x1402367ad
mov r15, qword [rsi + 0x10]
add r15, 0x1f8
test byte [r15 + 0x24], 0x10
je 0x140236761
movsxd r12, dword [r15 + 0x20]
mov rdi, qword [r15 + 8]
shr r12, 3
movsxd rbp, r12d
xor edx, edx
xor r8d, r8d
xor ecx, ecx
cmp rbp, 2
jl 0x140236799
lea r11, [rbp - 1]
nop word [rax + rax]
mov rax, qword [rdi + rcx*8]
add rcx, 2
add edx, dword [rax + 8]
mov rax, qword [rdi + rcx*8 - 8]
add r8d, dword [rax + 8]
cmp rcx, r11
jl 0x140236780
cmp rcx, rbp
jge 0x1402367a6
mov rax, qword [rdi + rcx*8]
add r10d, dword [rax + 8]
lea eax, [r8 + rdx]
add r10d, eax
mov qword [rsp + 0x58], r13
nop dword [rax]
nop word [rax + rax]
movsxd rdx, dword [rsi + 0x80]
lea eax, [rdx + 1]
mov dword [rsi + 0x80], eax
cmp edx, r10d
jge 0x140236b87
cmp r9d, 2
jne 0x1402367ed
mov rax, qword [rsi + 8]
lea rcx, [rdx + rdx*2]
cmp byte [rax + rcx*8], 0x9c
jne 0x1402367c0
mov eax, dword [r14 + 0x138]
test eax, eax
je 0x140236834
mov rax, qword [0x140329f68]
lea r9, [0x1403349c8]
lea rcx, [rsi + 0x48]
test rax, rax
lea r8, [0x14036b948]
mov rdx, r14
cmovne r9, rax
mov dword [rsi + 0x84], 9
mov edi, 1
call fcn.140216090
jmp 0x140236b96
mov eax, dword [rsi + 0x3c]
cmp edx, eax
jge 0x140236848
mov rax, qword [rsi + 8]
mov r8, rdx
lea rcx, [rdx + rdx*2]
jmp 0x140236886
sub edx, eax
mov rax, qword [rdi]
xor r9d, r9d
mov ecx, dword [rax + 8]
cmp edx, ecx
jl 0x140236875
xor r8d, r8d
nop word [rax + rax]
mov rax, qword [rdi + r8*8 + 8]
sub edx, ecx
lea r8, [r8 + 1]
mov ecx, dword [rax + 8]
inc r9d
cmp edx, ecx
jge 0x140236860
movsxd rax, r9d
movsxd r8, edx
mov rax, qword [rdi + rax*8]
lea rcx, [r8 + r8*2]
mov rax, qword [rax]
lea r13, [rax + rcx*8]
mov eax, dword [rsi + 0x8c]
mov r14d, 4
and al, 3
mov ecx, 0xa02
cmp al, 1
jne 0x140236956
mov word [rbx + 0x24], r14w
mov qword [rbx + 0x18], r8
mov word [rbx + 0x5c], cx
movzx eax, byte [r13]
lea rcx, [0x1403298f0]
mov rcx, qword [rcx + rax*8]
mov qword [rbx + 0x40], rcx
mov rax, rcx
test rcx, rcx
je 0x1402368e2
cmp byte [rcx], 0
je 0x1402368db
inc rax
cmp byte [rax], 0
jne 0x1402368d3
sub eax, ecx
and eax, 0x3fffffff
mov dword [rbx + 0x58], eax
mov byte [rbx + 0x5e], 1
add rbx, 0x70
cmp byte [r13 + 1], 0xee
jne 0x140236956
xor ecx, ecx
lea ebp, [r12*8 + 8]
test r12d, r12d
jle 0x140236920
mov rdx, qword [r13 + 0x10]
xor eax, eax
movsxd r8, r12d
nop dword [rax]
cmp qword [rdi + rax*8], rdx
je 0x140236920
inc rax
inc ecx
cmp rax, r8
jl 0x140236910
cmp ecx, r12d
jne 0x140236956
xor r8d, r8d
test r12d, r12d
mov edx, ebp
setne r8b
mov rcx, r15
call fcn.140233ce0
test eax, eax
jne 0x140236956
mov rax, qword [r13 + 0x10]
mov rcx, qword [r15 + 8]
movsxd rdx, r12d
mov qword [rcx + rdx*8], rax
or word [r15 + 0x24], 0x10
mov dword [r15 + 0x20], ebp
mov word [rbx + 0x24], r14w
movsxd rax, dword [r13 + 4]
xor r8d, r8d
mov qword [rbx + 0x18], rax
mov word [rbx + 0x5c], r14w
movsxd rax, dword [r13 + 8]
mov qword [rbx + 0x50], rax
mov word [rbx + 0x94], r14w
movsxd rax, dword [r13 + 0xc]
mov qword [rbx + 0x88], rax
add rbx, 0xa8
lea edx, [r8 + 0x20]
mov rcx, rbx
call fcn.140233ce0
test eax, eax
jne 0x140236b15
mov rdx, qword [rbx + 8]
mov r12d, 0x202
mov rcx, r13
mov word [rbx + 0x24], r12w
call fcn.140235f90
mov rcx, qword [rbx + 8]
mov rbp, rax
cmp rax, rcx
je 0x140236ac3
test rax, rax
jne 0x140236a11
test byte [rbx + 0x24], 0x40
je 0x1402369ec
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rdx]
mov rax, qword [rcx + 0xf8]
mov qword [rdx + 8], rax
mov qword [rcx + 0xf8], rdx
test byte [rbx + 0x24], 0x20
je 0x1402369fb
mov rcx, qword [rbx + 0x18]
call fcn.14021f560
mov eax, 0xbe01
and word [rbx + 0x24], ax
or word [rbx + 0x24], 1
xor r15d, r15d
jmp 0x140236af1
mov rax, qword [rbx]
test rax, rax
je 0x140236a1e
mov ecx, dword [rax + 0x68]
jmp 0x140236a23
mov ecx, 0x3b9aca00
xor r15d, r15d
movsxd rcx, ecx
mov edi, r15d
mov eax, r15d
test rcx, rcx
js 0x140236a44
cmp byte [rax + rbp], r15b
je 0x140236a44
inc rax
inc edi
cmp rax, rcx
jle 0x140236a34
lea rax, [0x140215ab0]
movzx r14d, r12w
test rax, rax
mov eax, 0x2460
jne 0x140236a82
test word [rbx + 0x24], ax
je 0x140236a67
mov rcx, rbx
call fcn.140234140
mov rdx, qword [rbx + 0x30]
test rdx, rdx
je 0x140236a7c
mov rcx, qword [rbx]
call fcn.140215b70
mov qword [rbx + 0x30], r15
mov qword [rbx + 0x30], rbp
jmp 0x140236aab
test word [rbx + 0x24], ax
je 0x140236a90
mov rcx, rbx
call fcn.140234140
mov rdx, qword [rbx + 0x30]
test rdx, rdx
je 0x140236aa5
mov rcx, qword [rbx]
call fcn.140215b70
mov qword [rbx + 0x30], r15
mov r14d, 0xa02
mov word [rbx + 0x24], r14w
mov qword [rbx + 0x28], r15
mov qword [rbx + 8], rbp
mov r14d, 4
mov dword [rbx + 0x20], edi
jmp 0x140236aed
mov rax, rcx
test rcx, rcx
jne 0x140236ad3
xor r15d, r15d
mov eax, r15d
jmp 0x140236aea
cmp byte [rcx], 0
je 0x140236ae0
inc rax
cmp byte [rax], 0
jne 0x140236ad8
sub eax, ecx
and eax, 0x3fffffff
xor r15d, r15d
mov dword [rbx + 0x20], eax
mov byte [rbx + 0x26], 1
mov eax, dword [rsi + 0x8c]
mov ebp, 2
and al, 3
cmp al, 1
jne 0x140236b51
lea rcx, [rbx + 0x38]
xor r8d, r8d
mov edx, r14d
call fcn.140233ce0
test eax, eax
je 0x140236b1f
mov eax, 1
jmp 0x140236b98
mov rdx, qword [rbx + 0x40]
mov word [rbx + 0x5c], r12w
mov dword [rbx + 0x58], ebp
movzx r9d, byte [r13 + 3]
lea r8, str._.2x
mov ecx, 3
call fcn.1402179e0
mov edi, 1
mov byte [rbx + 0x5e], 1
mov word [rbx + 0x94], di
movzx eax, word [rsi + 0x8c]
mov dword [rsi + 0x84], r15d
mov edi, 0x64
and ax, 3
dec ax
sub bp, ax
mov rax, qword [rsi + 0x10]
shl bp, 2
add rax, 0x38
mov qword [rsi + 0x28], rax
mov word [rsi + 0x88], bp
jmp 0x140236b96
mov dword [rsi + 0x84], 0
mov edi, 0x65
mov eax, edi
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret