Function at 0x180579cf0
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, 0x2c8
mov rsi, r8
mov r12, rdx
mov rdi, rcx
mov r13, qword [rdx]
mov r15, qword [rdx + 8]
mov r8, qword [r13 + 0xa0]
mov r14, qword [rdx + 0x10]
test r8, r8
je 0x180579d3a
cmp r8, r14
jae 0x180579d34
cmp byte [r15 + r8], 0xbf
jg 0x180579d3a
jmp 0x18057ab96
jne 0x18057ab96
cmp r8, r14
je 0x180579f8a
movzx eax, byte [r15 + r8]
test al, al
js 0x180579e28
cmp eax, 0x7b
jne 0x180579f8a
lea rbx, [r13 + 0xa0]
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x170], rax
movups xmm0, xmmword [rbx]
movaps xmmword [rsp + 0x160], xmm0
mov rcx, qword [rsi + 0x10]
test rcx, rcx
je 0x180579e7b
lea rbp, [rcx - 1]
mov qword [rsi + 0x10], rbp
mov qword [rsp + 0x38], rsi
mov rax, qword [rsi + 8]
mov rsi, rbp
shl rsi, 4
mov rdx, qword [rax + rsi]
mov qword [rsp + 0x30], rax
mov rax, qword [rax + rsi + 8]
mov qword [rsp + 0x248], rdx
mov qword [rsp + 0x250], rax
cmp rdx, 2
jae 0x180579eda
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x88], rax
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x78], xmm0
movups xmm0, xmmword [rbx]
movaps xmmword [rsp + 0x60], xmm0
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x70], rax
test r14, r14
js 0x18057aba4
mov rsi, qword [rsp + 0x38]
je 0x180579fd8
movzx eax, byte [0x1807afe04]
mov r13d, 1
mov edx, 1
mov rcx, r14
call fcn.1804caf90
test rax, rax
je 0x18057aba7
mov r12, rax
jmp 0x180579fde
mov ecx, eax
and ecx, 0x1f
movzx r9d, byte [r15 + r8 + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x180579f79
movzx edx, byte [r15 + r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp al, 0xf0
jb 0x18057a01e
movzx eax, byte [r15 + r8 + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and eax, 0x3f
or eax, edx
or eax, ecx
cmp eax, 0x7b
je 0x180579d59
jmp 0x180579f8a
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x88], rax
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x78], xmm0
movups xmm0, xmmword [rbx]
movaps xmmword [rsp + 0x60], xmm0
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x70], rax
test r14, r14
js 0x18057abb2
je 0x180579f8c
movzx eax, byte [0x1807afe04]
mov r12d, 1
mov edx, 1
mov rcx, r14
call fcn.1804caf90
test rax, rax
je 0x18057abb5
mov rbx, rax
jmp 0x180579f91
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x178], rdx
mov qword [rsp + 0x208], rcx
mov rcx, r12
call fcn.180574b70
test al, al
je 0x180579f0c
mov rcx, r12
call fcn.180574da0
cmp qword [rbx], r14
jne 0x18057a0e0
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x88], rax
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x78], xmm0
movaps xmm0, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0x60], xmm0
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x70], rax
test r14, r14
js 0x18057aba4
mov rsi, qword [rsp + 0x38]
je 0x18057a033
movzx eax, byte [0x1807afe04]
mov r13d, 1
mov edx, 1
mov rcx, r14
call fcn.1804caf90
test rax, rax
je 0x18057aba7
mov r12, rax
jmp 0x18057a039
shl ecx, 6
or ecx, r9d
mov eax, ecx
cmp eax, 0x7b
je 0x180579d59
ud2
mov ebx, 1
mov rcx, rbx
mov rdx, r15
mov r8, r14
call fcn.1806a7400
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movups xmmword [rdi + 0x50], xmm0
movups xmmword [rdi + 0x60], xmm1
movups xmmword [rdi + 0x70], xmm2
mov qword [rdi], r14
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], r14
mov dword [rdi + 0x18], 0x1b
mov rbx, qword [rsi + 8]
jmp 0x18057a0b1
mov r12d, 1
mov rcx, r12
mov rdx, r15
mov r8, r14
call fcn.1806a7400
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movups xmmword [rdi + 0x50], xmm0
movups xmmword [rdi + 0x60], xmm1
movups xmmword [rdi + 0x70], xmm2
mov qword [rdi], r14
mov qword [rdi + 8], r12
mov qword [rdi + 0x10], r14
mov dword [rdi + 0x18], 0x1b
jmp 0x18057a077
shl ecx, 0xc
or edx, ecx
mov eax, edx
cmp eax, 0x7b
je 0x180579d59
jmp 0x180579f8a
mov r12d, 1
mov rcx, r12
mov rdx, r15
mov r8, r14
call fcn.1806a7400
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movups xmmword [rdi + 0x50], xmm0
movups xmmword [rdi + 0x60], xmm1
movups xmmword [rdi + 0x70], xmm2
mov qword [rdi], r14
mov qword [rdi + 8], r12
mov qword [rdi + 0x10], r14
mov dword [rdi + 0x18], 0x1a
lea rcx, [rsp + 0x180]
mov rdx, r12
call fcn.18057f990
mov dword [rsp + 0x290], 5
mov dword [rsp + 0x258], 0x19
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x180], rax
je 0x18057a22f
cmp dword [rsp + 0x198], 5
jne 0x18057a22f
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x60], xmm0
movups xmm0, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0xb0], xmm0
movups xmm0, xmmword [rsp + 0x1e0]
movaps xmmword [rsp + 0xc0], xmm0
movups xmm0, xmmword [rsp + 0x1f0]
movaps xmmword [rsp + 0xd0], xmm0
movups xmm0, xmmword [rsp + 0x258]
movups xmm1, xmmword [rsp + 0x268]
movups xmm2, xmmword [rsp + 0x278]
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rsp + 0x98], xmm2
movups xmmword [rsp + 0x88], xmm1
mov rax, qword [rsp + 0x288]
mov qword [rsp + 0xa8], rax
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x150], xmm0
movaps xmm0, xmmword [rsp + 0x60]
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0xa8]
movaps xmm1, xmmword [rsp + 0xb0]
movaps xmm2, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x140], xmm2
movaps xmmword [rsp + 0x130], xmm1
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], rcx
movaps xmm1, xmmword [rsp + 0x90]
movaps xmmword [rsp + 0x110], xmm1
movaps xmm1, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x100], xmm1
movaps xmm1, xmmword [rsp + 0x70]
jmp 0x18057a29f
movups xmm0, xmmword [rsp + 0x1f0]
movaps xmmword [rsp + 0x150], xmm0
movups xmm0, xmmword [rsp + 0x1e0]
movaps xmmword [rsp + 0x140], xmm0
movups xmm0, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x130], xmm0
movups xmm0, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0x120], xmm0
movups xmm0, xmmword [rsp + 0x180]
movups xmm1, xmmword [rsp + 0x190]
movups xmm2, xmmword [rsp + 0x1a0]
movups xmm3, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0x110], xmm3
movaps xmmword [rsp + 0x100], xmm2
movaps xmmword [rsp + 0xf0], xmm1
movaps xmmword [rsp + 0xe0], xmm0
mov r8, qword [rbx]
cmp r8, r14
jne 0x18057a324
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x88], rax
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x78], xmm0
movaps xmm0, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0x60], xmm0
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x70], rax
test r14, r14
js 0x18057aba4
mov rsi, qword [rsp + 0x38]
je 0x18057a39f
movzx eax, byte [0x1807afe04]
mov r13d, 1
mov edx, 1
mov rcx, r14
call fcn.1804caf90
test rax, rax
je 0x18057aba7
mov r12, rax
jmp 0x18057a3a5
test r8, r8
je 0x18057a34c
cmp r8, r14
jae 0x18057ab96
movzx ecx, byte [r15 + r8]
cmp cl, 0xbf
jle 0x18057ab96
test cl, cl
js 0x18057a354
movzx eax, cl
jmp 0x18057a40d
movzx ecx, byte [r15]
test cl, cl
jns 0x18057a344
mov eax, ecx
and al, 0x1f
movzx eax, al
movzx r9d, byte [r15 + r8 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x18057a400
movzx edx, byte [r15 + r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp cl, 0xf0
jb 0x18057a408
movzx ecx, byte [r15 + r8 + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or eax, ecx
jmp 0x18057a40d
mov r12d, 1
mov rcx, r12
mov rdx, r15
mov r8, r14
call fcn.1806a7400
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movups xmmword [rdi + 0x50], xmm0
movups xmmword [rdi + 0x60], xmm1
movups xmmword [rdi + 0x70], xmm2
mov qword [rdi], r14
mov qword [rdi + 8], r12
mov qword [rdi + 0x10], r14
mov r13b, 1
mov edx, 0x1a
mov eax, 0x18
mov cl, 1
mov rbx, qword [rsp + 0x30]
mov dword [rdi + rax], edx
test cl, cl
jne 0x18057a8a1
jmp 0x18057a07c
shl eax, 6
or eax, r9d
jmp 0x18057a40d
shl eax, 0xc
or eax, edx
cmp eax, 0x2c
jne 0x18057a4b6
mov rcx, r12
call fcn.180574b70
test al, al
je 0x18057a433
mov rcx, r12
call fcn.180574da0
cmp qword [rbx], r14
jne 0x18057a63e
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x88], rax
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x78], xmm0
movaps xmm0, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0x60], xmm0
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x70], rax
mov rcx, rdi
mov rdx, r15
mov r8, r14
call fcn.1804e6e90
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movups xmmword [rdi + 0x70], xmm2
movups xmmword [rdi + 0x60], xmm1
movups xmmword [rdi + 0x50], xmm0
mov r13b, 1
mov edx, 0x1a
mov eax, 0x18
mov cl, 1
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov dword [rdi + rax], edx
test cl, cl
jne 0x18057a8a1
jmp 0x18057a07c
mov rax, qword [rsp + 0xe0]
mov edx, dword [rsp + 0xe8]
movabs rcx, 0x8000000000000000
cmp rax, rcx
jne 0x18057a5d0
mov dword [rsp + 0x2c], edx
mov dword [rsp + 0x4c], 0
mov dword [rsp + 0x48], 0
xor r13d, r13d
mov dword [rsp + 0x40], 0
cmp qword [rbx], r14
je 0x18057a824
mov ecx, dword [rsp + 0x15c]
mov dword [rdi + 0x7c], ecx
movups xmm0, xmmword [rsp + 0x14c]
movups xmmword [rdi + 0x6c], xmm0
movups xmm0, xmmword [rsp + 0x13c]
movups xmmword [rdi + 0x5c], xmm0
movups xmm0, xmmword [rsp + 0x12c]
movups xmmword [rdi + 0x4c], xmm0
movups xmm0, xmmword [rsp + 0xec]
movups xmm1, xmmword [rsp + 0xfc]
movups xmm2, xmmword [rsp + 0x10c]
movups xmm3, xmmword [rsp + 0x11c]
movups xmmword [rdi + 0x3c], xmm3
movups xmmword [rdi + 0x2c], xmm2
movups xmmword [rdi + 0x1c], xmm1
movups xmmword [rdi + 0xc], xmm0
mov qword [rdi], rax
mov dword [rdi + 8], edx
mov rcx, r12
call fcn.180574ac0
mov rdx, qword [rsp + 0xe0]
cmp eax, 0x7d
jne 0x18057a69a
mov ecx, dword [rsp + 0xe8]
movabs rax, 0x8000000000000000
cmp rdx, rax
jne 0x18057a6ef
mov dword [rsp + 0x2c], ecx
mov dword [rsp + 0x48], 1
mov dword [rsp + 0x4c], 0
xor r13d, r13d
mov dword [rsp + 0x40], 0
cmp qword [rbx], r14
je 0x18057a824
jmp 0x18057a500
movabs rax, 0x8000000000000000
cmp rdx, rax
cmp edx, eax
mov eax, dword [rsp + 0x15c]
mov dword [rdi + 0x7c], eax
movups xmm0, xmmword [rsp + 0x14c]
movups xmmword [rdi + 0x6c], xmm0
movups xmm0, xmmword [rsp + 0x13c]
movups xmmword [rdi + 0x5c], xmm0
movups xmm0, xmmword [rsp + 0x12c]
movups xmmword [rdi + 0x4c], xmm0
movups xmm0, xmmword [rsp + 0xec]
movups xmm1, xmmword [rsp + 0xfc]
movups xmm2, xmmword [rsp + 0x10c]
movups xmm3, xmmword [rsp + 0x11c]
movups xmmword [rdi + 0x3c], xmm3
movups xmmword [rdi + 0x2c], xmm2
movups xmmword [rdi + 0x1c], xmm1
movups xmmword [rdi + 0xc], xmm0
mov qword [rdi], rdx
mov dword [rdi + 8], ecx
jmp 0x18057a634
mov rcx, r15
mov rdx, r14
mov r9, r14
call fcn.18063bc30
xor r13d, r13d
mov rcx, r13
mov rdx, r14
call fcn.18063bc30
xor r12d, r12d
mov rcx, r12
mov rdx, r14
call fcn.18063bc30