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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov rax, rcx
movzx r14d, byte [rcx + 0x104]
mov r10d, 1
mov ecx, r14d
shl r10d, cl
mov r11, qword [rax + 8]
mov ecx, dword [rax + 0x18]
mov qword [rsp + 0x80], rcx
add rcx, r11
mov qword [rsp + 0x88], rcx
mov r15d, edx
sub r15d, r11d
movzx ecx, byte [rax + 0x100]
mov esi, 1
shl esi, cl
mov ecx, dword [rax + 0x1c]
mov edi, r15d
sub edi, ecx
mov ebx, r15d
sub ebx, esi
cmp edi, esi
cmovbe ebx, ecx
mov ebp, 1
cmp dword [rax + 0x28], 0
cmovne ebx, ecx
xor ecx, ecx
mov esi, r15d
sub esi, r10d
cmovb esi, ecx
mov dword [rsp + 0x48], esi
movzx ecx, byte [rax + 0x10c]
shl ebp, cl
mov qword [rsp + 0x70], r9
mov qword [rsp + 0x28], rdx
imul r13d, dword [rdx], 0x9e3779b1
mov rdx, qword [rax + 0xf8]
mov cl, 0x22
sub cl, byte [rdx + 0x108]
shr r13d, cl
mov qword [rsp + 0x30], r8
lea rcx, [r13*4]
mov qword [rsp + 0x68], rcx
shl r13, 4
mov r8, qword [rax + 0x80]
mov qword [rsp + 0x50], rdx
mov rcx, qword [rdx + 0x70]
prefetcht0 byte [rcx + r13]
mov r9d, 0xffffffff
mov ecx, r14d
shl r9d, cl
mov ecx, 0x20
sub ecx, dword [rax + 0x108]
mov esi, dword [rax + 0x2c]
cmp esi, r15d
mov qword [rsp + 0x40], r15
mov edi, r15d
cmova edi, esi
lea edx, [r10 - 1]
mov dword [rsp + 0x3c], edx
not r9d
mov r14d, dword [rax + 0x12c]
mov r10, qword [rax + 0x70]
nop word [rax + rax]
cmp rdi, rsi
je 0x1400eac69
imul r12d, dword [r11 + rsi], 0x9e3779b1
shr r12d, cl
mov edx, esi
and edx, r9d
mov r15d, dword [r10 + r12*4]
mov dword [r8 + rdx*4], r15d
mov dword [r10 + r12*4], esi
inc rsi
test r14d, r14d
je 0x1400eac40
mov rdi, qword [rsp + 0x40]
mov dword [rax + 0x2c], edi
mov r9, qword [rsp + 0x28]
imul eax, dword [r9], 0x9e3779b1
shr eax, cl
mov ecx, dword [r10 + rax*4]
mov esi, 3
cmp ecx, ebx
jae 0x1400eadc4
mov r15, qword [rsp + 0x80]
mov r8, qword [rsp + 0x50]
mov rax, qword [r8]
mov rbx, qword [r8 + 8]
mov qword [rsp + 0x48], rax
mov r14d, eax
sub r14d, ebx
sub r14d, r15d
mov rax, qword [r8 + 0x70]
mov r10, qword [rsp + 0x68]
lea rcx, [r10*4]
mov edx, dword [rax + r10*4]
prefetcht0 byte [rbx + rdx]
mov rdx, rcx
or rdx, 4
mov edx, dword [rax + rdx]
prefetcht0 byte [rbx + rdx]
or rcx, 8
mov ecx, dword [rax + rcx]
cmp ebp, 3
mov edx, 3
cmovb edx, ebp
prefetcht0 byte [rbx + rcx]
or r10, 3
mov r15d, dword [rax + r10*4]
mov rax, r15
shr rax, 8
mov rcx, qword [r8 + 0x80]
prefetcht0 byte [rcx + rax*4]
test edx, edx
je 0x1400eaf6b
mov qword [rsp + 0x68], r10
lea r12, [r9 + 4]
mov qword [rsp + 0x60], r14
lea eax, [rdi + r14]
add eax, 3
mov dword [rsp + 0x3c], eax
mov dword [rsp + 0x58], edx
mov r15d, edx
mov rdi, rsi
jmp 0x1400ead4d
add r13, 4
dec r15
je 0x1400eaf47
mov rax, qword [r8 + 0x70]
mov r14d, dword [rax + r13]
test r14, r14
je 0x1400eaf3f
lea rdx, [rbx + r14]
mov eax, dword [rdx]
cmp eax, dword [r9]
jne 0x1400ead40
add rdx, 4
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x20], rax
mov rcx, r12
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x48]
call fcn.1400b81d0
mov r8, qword [rsp + 0x50]
mov r9, qword [rsp + 0x28]
mov rsi, rax
add rsi, 4
cmp rsi, rdi
jbe 0x1400ead40
mov eax, dword [rsp + 0x3c]
sub eax, r14d
mov rcx, qword [rsp + 0x70]
mov qword [rcx], rax
lea rax, [r9 + rsi]
mov rdi, rsi
cmp rax, qword [rsp + 0x30]
jne 0x1400ead40
jmp 0x1400eb093
mov rdx, qword [rsp + 0x30]
lea rax, [rdx - 7]
lea r10, [rdx - 3]
mov qword [rsp + 0x60], r10
dec rdx
mov qword [rsp + 0x58], rdx
lea edx, [rdi + 3]
mov dword [rsp + 0x7c], edx
lea r10, [r9 + 8]
lea rdx, [r11 + 8]
mov qword [rsp + 0x90], rdx
mov r15, qword [rsp + 0x80]
nop dword [rax]
mov r12d, ecx
lea rcx, [r11 + r12]
mov edx, dword [rsi + rcx - 3]
cmp edx, dword [r9 + rsi - 3]
jne 0x1400eaf16
cmp rax, r9
jbe 0x1400eae40
mov r9, qword [r9]
xor r9, qword [rcx]
je 0x1400eae5b
tzcnt r14, r9
shr r14, 3
mov r9, qword [rsp + 0x28]
cmp r14, rsi
ja 0x1400eaef5
jmp 0x1400eaf16
mov r14, r9
cmp r14, qword [rsp + 0x60]
jae 0x1400eaec0
mov edx, dword [rcx]
cmp edx, dword [r14]
jne 0x1400eaec0
add r14, 4
add rcx, 4
jmp 0x1400eaec0
mov rcx, qword [rsp + 0x90]
add rcx, r12
xor edi, edi
nop dword [rax + rax]
lea r14, [r10 + rdi]
cmp r14, rax
jae 0x1400eaea6
mov r14, qword [r14]
lea r9, [rdi + 8]
xor r14, qword [rcx + rdi]
mov rdi, r9
je 0x1400eae70
tzcnt r14, r14
shr r14, 3
add r14, r9
mov r9, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x40]
cmp r14, rsi
ja 0x1400eaef5
jmp 0x1400eaf16
add rcx, rdi
mov r9, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x40]
cmp r14, qword [rsp + 0x60]
jb 0x1400eae4a
nop word [rax + rax]
cmp r14, qword [rsp + 0x58]
jae 0x1400eaed8
movzx edx, word [rcx]
cmp dx, word [r14]
jne 0x1400eaed8
add r14, 2
add rcx, 2
cmp r14, qword [rsp + 0x30]
jae 0x1400eaeed
movzx ecx, byte [rcx]
xor edx, edx
cmp cl, byte [r14]
sete dl
add r14, rdx
sub r14, r9
cmp r14, rsi
jbe 0x1400eaf16
mov ecx, dword [rsp + 0x7c]
sub ecx, r12d
mov rdx, qword [rsp + 0x70]
mov qword [rdx], rcx
lea rcx, [r9 + r14]
mov rsi, r14
cmp rcx, qword [rsp + 0x30]
je 0x1400eb0aa
cmp r12d, dword [rsp + 0x48]
jbe 0x1400eac98
dec ebp
je 0x1400eac98
and r12d, dword [rsp + 0x3c]
mov ecx, dword [r8 + r12*4]
cmp ecx, ebx
jae 0x1400eae00
jmp 0x1400eac98
mov rsi, rdi
jmp 0x1400eb093
mov rax, qword [r8 + 0x70]
mov rcx, qword [rsp + 0x68]
mov r15d, dword [rax + rcx*4]
mov eax, r15d
shr eax, 8
mov rsi, rdi
mov rdi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x60]
mov edx, dword [rsp + 0x58]
movzx ecx, r15b
sub ebp, edx
cmp ebp, ecx
cmovae ebp, ecx
test ebp, ebp
je 0x1400eb093
mov rcx, qword [r8 + 0x80]
mov edx, eax
mov r8d, ebp
mov eax, r8d
and eax, 3
cmp ebp, 4
jae 0x1400eaf9a
xor r9d, r9d
jmp 0x1400eafe0
and r8d, 0xfc
lea r10, [rcx + rdx*4]
add r10, 0xc
xor r9d, r9d
nop dword [rax]
mov r11d, dword [r10 + r9*4 - 0xc]
prefetcht0 byte [rbx + r11]
mov r11d, dword [r10 + r9*4 - 8]
prefetcht0 byte [rbx + r11]
mov r11d, dword [r10 + r9*4 - 4]
prefetcht0 byte [rbx + r11]
mov r11d, dword [r10 + r9*4]
prefetcht0 byte [rbx + r11]
add r9, 4
cmp r8, r9
jne 0x1400eafb0
test rax, rax
je 0x1400eb001
add r9, rdx
lea rcx, [rcx + r9*4]
xor edx, edx
nop
mov r8d, dword [rcx + rdx*4]
prefetcht0 byte [rbx + r8]
inc rdx
cmp rax, rdx
jne 0x1400eaff0
mov rax, qword [rsp + 0x28]
lea r12, [rax + 4]
add r14d, edi
add r14d, 3
shr r15d, 8
mov edi, dword [rax]
mov r9, qword [rsp + 0x50]
jmp 0x1400eb02c
mov edi, dword [rdx]
mov rsi, rax
inc r15
dec ebp
je 0x1400eb093
mov rax, qword [r9 + 0x80]
mov r13d, dword [rax + r15*4]
cmp dword [rbx + r13], edi
jne 0x1400eb025
lea rdx, [rbx + r13]
add rdx, 4
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x20], rax
mov rcx, r12
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x48]
call fcn.1400b81d0
mov r9, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x28]
add rax, 4
cmp rax, rsi
jbe 0x1400eb025
mov ecx, r14d
sub ecx, r13d
mov r8, qword [rsp + 0x70]
mov qword [r8], rcx
lea rcx, [rdx + rax]
cmp rcx, qword [rsp + 0x30]
jne 0x1400eb020
mov rsi, rax
mov rax, rsi
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rsi, r14
jmp 0x1400eac98