Function at 0x1404e65b0
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, 0x78
movdqa xmmword [rsp + 0x60], xmm6
mov r13, rcx
mov rax, qword [0x1406a7e00]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov rax, qword [rcx + 8]
mov r8d, 0x98
mov edx, 1
call qword [rax]
mov qword [r13 + 0x270], rax
lea rcx, [0x1404e6bb0]
mov qword [rax], rcx
lea rcx, [fcn.140002830]
mov qword [rax + 0x10], rcx
lea rcx, [0x1404e6e60]
mov qword [rax + 0x18], rcx
mov qword [rax + 0x70], 0
mov qword [rax + 0x50], 0
cmp dword [r13 + 0x90], 5
jl 0x1404e6649
mov rax, qword [r13]
mov dword [rax + 0x28], 0x37
mov rax, qword [r13]
mov dword [rax + 0x2c], 4
mov rax, qword [r13]
mov rcx, r13
call qword [rax]
mov ebp, dword [r13 + 0x78]
cmp ebp, 0x101
jl 0x1404e6678
mov rax, qword [r13]
mov dword [rax + 0x28], 0x39
mov rax, qword [r13]
mov dword [rax + 0x2c], 0x100
mov rax, qword [r13]
mov rcx, r13
call qword [rax]
mov ebp, dword [r13 + 0x78]
mov rdi, qword [r13 + 0x270]
mov r14d, dword [r13 + 0x90]
movsxd rax, dword [r13 + 0x40]
lea rcx, [0x14064ede0]
mov r15d, dword [rcx + rax*4]
lea rcx, [0x14064ee30]
mov ecx, dword [rcx + rax*4]
mov dword [rsp + 0x50], ecx
lea rcx, [0x14064ee80]
mov eax, dword [rcx + rax*4]
mov dword [rsp + 0x54], eax
lea eax, [r14 - 1]
mov ecx, eax
and ecx, 0xfffffff8
lea edx, [rcx + 1]
mov r8d, 1
movaps xmm0, xmmword [0x1405a6400]
movdqa xmm1, xmmword [0x14059b990]
jmp 0x1404e66e9
cmp r9d, ebp
jg 0x1404e67be
mov r12d, r8d
lea r8d, [r12 + 1]
mov r9d, r8d
cmp r14d, 2
jl 0x1404e66e0
mov r11d, 1
mov r9d, r8d
cmp r14d, 9
jb 0x1404e67a9
movd xmm3, r8d
movaps xmm2, xmm0
movss xmm2, xmm3
movd xmm3, r8d
pshufd xmm4, xmm3, 0
mov r9d, ecx
movdqa xmm3, xmm1
nop word [rax + rax]
pshufd xmm5, xmm2, 0xf5
pmuludq xmm2, xmm4
pshufd xmm2, xmm2, 0xe8
pshufd xmm6, xmm4, 0xf5
pmuludq xmm5, xmm6
pshufd xmm5, xmm5, 0xe8
punpckldq xmm2, xmm5
pshufd xmm5, xmm3, 0xf5
pmuludq xmm3, xmm4
pshufd xmm3, xmm3, 0xe8
pmuludq xmm5, xmm6
pshufd xmm5, xmm5, 0xe8
punpckldq xmm3, xmm5
add r9d, 0xfffffff8
jne 0x1404e6730
pshufd xmm4, xmm2, 0xf5
pshufd xmm5, xmm3, 0xf5
pmuludq xmm5, xmm4
pmuludq xmm3, xmm2
pshufd xmm2, xmm3, 0xee
pmuludq xmm2, xmm3
pshufd xmm3, xmm5, 0xaa
pmuludq xmm3, xmm5
pmuludq xmm3, xmm2
movd r9d, xmm3
mov r11d, edx
cmp eax, ecx
je 0x1404e66e0
mov r10d, r14d
sub r10d, r11d
nop
imul r9d, r8d
dec r10d
jne 0x1404e67b0
jmp 0x1404e66e0
cmp r12d, 1
ja 0x1404e67e0
mov rax, qword [r13]
mov dword [rax + 0x28], 0x38
mov rax, qword [r13]
mov dword [rax + 0x2c], r9d
mov rax, qword [r13]
mov rcx, r13
call qword [rax]
test r14d, r14d
jle 0x1404e67fb
lea r8, [rdi + 0x3c]
cmp r14d, 8
jae 0x1404e6805
mov esi, 1
xor eax, eax
jmp 0x1404e68c0
mov esi, 1
jmp 0x1404e68f9
mov eax, r14d
and eax, 0xfffffff8
movd xmm0, r12d
pshufd xmm1, xmm0, 0
lea rcx, [r14*4]
and rcx, 0xffffffffffffffe0
movdqa xmm0, xmmword [0x14059b990]
xor edx, edx
pshufd xmm3, xmm1, 0xf5
movdqa xmm2, xmm0
nop word cs:[rax + rax]
movdqu xmmword [rdi + rdx + 0x3c], xmm1
movdqu xmmword [rdi + rdx + 0x4c], xmm1
pshufd xmm4, xmm0, 0xf5
pmuludq xmm0, xmm1
pshufd xmm0, xmm0, 0xe8
pmuludq xmm4, xmm3
pshufd xmm4, xmm4, 0xe8
punpckldq xmm0, xmm4
pshufd xmm4, xmm2, 0xf5
pmuludq xmm2, xmm1
pshufd xmm2, xmm2, 0xe8
pmuludq xmm4, xmm3
pshufd xmm4, xmm4, 0xe8
punpckldq xmm2, xmm4
add rdx, 0x20
cmp rcx, rdx
jne 0x1404e6840
pshufd xmm1, xmm0, 0xf5
pshufd xmm3, xmm2, 0xf5
pmuludq xmm3, xmm1
pmuludq xmm2, xmm0
pshufd xmm0, xmm2, 0xee
pmuludq xmm0, xmm2
pshufd xmm1, xmm3, 0xaa
pmuludq xmm1, xmm3
pmuludq xmm1, xmm0
movd esi, xmm1
cmp rax, r14
je 0x1404e68d0
nop dword [rax]
mov dword [r8 + rax*4], r12d
imul esi, r12d
inc rax
cmp r14, rax
jne 0x1404e68c0
xor eax, eax
cmp dword [r13 + 0x40], 2
cmove eax, r15d
movsxd r10, eax
mov r9d, dword [r8 + r10*4]
mov eax, esi
cdq
idiv r9d
mov ecx, eax
inc r9d
imul ecx, r9d
cmp ecx, ebp
jle 0x1404e6b29
cmp dword [r13 + 0x90], 3
mov rax, qword [r13]
jne 0x1404e6929
mov dword [rax + 0x2c], esi
mov ecx, dword [rdi + 0x3c]
mov dword [rax + 0x30], ecx
mov ecx, dword [rdi + 0x40]
mov dword [rax + 0x34], ecx
mov ecx, dword [rdi + 0x44]
mov dword [rax + 0x38], ecx
mov rax, qword [r13]
mov dword [rax + 0x28], 0x5e
jmp 0x1404e6937
mov dword [rax + 0x28], 0x5f
mov rax, qword [r13]
mov dword [rax + 0x2c], esi
mov rax, qword [r13]
mov rcx, r13
mov edx, 1
call qword [rax + 8]
mov rax, qword [r13 + 8]
mov r9d, dword [r13 + 0x90]
mov rcx, r13
mov edx, 1
mov dword [rsp + 0x24], esi
mov r8d, esi
call qword [rax + 0x10]
mov rcx, rax
mov esi, dword [r13 + 0x90]
test esi, esi
jle 0x1404e6aa2
mov r9d, dword [rsp + 0x24]
movsxd r10, r9d
xor r11d, r11d
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], rdi
jmp 0x1404e69b3
mov r13, qword [rsp + 0x38]
mov esi, dword [r13 + 0x90]
mov rdi, qword [rsp + 0x30]
inc r11
movsxd rax, esi
mov r9d, r8d
cmp r11, rax
jge 0x1404e6aa2
mov r14d, dword [rdi + r11*4 + 0x3c]
mov eax, r9d
cdq
idiv r14d
mov r8d, eax
test r14d, r14d
jle 0x1404e69a1
lea eax, [r14 - 1]
mov dword [rsp + 0x2c], eax
shr eax, 1
mov dword [rsp + 0x28], eax
movsxd rax, r8d
mov qword [rsp + 0x40], rax
movsxd r9, r9d
mov r13d, r8d
mov ebx, r13d
and ebx, 3
and r13d, 0xfffffffc
neg r13
xor edi, edi
xor ebp, ebp
jmp 0x1404e6a0c
inc ebp
add rdi, qword [rsp + 0x40]
cmp ebp, r14d
je 0x1404e6990
mov eax, ebp
imul eax, r8d
cmp eax, dword [rsp + 0x24]
jge 0x1404e6a00
mov eax, ebp
shl eax, 8
sub eax, ebp
add eax, dword [rsp + 0x28]
cdq
idiv dword [rsp + 0x2c]
mov rsi, rdi
jmp 0x1404e6a38
add rsi, r9
cmp rsi, r10
jge 0x1404e6a00
test r8d, r8d
jle 0x1404e6a30
xor r15d, r15d
cmp r8d, 4
jb 0x1404e6a83
mov rdx, rsi
nop dword [rax]
mov r12, qword [rcx + r11*8]
mov byte [r12 + rdx], al
mov r12, qword [rcx + r11*8]
mov byte [r12 + rdx + 1], al
mov r12, qword [rcx + r11*8]
mov byte [r12 + rdx + 2], al
mov r12, qword [rcx + r11*8]
mov byte [r12 + rdx + 3], al
add rdx, 4
add r15, 0xfffffffffffffffc
cmp r13, r15
jne 0x1404e6a50
neg r15
test rbx, rbx
je 0x1404e6a30
add r15, rsi
mov rdx, rbx
nop
mov r12, qword [rcx + r11*8]
mov byte [r12 + r15], al
inc r15
dec rdx
jne 0x1404e6a90
jmp 0x1404e6a30
mov qword [rdi + 0x20], rcx
mov eax, dword [rsp + 0x24]
mov dword [rdi + 0x28], eax
mov rcx, r13
call fcn.1404e6e70
cmp dword [r13 + 0x70], 2
jne 0x1404e6b06
cmp dword [r13 + 0x90], 0
jle 0x1404e6b06
mov rsi, qword [r13 + 0x270]
mov edi, dword [r13 + 0x88]
add edi, 2
add rdi, rdi
xor ebx, ebx
nop dword [rax]
mov rax, qword [r13 + 8]
mov rcx, r13
mov edx, 1
mov r8, rdi
call qword [rax + 8]
mov qword [rsi + rbx*8 + 0x70], rax
inc rbx
movsxd rax, dword [r13 + 0x90]
cmp rbx, rax
jl 0x1404e6ae0
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.1405602f0
movaps xmm6, xmmword [rsp + 0x60]
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r10, [r8 + r10*4]
jmp 0x1404e6b61
mov esi, ecx
cmp dword [r13 + 0x40], 2
mov eax, 0
cmove eax, r15d
cdqe
lea r10, [r8 + rax*4]
mov r9d, dword [r8 + rax*4]
mov eax, ecx
cdq
idiv r9d
inc r9d
mov ecx, eax
imul ecx, r9d
cmp ecx, ebp
jg 0x1404e68f9
mov dword [r10], r9d
cmp r14d, 1
je 0x1404e6b30
mov r9d, 1
cmp dword [r13 + 0x40], 2
jne 0x1404e6b80
mov eax, dword [rsp + r9*4 + 0x4c]
jmp 0x1404e6b83
mov eax, r9d
movsxd r10, eax
mov r11d, dword [r8 + r10*4]
mov eax, ecx
cdq
idiv r11d
inc r11d
imul eax, r11d
cmp eax, ebp
jg 0x1404e6b30
mov dword [r8 + r10*4], r11d
inc r9
mov ecx, eax
cmp r14, r9
jne 0x1404e6b70
jmp 0x1404e6b30