Function at 0x180346220
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 0x18034626a
cmp r8, r14
jae 0x180346264
cmp byte [r15 + r8], 0xbf
jg 0x18034626a
jmp 0x1803470c6
jne 0x1803470c6
cmp r8, r14
je 0x1803464ba
movzx eax, byte [r15 + r8]
test al, al
js 0x180346358
cmp eax, 0x7b
jne 0x1803464ba
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 0x1803463ab
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 0x18034640a
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 0x1803470d4
mov rsi, qword [rsp + 0x38]
je 0x180346508
movzx eax, byte [0x1805297c8]
mov r13d, 1
mov edx, 1
mov rcx, r14
call fcn.1802cbf10
test rax, rax
je 0x1803470d7
mov r12, rax
jmp 0x18034650e
mov ecx, eax
and ecx, 0x1f
movzx r9d, byte [r15 + r8 + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x1803464a9
movzx edx, byte [r15 + r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp al, 0xf0
jb 0x18034654e
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 0x180346289
jmp 0x1803464ba
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 0x1803470e2
je 0x1803464bc
movzx eax, byte [0x1805297c8]
mov r12d, 1
mov edx, 1
mov rcx, r14
call fcn.1802cbf10
test rax, rax
je 0x1803470e5
mov rbx, rax
jmp 0x1803464c1
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x178], rdx
mov qword [rsp + 0x208], rcx
mov rcx, r12
call fcn.1803410a0
test al, al
je 0x18034643c
mov rcx, r12
call fcn.1803412d0
cmp qword [rbx], r14
jne 0x180346610
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 0x1803470d4
mov rsi, qword [rsp + 0x38]
je 0x180346563
movzx eax, byte [0x1805297c8]
mov r13d, 1
mov edx, 1
mov rcx, r14
call fcn.1802cbf10
test rax, rax
je 0x1803470d7
mov r12, rax
jmp 0x180346569
shl ecx, 6
or ecx, r9d
mov eax, ecx
cmp eax, 0x7b
je 0x180346289
ud2
mov ebx, 1
mov rcx, rbx
mov rdx, r15
mov r8, r14
call fcn.180468b10
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 0x1803465e1
mov r12d, 1
mov rcx, r12
mov rdx, r15
mov r8, r14
call fcn.180468b10
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 0x1803465a7
shl ecx, 0xc
or edx, ecx
mov eax, edx
cmp eax, 0x7b
je 0x180346289
jmp 0x1803464ba
mov r12d, 1
mov rcx, r12
mov rdx, r15
mov r8, r14
call fcn.180468b10
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.18034bec0
mov dword [rsp + 0x290], 5
mov dword [rsp + 0x258], 0x19
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x180], rax
je 0x18034675f
cmp dword [rsp + 0x198], 5
jne 0x18034675f
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 0x1803467cf
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 0x180346854
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 0x1803470d4
mov rsi, qword [rsp + 0x38]
je 0x1803468cf
movzx eax, byte [0x1805297c8]
mov r13d, 1
mov edx, 1
mov rcx, r14
call fcn.1802cbf10
test rax, rax
je 0x1803470d7
mov r12, rax
jmp 0x1803468d5
test r8, r8
je 0x18034687c
cmp r8, r14
jae 0x1803470c6
movzx ecx, byte [r15 + r8]
cmp cl, 0xbf
jle 0x1803470c6
test cl, cl
js 0x180346884
movzx eax, cl
jmp 0x18034693d
movzx ecx, byte [r15]
test cl, cl
jns 0x180346874
mov eax, ecx
and al, 0x1f
movzx eax, al
movzx r9d, byte [r15 + r8 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x180346930
movzx edx, byte [r15 + r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp cl, 0xf0
jb 0x180346938
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 0x18034693d
mov r12d, 1
mov rcx, r12
mov rdx, r15
mov r8, r14
call fcn.180468b10
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 0x180346dd1
jmp 0x1803465ac
shl eax, 6
or eax, r9d
jmp 0x18034693d
shl eax, 0xc
or eax, edx
cmp eax, 0x2c
jne 0x1803469e6
mov rcx, r12
call fcn.1803410a0
test al, al
je 0x180346963
mov rcx, r12
call fcn.1803412d0
cmp qword [rbx], r14
jne 0x180346b6e
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.180205490
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 0x180346dd1
jmp 0x1803465ac
mov rax, qword [rsp + 0xe0]
mov edx, dword [rsp + 0xe8]
movabs rcx, 0x8000000000000000
cmp rax, rcx
jne 0x180346b00
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 0x180346d54
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.180340ff0
mov rdx, qword [rsp + 0xe0]
cmp eax, 0x7d
jne 0x180346bca
mov ecx, dword [rsp + 0xe8]
movabs rax, 0x8000000000000000
cmp rdx, rax
jne 0x180346c1f
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 0x180346d54
jmp 0x180346a30
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 0x180346b64
mov rcx, r15
mov rdx, r14
mov r9, r14
call fcn.180407090
xor r13d, r13d
mov rcx, r13
mov rdx, r14
call fcn.180407090
xor r12d, r12d
mov rcx, r12
mov rdx, r14
call fcn.180407090