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

Disassembly:
mov qword [rsp + 0x20], r9
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, 0xb8
mov rax, qword [rcx + 0x80]
mov r12, rcx
mov qword [rsp + 0xa0], rax
mov r13d, edx
mov eax, dword [rcx + 0x104]
mov r15, r8
mov rcx, qword [rcx + 8]
mov rbx, rdx
mov edx, dword [r12 + 0x1c]
sub r13d, ecx
mov rdi, qword [r12 + 0xf8]
mov r9d, 1
shlx r10d, r9d, eax
mov qword [rsp + 0x98], rcx
mov r8d, r13d
mov dword [rsp + 0x38], r13d
mov esi, 3
mov qword [rsp + 0x48], rdi
lea eax, [r10 - 1]
mov dword [rsp + 0x5c], eax
mov eax, dword [r12 + 0x18]
mov dword [rsp + 0x30], eax
add rax, rcx
mov qword [rsp + 0x78], rax
mov eax, dword [r12 + 0x100]
shlx ecx, r9d, eax
sub r8d, ecx
mov eax, r13d
sub eax, edx
cmp eax, ecx
mov eax, r13d
mov rcx, rbx
cmovbe r8d, edx
cmp dword [r12 + 0x28], 0
cmovne r8d, edx
mov edx, dword [rdi + 0x108]
sub eax, r10d
mov dword [rsp + 0x34], r8d
xor r14d, r14d
cmp r13d, r10d
cmovbe eax, r14d
sub edx, 2
mov dword [rsp + 0x58], eax
mov eax, dword [r12 + 0x10c]
shlx ebp, r9d, eax
mov dword [rsp + 0x54], ebp
call fcn.14033a4e0
lea rax, [rax*4]
lea rcx, [rax*4]
mov qword [rsp + 0x70], rax
mov rax, qword [rdi + 0x70]
mov qword [rsp + 0x60], rcx
prefetcht0 byte [rcx + rax]
mov eax, dword [r12 + 0x12c]
mov ecx, 1
mov edx, dword [r12 + 0x108]
mov dword [rsp + 0x50], eax
mov rax, qword [r12 + 0x70]
mov qword [rsp + 0x68], rax
mov rax, qword [r12 + 0x80]
mov qword [rsp + 0x90], rax
mov eax, dword [r12 + 0x104]
shlx r8d, ecx, eax
mov rcx, qword [r12 + 8]
mov eax, ebx
mov r12d, dword [r12 + 0x2c]
sub eax, ecx
dec r8d
mov dword [rsp + 0x40], edx
mov qword [rsp + 0x88], rcx
mov dword [rsp + 0x3c], eax
cmp r12d, eax
jae 0x14035283e
mov rsi, qword [rsp + 0x68]
mov r13d, eax
mov ebx, dword [rsp + 0x50]
mov ebp, edx
mov r15d, r8d
mov r14, rcx
nop word [rax + rax]
mov edi, r12d
mov edx, ebp
lea rcx, [rdi + r14]
call fcn.14033a4e0
mov rdx, qword [rsp + 0x90]
mov rcx, r15
and rcx, rdi
lea r8, [rsi + rax*4]
mov eax, dword [rsi + rax*4]
mov dword [rdx + rcx*4], eax
mov dword [r8], r12d
inc r12d
test ebx, ebx
jne 0x140352815
cmp r12d, r13d
jb 0x1403527e0
mov rbx, qword [rsp + 0x108]
mov esi, 3
mov ebp, dword [rsp + 0x54]
xor r14d, r14d
mov r15, qword [rsp + 0x110]
mov r13d, dword [rsp + 0x38]
mov eax, dword [rsp + 0x3c]
mov edx, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x100]
mov dword [rcx + 0x2c], eax
mov rcx, rbx
call fcn.14033a4e0
mov rcx, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x34]
mov edi, dword [rcx + rax*4]
cmp edi, r8d
mov ecx, r14d
mov eax, r14d
setae cl
test ebp, ebp
setne al
test eax, ecx
je 0x1403528f9
nop word [rax + rax]
mov rdx, qword [rsp + 0x98]
mov eax, dword [rsi + rbx - 3]
mov r12d, edi
add rdx, r12
cmp dword [rdx + rsi - 3], eax
jne 0x1403528cb
mov r8, r15
mov rcx, rbx
call fcn.14033a3d0
cmp rax, rsi
jbe 0x1403528c6
mov rdx, qword [rsp + 0x118]
mov ecx, r13d
sub ecx, edi
mov rsi, rax
add ecx, 3
add rax, rbx
mov qword [rdx], rcx
cmp rax, r15
je 0x1403528f9
mov r8d, dword [rsp + 0x34]
cmp edi, dword [rsp + 0x58]
jbe 0x1403528f9
mov rcx, qword [rsp + 0xa0]
mov eax, dword [rsp + 0x5c]
and rax, r12
mov edi, dword [rcx + rax*4]
cmp edi, r8d
mov ecx, r14d
mov eax, r14d
setae cl
add ebp, 0xffffffff
setne al
test eax, ecx
jne 0x140352880
mov r8, qword [rsp + 0x48]
mov edx, 3
mov eax, dword [rsp + 0x30]
mov edi, edx
mov rcx, qword [rsp + 0x60]
mov r9, qword [r8]
mov r13, qword [r8 + 8]
sub eax, r9d
mov r10, qword [r8 + 0x70]
add eax, r13d
cmp ebp, edx
mov qword [rsp + 0x100], r9
mov dword [rsp + 0x30], eax
cmovb edi, ebp
add rcx, r10
mov dword [rsp + 0x108], edi
nop word [rax + rax]
mov eax, dword [rcx]
prefetcht0 byte [rax + r13]
lea rcx, [rcx + 4]
sub rdx, 1
jne 0x140352940
mov rdx, qword [rsp + 0x70]
mov ecx, dword [r10 + rdx*4 + 0xc]
lea rax, [rdx*4 + 0x10]
mov qword [rsp + 0x60], rax
mov rax, qword [r8 + 0x80]
shr rcx, 8
prefetcht0 byte [rax + rcx*4]
mov r12d, r14d
test edi, edi
je 0x140352a14
mov rax, qword [r8 + 0x70]
mov ecx, r12d
add rcx, rdx
mov edi, dword [rax + rcx*4]
lea rdx, [rdi + r13]
test edi, edi
je 0x140352ad6
mov eax, dword [rbx]
cmp dword [rdx], eax
jne 0x1403529f5
mov rax, qword [rsp + 0x78]
lea rcx, [rbx + 4]
add rdx, 4
mov qword [rsp + 0x20], rax
mov r8, r15
call fcn.14033a470
lea rcx, [rax + 4]
cmp rcx, rsi
jbe 0x1403529e8
mov eax, dword [rsp + 0x38]
mov rsi, rcx
mov rdx, qword [rsp + 0x118]
sub eax, edi
sub eax, dword [rsp + 0x30]
add eax, 3
mov qword [rdx], rax
lea rax, [rcx + rbx]
cmp rax, r15
je 0x140352a0c
mov r9, qword [rsp + 0x100]
mov r8, qword [rsp + 0x48]
inc r12d
cmp r12d, dword [rsp + 0x108]
jae 0x140352a14
mov rdx, qword [rsp + 0x70]
jmp 0x140352982
mov rax, rcx
jmp 0x140352ad9
mov rax, qword [r8 + 0x70]
sub ebp, r12d
mov rcx, qword [rsp + 0x60]
mov edx, r14d
mov ecx, dword [rcx + rax - 4]
mov edi, ecx
shr edi, 8
movzx eax, cl
cmp ebp, eax
cmova ebp, eax
test ebp, ebp
je 0x140352ad6
mov r10, qword [r8 + 0x80]
nop dword [rax]
nop word [rax + rax]
lea eax, [rdx + rdi]
mov eax, dword [r10 + rax*4]
prefetcht0 byte [rax + r13]
inc edx
cmp edx, ebp
jb 0x140352a50
mov rax, qword [r8 + 0x80]
mov r12d, dword [rax + rdi*4]
mov eax, dword [rbx]
lea rdx, [r12 + r13]
cmp dword [rdx], eax
jne 0x140352ac4
mov rax, qword [rsp + 0x78]
lea rcx, [rbx + 4]
add rdx, 4
mov qword [rsp + 0x20], rax
mov r8, r15
call fcn.14033a470
add rax, 4
cmp rax, rsi
jbe 0x140352abf
mov ecx, dword [rsp + 0x38]
mov rsi, rax
mov rdx, qword [rsp + 0x118]
sub ecx, r12d
sub ecx, dword [rsp + 0x30]
add ecx, 3
mov qword [rdx], rcx
lea rcx, [rax + rbx]
cmp rcx, r15
je 0x140352ad6
mov r8, qword [rsp + 0x48]
mov r9, qword [rsp + 0x100]
inc edi
inc r14d
cmp r14d, ebp
jb 0x140352a62
mov rax, rsi
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret