Function at 0x1804d5760
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, 0x278
movdqa xmmword [rsp + 0x260], xmm13
movdqa xmmword [rsp + 0x250], xmm12
movdqa xmmword [rsp + 0x240], xmm11
movdqa xmmword [rsp + 0x230], xmm10
movaps xmmword [rsp + 0x220], xmm9
movaps xmmword [rsp + 0x210], xmm8
movaps xmmword [rsp + 0x200], xmm7
movdqa xmmword [rsp + 0x1f0], xmm6
mov rdi, r8
mov rsi, rcx
cmp r8, 2
jae 0x1804d57ee
mov word [rsi + 0x16], 0
mov dword [rsi + 0x12], 0
mov qword [rsi + 0x18], rdi
mov qword [rsi + 8], 0
mov word [rsi + 0x10], 2
jmp 0x1804d58a0
mov rbx, rdx
movzx eax, word [rdx]
mov qword [rsp + 0x30], 0
cmp eax, 0x10b
je 0x1804d5858
cmp eax, 0x20b
jne 0x1804d5894
mov ax, 1
cmp rdi, 2
je 0x1804d5823
cmp rdi, 3
jne 0x1804d5992
xor ecx, ecx
mov qword [rsi + 8], 0
mov word [rsi + 0x10], ax
mov word [rsi + 0x12], 0
mov dword [rsi + 0x14], 0
mov dword [rsi + 0x18], ecx
movabs rax, 0x1800000000
mov qword [rsi + 0x1c], rax
mov dword [rsi + 0x24], 0
jmp 0x1804d58a0
mov byte [rsp + 0x20], 0
lea rcx, [rsp + 0x70]
lea r9, [rsp + 0x30]
mov rdx, rbx
mov r8, rdi
call fcn.1804e0930
cmp dword [rsp + 0x70], 0
je 0x1804d5904
movups xmm0, xmmword [rsp + 0x78]
movups xmm1, xmmword [rsp + 0x88]
movups xmmword [rsi + 8], xmm0
movups xmmword [rsi + 0x18], xmm1
jmp 0x1804d58a0
mov qword [rsi + 8], 6
mov qword [rsi + 0x10], rax
mov qword [rsi], 2
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x1f0]
movaps xmm7, xmmword [rsp + 0x200]
movaps xmm8, xmmword [rsp + 0x210]
movaps xmm9, xmmword [rsp + 0x220]
movaps xmm10, xmmword [rsp + 0x230]
movaps xmm11, xmmword [rsp + 0x240]
movaps xmm12, xmmword [rsp + 0x250]
movaps xmm13, xmmword [rsp + 0x260]
add rsp, 0x278
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movzx eax, word [rsp + 0x74]
mov word [rsp + 0x2e], ax
movzx r15d, byte [rsp + 0x76]
movzx r12d, byte [rsp + 0x77]
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x44], eax
mov ebp, dword [rsp + 0x7c]
mov r13d, dword [rsp + 0x80]
movq xmm6, qword [rsp + 0x84]
mov r14d, dword [rsp + 0x8c]
mov byte [rsp + 0x20], 0
lea rcx, [rsp + 0x70]
lea r9, [rsp + 0x30]
mov rdx, rbx
mov r8, rdi
call fcn.1804dfb50
cmp dword [rsp + 0x70], 0
je 0x1804d5a70
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x88]
mov rdx, qword [rsp + 0x8c]
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rsi + 8], xmm0
mov dword [rsi + 0x18], ecx
mov qword [rsi + 0x1c], rdx
mov dword [rsi + 0x24], eax
jmp 0x1804d58a0
lea rcx, [rdi - 4]
mov ax, 4
cmp rcx, 4
jb 0x1804d5825
lea rcx, [rdi - 8]
cmp rcx, 4
jb 0x1804d5825
lea rcx, [rdi - 0xc]
cmp rcx, 4
jb 0x1804d5825
lea rcx, [rdi - 0x10]
cmp rcx, 4
jb 0x1804d5825
lea rcx, [rdi - 0x14]
cmp rcx, 4
jb 0x1804d5825
movzx ebp, byte [rbx + 2]
movzx r14d, byte [rbx + 3]
mov r15d, dword [rbx + 4]
mov r12d, dword [rbx + 8]
mov r13d, dword [rbx + 0xc]
movq xmm6, qword [rbx + 0x10]
mov qword [rsp + 0x30], 0x18
mov byte [rsp + 0x20], 0
lea rcx, [rsp + 0x70]
lea r9, [rsp + 0x30]
mov rdx, rbx
mov r8, rdi
call fcn.1804ddaa0
cmp qword [rsp + 0x70], 0
mov rcx, qword [rsp + 0x78]
mov edx, dword [rsp + 0x80]
mov r8d, dword [rsp + 0x84]
movsd xmm7, qword [rsp + 0x88]
movsd xmm8, qword [rsp + 0x90]
mov eax, dword [rsp + 0x94]
je 0x1804d5c49
mov qword [rsi + 8], rcx
mov dword [rsi + 0x10], edx
mov dword [rsi + 0x14], r8d
movlps qword [rsi + 0x18], xmm7
movss dword [rsi + 0x20], xmm8
mov dword [rsi + 0x24], eax
jmp 0x1804d58a0
mov byte [rsp + 0x2c], r12b
mov byte [rsp + 0x2d], r15b
mov eax, dword [rsp + 0x74]
mov qword [rsp + 0x48], rax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x7c]
mov dword [rsp + 0x3c], eax
movsd xmm7, qword [rsp + 0x80]
movsd xmm8, qword [rsp + 0x88]
movdqu xmm13, xmmword [rsp + 0x8c]
movss xmm9, dword [rsp + 0x9c]
movq xmm10, qword [rsp + 0xa0]
movq xmm11, qword [rsp + 0xa8]
movq xmm12, qword [rsp + 0xb0]
pxor xmm0, xmm0
punpckldq xmm10, xmm0
punpckldq xmm11, xmm0
mov r15d, dword [rsp + 0x44]
mov r12d, ebp
movzx ebp, word [rsp + 0x2e]
pshufd xmm0, xmm12, 0x55
movd r9d, xmm0
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x70]
mov rdx, rbx
mov r8, rdi
call fcn.1804e10e0
mov rdi, qword [rsp + 0x70]
cmp rdi, 2
jne 0x1804d5b47
movups xmm0, xmmword [rsp + 0x78]
movups xmm1, xmmword [rsp + 0x88]
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x50], xmm0
movups xmmword [rsi + 0x18], xmm1
movups xmmword [rsi + 8], xmm0
jmp 0x1804d58a0
mov ebx, r15d
mov r15d, r12d
mov r12d, r13d
pxor xmm0, xmm0
punpckldq xmm6, xmm0
movups xmm0, xmmword [rsp + 0x78]
movups xmm1, xmmword [rsp + 0x88]
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x98]
lea rcx, [rsi + 0x28]
mov r8d, 0x158
call fcn.1806a7400
movaps xmm0, xmmword [rsp + 0x50]
movaps xmm1, xmmword [rsp + 0x60]
movups xmmword [rsi + 0x18], xmm1
movups xmmword [rsi + 8], xmm0
mov qword [rsi], rdi
mov qword [rsi + 0x180], rbx
mov qword [rsi + 0x188], r15
mov qword [rsi + 0x190], r12
movdqu xmmword [rsi + 0x198], xmm6
mov dword [rsi + 0x1a8], r14d
mov word [rsi + 0x1ac], bp
movzx eax, byte [rsp + 0x2d]
mov byte [rsi + 0x1ae], al
movzx eax, byte [rsp + 0x2c]
mov byte [rsi + 0x1af], al
mov rax, qword [rsp + 0x48]
mov qword [rsi + 0x1b0], rax
mov eax, dword [rsp + 0x40]
mov dword [rsi + 0x1b8], eax
mov eax, dword [rsp + 0x3c]
mov dword [rsi + 0x1bc], eax
movlps qword [rsi + 0x1c0], xmm7
movss dword [rsi + 0x1c8], xmm8
movdqu xmmword [rsi + 0x1cc], xmm13
movss dword [rsi + 0x1dc], xmm9
movdqu xmmword [rsi + 0x1e0], xmm10
movdqu xmmword [rsi + 0x1f0], xmm11
movq qword [rsi + 0x200], xmm12
mov qword [rsi + 0x208], 0
jmp 0x1804d58a7
mov dword [rsp + 0x3c], r8d
mov dword [rsp + 0x40], edx
mov qword [rsp + 0x48], rcx
mov byte [rsp + 0x2c], r14b
mov byte [rsp + 0x2d], bpl
movss xmm9, dword [rsp + 0xa4]
movdqu xmm0, xmmword [rsp + 0x9c]
movdqu xmm10, xmmword [rsp + 0xa8]
movdqu xmm11, xmmword [rsp + 0xb8]
movq xmm12, qword [rsp + 0xc8]
movd xmm1, dword [rsp + 0x98]
movd xmm13, eax
punpckldq xmm13, xmm1
punpcklqdq xmm13, xmm0
mov bp, 0x20b
xor r14d, r14d
jmp 0x1804d5af3