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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x20f8
call fcn.140560ac0
sub rsp, rax
movaps xmmword [rsp + 0x20e0], xmm8
movaps xmmword [rsp + 0x20d0], xmm7
movaps xmmword [rsp + 0x20c0], xmm6
mov rsi, rcx
mov rax, qword [0x1406a7e00]
xor rax, rsp
mov qword [rsp + 0x20b8], rax
mov dword [rcx], 0
mov dword [rcx + 0x28], 0
mov qword [rcx + 0x30], 0
xorps xmm0, xmm0
movups xmmword [rcx + 8], xmm0
movups xmmword [rcx + 0x15], xmm0
mov dword [rcx + 0x38], 0x10000
mov byte [rcx + 0x3c], 0
mov qword [rcx + 0x40], 0
movups xmmword [rcx + 0x50], xmm0
movups xmmword [rcx + 0x70], xmm0
movups xmmword [rcx + 0x80], xmm0
movups xmmword [rcx + 0x8c], xmm0
movups xmmword [rcx + 0xa0], xmm0
movups xmmword [rcx + 0xb0], xmm0
mov dword [rcx + 0xc0], 0
test rdx, rdx
je 0x14035c286
mov rbx, rdx
lea r15, [rsi + 0x50]
lea rax, [rsi + 0xa0]
mov dword [rsi + 0x48], 0
movups xmmword [r15 + 0x10], xmm0
movups xmmword [r15], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rsp + 0x38], rax
movups xmmword [rax], xmm0
mov rcx, rdx
call fcn.14034d760
mov dword [rsi + 0x38], eax
mov byte [rsi + 0x3c], 1
mov rcx, rbx
mov edx, 0x43464632
call fcn.14034d700
mov rcx, rsi
mov rdx, rax
call fcn.14035cb40
mov qword [rsi + 0x40], rax
mov rcx, rax
call fcn.14034cb90
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x24], 0
mov rcx, qword [rax + 0x10]
mov qword [rsi + 8], rcx
mov edx, dword [rax + 0x18]
lea rax, [rcx + rdx]
mov qword [rsi + 0x10], rax
cmp rdx, 0x3ffffff
ja 0x14035c24a
shl edx, 6
cmp edx, 0x4001
mov r8d, 0x4000
cmovae r8d, edx
cmp r8d, 0x3fffffff
mov edx, 0x3fffffff
cmovb edx, r8d
mov dword [rsi + 0x18], edx
mov dword [rsi + 0x28], 0
mov dword [rsi], 0
mov dword [rsi + 0x20], 0
mov r8, qword [rsi + 0x40]
cmp dword [r8 + 0x18], 5
jb 0x14035c27e
mov rbx, qword [r8 + 0x10]
lea r8, [0x1405d7500]
cmp rbx, r8
je 0x14035c27e
movzx r12d, byte [rbx + 2]
add r12, rbx
movzx r8d, word [rbx + 3]
rol r8w, 8
movzx ebp, r8w
test bp, bp
je 0x14035bb36
cmp rcx, r12
ja 0x14035c27e
cmp rax, r12
jb 0x14035c27e
sub eax, r12d
cmp ebp, eax
ja 0x14035c27e
sub edx, ebp
mov dword [rsi + 0x18], edx
jle 0x14035c27e
lea rax, [rsi + 8]
mov qword [rsp + 0x30], rax
lea r14, [rsi + 0x48]
lea rdi, [rsi + 0x70]
lea rax, [rsi + 0xb0]
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0x5c]
xor r13d, r13d
mov r8d, 0x100c
xor edx, edx
call fcn.140562a70
xorps xmm0, xmm0
movaps xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x49], xmm0
mov qword [rsp + 0x48], r12
mov dword [rsp + 0x50], ebp
mov dword [r14], 0
movups xmmword [r15 + 0x10], xmm0
movups xmmword [r15], xmm0
lea r15, [rsp + 0x40]
nop word cs:[rax + rax]
lea eax, [r13 + 1]
cmp eax, ebp
ja 0x14035bc07
mov rdx, qword [rsp + 0x48]
mov ecx, r13d
movzx ecx, byte [rdx + rcx]
mov dword [rsp + 0x54], eax
cmp ecx, 0xc
jne 0x14035bbd7
add r13d, 2
cmp r13d, ebp
ja 0x14035bc00
mov eax, eax
movzx ecx, byte [rdx + rax]
or ecx, 0x100
mov dword [rsp + 0x54], r13d
mov rdx, r15
mov r8, r14
call fcn.14035cc60
mov ebp, dword [rsp + 0x50]
mov r13d, dword [rsp + 0x54]
cmp r13d, ebp
ja 0x14035c27e
cmp byte [rsp + 0x58], 0
je 0x14035bba0
jmp 0x14035c27e
mov ecx, 0xffff
jmp 0x14035bbd7
movzx eax, byte [rbx + 2]
movzx ecx, word [rbx + 3]
rol cx, 8
movzx ecx, cx
add rax, rbx
add rax, rcx
mov qword [rsi + 0x70], rax
mov eax, dword [rsi + 0x68]
lea rcx, [rbx + rax]
test rax, rax
lea r14, [0x1405d7500]
cmove rcx, r14
mov qword [rsi + 0x78], rcx
mov edx, dword [rsi + 0x60]
mov r8d, dword [rsi + 0x64]
lea rax, [rbx + rdx]
test rdx, rdx
cmove rax, r14
mov qword [rsi + 0x80], rax
lea rdx, [rbx + r8]
test r8, r8
cmove rdx, r14
mov qword [rsi + 0x88], rdx
mov edx, dword [rsi + 0x6c]
lea r8, [rbx + rdx]
test rdx, rdx
cmove r8, r14
mov qword [rsi + 0x90], r8
cmp rcx, r14
je 0x14035bc95
mov rdx, rsi
call fcn.14035c2d0
test al, al
je 0x14035c27e
mov rax, qword [rsi + 0x80]
cmp rax, r14
je 0x14035c27e
mov rcx, rax
mov rdx, rsi
call fcn.14035c3d0
test al, al
je 0x14035c27e
mov rcx, qword [rdi]
cmp rcx, r14
je 0x14035c27e
mov rdx, rsi
call fcn.14035c3d0
test al, al
je 0x14035c27e
mov rcx, qword [rsi + 0x88]
cmp rcx, r14
je 0x14035c27e
mov rdx, rsi
call fcn.14035c3d0
test al, al
je 0x14035c27e
mov rcx, qword [rsi + 0x90]
cmp rcx, r14
je 0x14035bd16
mov rax, qword [rsi + 0x88]
mov r8d, dword [rax]
bswap r8d
mov rdx, rsi
call fcn.14035c5e0
test al, al
je 0x14035c27e
mov rax, qword [rsi + 0x80]
mov eax, dword [rax]
bswap eax
mov dword [rsi + 0xc0], eax
cmp eax, dword [rsi + 0x38]
jne 0x14035c27e
mov rax, qword [rsi + 0x88]
mov edx, dword [rax]
bswap edx
mov dword [rsi + 0x98], edx
mov rcx, qword [rsp + 0x28]
mov r8b, 1
xor r9d, r9d
call fcn.14035c670
test al, al
je 0x14035c27e
cmp dword [rsi + 0x98], 0
je 0x14035c286
xorps xmm6, xmm6
lea r12, [rsp + 0x40]
lea r13, [rsp + 0x1070]
xor ebp, ebp
jmp 0x14035bd8c
inc rbp
mov eax, dword [rsi + 0x98]
cmp rbp, rax
jae 0x14035c286
mov rcx, qword [rsi + 0x88]
lea rdx, [rsp + 0x20a0]
mov r8d, ebp
call fcn.14035c7d0
mov eax, dword [rsp + 0x20b0]
test eax, eax
je 0x14035bdeb
mov rcx, qword [rsp + 0x20a8]
mov rdx, qword [rsp + 0x30]
cmp qword [rdx], rcx
ja 0x14035c27e
mov rdx, qword [rsi + 0x10]
cmp rdx, rcx
jb 0x14035c27e
sub edx, ecx
cmp eax, edx
ja 0x14035c27e
mov ecx, dword [rsi + 0x18]
sub ecx, eax
mov dword [rsi + 0x18], ecx
test ecx, ecx
jle 0x14035c27e
mov r8d, 0x100c
lea rcx, [rsp + 0x108c]
xor edx, edx
call fcn.140562a70
mov byte [rsp + 0x1088], 0
mov rax, qword [rsp + 0x20b0]
mov qword [rsp + 0x1080], rax
movups xmm0, xmmword [rsp + 0x20a0]
movaps xmmword [rsp + 0x1070], xmm0
mov dword [rsp + 0x1084], 0
mov edx, dword [rsi + 0xa4]
inc edx
mov rcx, qword [rsp + 0x38]
mov r8b, 1
xor r9d, r9d
call fcn.14035d210
test al, al
je 0x14035c254
mov rdi, qword [rsi + 0xa8]
mov eax, dword [rsi + 0xa4]
dec eax
lea r15, [rax + rax*4]
lea r14, [rdi + r15*8]
mov rax, qword [0x1405d7520]
mov qword [0x1406ade60], rax
movaps xmm7, xmmword [0x1405d7510]
movaps xmmword [0x1406ade50], xmm7
movaps xmm8, xmmword [0x1405d7500]
movaps xmmword [0x1406ade40], xmm8
lea rax, [0x1406ade40]
cmp r14, rax
je 0x14035c27e
mov dword [r14], 0
movups xmmword [r14 + 8], xmm6
movups xmmword [r14 + 0x14], xmm6
mov edx, dword [rsp + 0x1080]
mov eax, dword [rsp + 0x1084]
nop word cs:[rax + rax]
lea r8d, [rax + 1]
cmp r8d, edx
ja 0x14035bf48
mov r9, qword [rsp + 0x1078]
mov ecx, eax
movzx ecx, byte [r9 + rcx]
mov dword [rsp + 0x1084], r8d
cmp ecx, 0xc
jne 0x14035bf11
add eax, 2
cmp eax, edx
ja 0x14035bf41
mov ecx, r8d
movzx ecx, byte [r9 + rcx]
or ecx, 0x100
mov dword [rsp + 0x1084], eax
mov rdx, r13
mov r8, r14
call fcn.14035d470
mov edx, dword [rsp + 0x1080]
mov eax, dword [rsp + 0x1084]
cmp eax, edx
ja 0x14035c27e
cmp byte [rsp + 0x1088], 0
je 0x14035bed0
jmp 0x14035c27e
mov ecx, 0xffff
jmp 0x14035bf11
mov eax, dword [rdi + r15*8 + 0x18]
mov r14d, dword [rdi + r15*8 + 0x1c]
lea rdi, [rbx + rax]
test rax, rax
lea rax, [0x1405d7500]
cmove rdi, rax
test r14d, r14d
je 0x14035bfa0
mov rax, qword [rsp + 0x30]
cmp qword [rax], rdi
ja 0x14035c27e
mov rax, qword [rsi + 0x10]
cmp rax, rdi
jb 0x14035c27e
sub eax, edi
cmp r14d, eax
ja 0x14035c27e
mov eax, dword [rsi + 0x18]
sub eax, r14d
mov dword [rsi + 0x18], eax
test eax, eax
jle 0x14035c27e
mov r8d, 0x100c
lea rcx, [rsp + 0x5c]
xor edx, edx
call fcn.140562a70
movaps xmmword [rsp + 0x40], xmm6
movups xmmword [rsp + 0x49], xmm6
mov qword [rsp + 0x48], rdi
mov dword [rsp + 0x50], r14d
mov dword [rsp + 0x1068], 0
mov byte [rsp + 0x106c], 0
mov eax, dword [rsi + 0xb4]
lea r15, [rbp*2]
add r15, rbp
cmp rbp, rax
jae 0x14035c175
mov rax, r15
shl rax, 4
add rax, qword [rsi + 0xb8]
lea rcx, [0x1405d7500]
mov dword [rsp + 0x28], r14d
mov dword [rax], 0
movups xmmword [rax + 8], xmm6
mov dword [rax + 0x18], 0
mov qword [rax + 0x20], rcx
mov dword [rax + 0x28], 0
mov eax, dword [rsi + 0xb4]
cmp rbp, rax
jae 0x14035c19e
mov r14, r15
shl r14, 4
add r14, qword [rsi + 0xb8]
mov dword [r14], 0
movups xmmword [r14 + 8], xmm6
mov dword [r14 + 0x18], 0
lea rax, [0x1405d7500]
mov qword [r14 + 0x20], rax
mov dword [r14 + 0x28], 0
mov edx, dword [rsp + 0x50]
mov eax, dword [rsp + 0x54]
nop word cs:[rax + rax]
lea r8d, [rax + 1]
cmp r8d, edx
ja 0x14035c0e6
mov r9, qword [rsp + 0x48]
mov ecx, eax
movzx ecx, byte [r9 + rcx]
mov dword [rsp + 0x54], r8d
cmp ecx, 0xc
jne 0x14035c0b8
add eax, 2
cmp eax, edx
ja 0x14035c0df
mov ecx, r8d
movzx ecx, byte [r9 + rcx]
or ecx, 0x100
mov dword [rsp + 0x54], eax
mov rdx, r12
mov r8, r14
call fcn.14035d590
mov edx, dword [rsp + 0x50]
mov eax, dword [rsp + 0x54]
cmp eax, edx
ja 0x14035c27e
cmp byte [rsp + 0x58], 0
je 0x14035c080
jmp 0x14035c27e
mov ecx, 0xffff
jmp 0x14035c0b8
mov eax, dword [rsi + 0xb4]
cmp rbp, rax
jae 0x14035c1c7
mov rcx, r15
shl rcx, 4
lea r8, [0x1405d7500]
mov rax, r8
cmp dword [rsp + 0x28], 0
je 0x14035c110
mov rax, rdi
mov rdx, qword [rsi + 0xb8]
mov edx, dword [rdx + rcx + 0x18]
add rax, rdx
test rdx, rdx
cmove rax, r8
add rcx, qword [rsi + 0xb8]
mov qword [rcx + 0x20], rax
mov eax, dword [rsi + 0xb4]
cmp rbp, rax
jae 0x14035c214
mov rax, qword [rsi + 0xb8]
shl r15, 4
cmp qword [rax + r15 + 0x20], r8
je 0x14035bd7a
add r15, qword [rsi + 0xb8]
mov rcx, qword [r15 + 0x20]
mov rdx, rsi
call fcn.14035c3d0
test al, al
jne 0x14035bd7a
jmp 0x14035c27e
movaps xmm0, xmmword [0x1405d7520]
movaps xmmword [0x1406ade60], xmm0
movaps xmmword [0x1406ade50], xmm7
movaps xmmword [0x1406ade40], xmm8
lea rax, [0x1406ade40]
jmp 0x14035c001
movaps xmm0, xmmword [0x1405d7520]
movaps xmmword [0x1406ade60], xmm0
movaps xmmword [0x1406ade50], xmm7
movaps xmmword [0x1406ade40], xmm8
lea r14, [0x1406ade40]
jmp 0x14035c046
movaps xmmword [0x1406ade50], xmm7
movaps xmm0, xmmword [0x1405d7520]
movaps xmmword [0x1406ade60], xmm0
movaps xmmword [0x1406ade40], xmm8
lea r8, [0x1405d7500]
mov rax, r8
cmp dword [rsp + 0x28], 0
je 0x14035c1f8
mov rax, rdi
mov ecx, dword [0x1406ade58]
add rax, rcx
test rcx, rcx
cmove rax, r8
lea rcx, [0x1406ade40]
jmp 0x14035c12c
movaps xmm0, xmmword [0x1405d7520]
movaps xmmword [0x1406ade60], xmm0
movaps xmmword [0x1406ade50], xmm7
movaps xmmword [0x1406ade40], xmm8
lea r15, [0x1406ade40]
cmp qword [0x1406ade60], r8
jne 0x14035c15c
jmp 0x14035bd7a
mov edx, 0x3fffffff
jmp 0x14035bab9
mov rax, qword [0x1405d7520]
mov qword [0x1406ade60], rax
movaps xmm0, xmmword [0x1405d7510]
movaps xmmword [0x1406ade50], xmm0
movaps xmm0, xmmword [0x1405d7500]
movaps xmmword [0x1406ade40], xmm0
mov rcx, rsi
call fcn.14035c9d0
mov rcx, qword [rsp + 0x20b8]
xor rcx, rsp
call fcn.1405602f0
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x20c0]
movaps xmm7, xmmword [rsp + 0x20d0]
movaps xmm8, xmmword [rsp + 0x20e0]
add rsp, 0x20f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret