Function at 0x1805555f0
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, 0x248
movaps xmmword [rsp + 0x230], xmm6
mov rax, r8
mov rbx, rdx
mov r12, rcx
movabs rsi, 0x8000000000000008
mov qword [rsp + 0x28], 0
lea rcx, [rsp + 0xc0]
lea r8, [rsp + 0x28]
mov qword [rsp + 0xb8], rax
mov rdx, rax
call fcn.180554c90
mov rax, qword [rsp + 0xc0]
mov ebp, dword [rsp + 0xc8]
cmp rax, rsi
jne 0x1805556f7
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0xa8], 8
mov qword [rsp + 0xb0], 0
mov r14, qword [rbx + 0x10]
test r14, r14
je 0x180555fe7
mov r15, qword [rbx + 8]
mov rcx, qword [r15 + 8]
mov rdx, qword [r15 + 0x10]
mov rax, qword [r15 + 0x20]
mov r8, qword [r15 + 0x28]
test r8, r8
mov qword [rsp + 0x98], r12
je 0x180555773
mov r9, r8
shl r9, 4
mov r10, qword [r9 + rax - 8]
mov r9, rdx
sub r9, r10
jb 0x180555fe7
mov rsi, qword [rax]
mov rdi, qword [rax + 8]
mov r11, rdi
sub r11, rsi
jb 0x180555fe7
cmp rdi, rdx
ja 0x180555fe7
lea r10, [rcx + r10*8]
lea rdi, [rax + 0x10]
lea rsi, [rcx + rsi*8]
jmp 0x180555782
mov ecx, dword [rsp + 0x13c]
mov dword [r12 + 0x7c], ecx
movups xmm0, xmmword [rsp + 0x12c]
movups xmmword [r12 + 0x6c], xmm0
movups xmm0, xmmword [rsp + 0x11c]
movups xmmword [r12 + 0x5c], xmm0
movups xmm0, xmmword [rsp + 0x10c]
movups xmmword [r12 + 0x4c], xmm0
movups xmm0, xmmword [rsp + 0xcc]
movups xmm1, xmmword [rsp + 0xdc]
movups xmm2, xmmword [rsp + 0xec]
movups xmm3, xmmword [rsp + 0xfc]
movups xmmword [r12 + 0x3c], xmm3
movups xmmword [r12 + 0x2c], xmm2
movups xmmword [r12 + 0x1c], xmm1
movups xmmword [r12 + 0xc], xmm0
mov qword [r12], rax
mov dword [r12 + 8], ebp
jmp 0x180555f36
xor r10d, r10d
mov r9, rdx
mov rdi, rax
mov r11, rdx
mov rsi, rcx
shl r8, 4
add rax, r8
lea r8, [rsi + r11*8]
lea r12, [rsp + 0x58]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r10
mov qword [rsp + 0x80], r9
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], r8
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x30], 4
xorps xmm6, xmm6
movups xmmword [rsp + 0x38], xmm6
mov qword [rsp + 0x48], 4
mov qword [rsp + 0x50], 0
lea rbx, [rsp + 0x40]
cmp rsi, r8
jne 0x180555b64
jmp 0x18055582d
mov rax, qword [rsp + 0x30]
mov dword [rax + r13*4], ebp
inc r13
mov qword [rsp + 0x38], r13
lea r8, [rsi + rdi*8]
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], r8
cmp rsi, r8
jne 0x180555b64
mov r13, qword [rsp + 0x50]
test r13, r13
je 0x180555908
cmp r13, 1
jne 0x180555867
mov qword [rsp + 0x50], 0
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov qword [rsp + 0x144], rax
mov dword [rsp + 0x140], 1
jmp 0x1805558a3
mov rax, qword [rbx + 0x10]
lea rcx, [rsp + 0x148]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rbx]
movups xmmword [rcx], xmm0
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 4
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x140], 2
lea rcx, [rsp + 0xc0]
mov rdx, qword [rsp + 0xb8]
lea r8, [rsp + 0x140]
call fcn.180554c90
mov rax, qword [rsp + 0xc0]
mov esi, dword [rsp + 0xc8]
movabs rcx, 0x8000000000000008
cmp rax, rcx
jne 0x180555dc6
mov rdi, qword [rsp + 0x38]
cmp rdi, qword [rsp + 0x28]
jne 0x1805558f8
lea rcx, [rsp + 0x28]
call fcn.1804e3e10
mov rax, qword [rsp + 0x30]
mov dword [rax + rdi*4], esi
inc rdi
mov qword [rsp + 0x38], rdi
mov rcx, qword [rsp + 0x68]
cmp rcx, qword [rsp + 0x70]
je 0x180555946
lea rax, [rcx + 0x10]
mov qword [rsp + 0x68], rax
mov rax, qword [rcx]
mov rcx, qword [rcx + 8]
mov rdi, rcx
sub rdi, rax
jb 0x180555fe7
cmp rcx, qword [rsp + 0x60]
ja 0x180555fe7
mov rcx, qword [rsp + 0x58]
lea rsi, [rcx + rax*8]
jmp 0x180555961
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x80]
mov qword [rsp + 0x78], 0
test rsi, rsi
je 0x180555980
mov r13, qword [rsp + 0x38]
cmp r13, qword [rsp + 0x28]
jne 0x1805557ff
lea rcx, [rsp + 0x28]
call fcn.1804e3e10
jmp 0x1805557ff
mov rax, qword [rsp + 0x38]
lea rcx, [rsp + 0x148]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x28]
movups xmmword [rcx], xmm0
mov dword [rsp + 0x140], 6
lea rcx, [rsp + 0xc0]
mov rdx, qword [rsp + 0xb8]
lea r8, [rsp + 0x140]
call fcn.180554c90
mov rcx, qword [rsp + 0xc0]
mov eax, dword [rsp + 0xc8]
movabs rdx, 0x8000000000000008
cmp rcx, rdx
jne 0x180555f55
mov rdx, qword [rsp + 0xb0]
test rdx, rdx
je 0x180555e6f
dec rdx
mov qword [rsp + 0xb0], rdx
mov rcx, qword [rsp + 0xa8]
imul rdx, rdx, 0x70
mov rsi, qword [rcx + rdx]
movabs r8, 0x8000000000000008
add r8, 0xfffffffffffffff8
cmp rsi, r8
je 0x180555e6f
lea r8, [rcx + rdx]
mov rdi, qword [rcx + rdx + 0x20]
mov r13, qword [rcx + rdx + 0x28]
mov rcx, qword [r8 + 0x18]
mov qword [rsp + 0x170], rcx
movups xmm0, xmmword [r8 + 8]
movaps xmmword [rsp + 0x160], xmm0
movups xmm0, xmmword [r8 + 0x30]
movups xmm1, xmmword [r8 + 0x40]
movups xmm2, xmmword [r8 + 0x50]
movups xmm3, xmmword [r8 + 0x60]
movaps xmmword [rsp + 0x1f0], xmm0
movaps xmmword [rsp + 0x200], xmm1
movaps xmmword [rsp + 0x210], xmm2
movaps xmmword [rsp + 0x220], xmm3
test r13, r13
je 0x180555fe7
mov dword [rdi + r13*8 - 8], eax
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x180555aad
mov rcx, qword [rsp + 0x48]
shl rdx, 3
mov r8d, 4
call fcn.1804cafa0
mov qword [rsp + 0x28], rsi
mov rax, qword [rsp + 0x170]
mov qword [r12 - 0x18], rax
movaps xmm0, xmmword [rsp + 0x160]
movups xmmword [r12 - 0x28], xmm0
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], r13
movaps xmm0, xmmword [rsp + 0x1f0]
movaps xmm1, xmmword [rsp + 0x200]
movaps xmm2, xmmword [rsp + 0x210]
movaps xmm3, xmmword [rsp + 0x220]
movups xmmword [r12 + 0x30], xmm3
movups xmmword [r12 + 0x20], xmm2
movups xmmword [r12 + 0x10], xmm1
movups xmmword [r12], xmm0
mov rsi, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
cmp rsi, r8
jne 0x180555b64
jmp 0x18055582d
mov rax, qword [rsp + 0x48]
mov dword [rax + r13*8], ebp
mov byte [rax + r13*8 + 4], sil
mov byte [rax + r13*8 + 5], sil
inc r13
mov qword [rsp + 0x50], r13
mov rsi, qword [rsp + 0x88]
mov r9, qword [rsp + 0x90]
cmp rsi, r9
je 0x180555832
lea rax, [rsi + 8]
mov qword [rsp + 0x88], rax
mov eax, dword [rsi]
cmp r14, rax
jbe 0x180555fe7
lea rdi, [rax + rax*2]
shl rdi, 4
cmp qword [r15 + rdi + 0x10], 0
movzx esi, byte [rsi + 4]
mov rax, qword [rsp + 0x40]
mov r13, qword [rsp + 0x50]
je 0x180555d20
cmp r13, rax
jne 0x180555baa
mov rcx, rbx
call fcn.1804e46f0
mov rax, qword [rsp + 0x48]
mov dword [rax + r13*8], 0
mov byte [rax + r13*8 + 4], sil
mov byte [rax + r13*8 + 5], sil
inc r13
mov qword [rsp + 0x50], r13
movups xmm0, xmmword [rsp + 0x28]
movups xmm1, xmmword [rsp + 0x38]
movups xmm2, xmmword [rsp + 0x58]
movups xmm3, xmmword [rsp + 0x68]
movaps xmmword [rsp + 0x180], xmm0
movaps xmmword [rsp + 0x190], xmm1
movaps xmmword [rsp + 0x1b0], xmm2
movaps xmmword [rsp + 0x1c0], xmm3
movups xmm0, xmmword [rsp + 0x78]
movaps xmmword [rsp + 0x1d0], xmm0
movups xmm0, xmmword [rsp + 0x88]
movaps xmmword [rsp + 0x1e0], xmm0
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x1a0], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x1a8], rax
mov rsi, qword [rsp + 0xb0]
cmp rsi, qword [rsp + 0xa0]
jne 0x180555c53
lea rcx, [rsp + 0xa0]
call fcn.18055b300
add rdi, r15
mov rax, qword [rsp + 0xa8]
imul rcx, rsi, 0x70
movaps xmm0, xmmword [rsp + 0x1e0]
movups xmmword [rax + rcx + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x1d0]
movups xmmword [rax + rcx + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x1c0]
movups xmmword [rax + rcx + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x180]
movaps xmm1, xmmword [rsp + 0x190]
movaps xmm2, xmmword [rsp + 0x1a0]
movaps xmm3, xmmword [rsp + 0x1b0]
movups xmmword [rax + rcx + 0x30], xmm3
movups xmmword [rax + rcx + 0x20], xmm2
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rsi
mov qword [rsp + 0xb0], rsi
mov rcx, qword [rdi + 8]
mov rdx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x20]
mov r9, qword [rdi + 0x28]
test r9, r9
je 0x180555d40
mov r8, r9
shl r8, 4
mov r10, qword [r8 + rax - 8]
mov r8, rdx
sub r8, r10
jb 0x180555fe7
mov rsi, qword [rax]
mov r11, qword [rax + 8]
mov rdi, r11
sub rdi, rsi
jb 0x180555fe7
cmp r11, rdx
ja 0x180555fe7
lea r10, [rcx + r10*8]
lea r11, [rax + 0x10]
lea rsi, [rcx + rsi*8]
jmp 0x180555d4f
cmp r13, rax
jne 0x180555b30
mov rcx, rbx
call fcn.1804e46f0
jmp 0x180555b30
mov r8, rdx
mov r11, rax
xor r10d, r10d
mov rdi, rdx
mov rsi, rcx
shl r9, 4
add rax, r9
lea r9, [rsi + rdi*8]
movups xmmword [r12 - 0x20], xmm6
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x30], 4
mov qword [rsp + 0x48], 4
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], r11
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r10
mov qword [rsp + 0x80], r8
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], r9
xor r13d, r13d
cmp rsi, r9
jne 0x180555b64
jmp 0x180555832
mov ecx, dword [rsp + 0x13c]
mov r12, qword [rsp + 0x98]
mov dword [r12 + 0x7c], ecx
movups xmm0, xmmword [rsp + 0x12c]
movups xmmword [r12 + 0x6c], xmm0
movups xmm0, xmmword [rsp + 0x11c]
movups xmmword [r12 + 0x5c], xmm0
movups xmm0, xmmword [rsp + 0x10c]
movups xmmword [r12 + 0x4c], xmm0
movups xmm0, xmmword [rsp + 0xcc]
movups xmm1, xmmword [rsp + 0xdc]
movups xmm2, xmmword [rsp + 0xec]
movups xmm3, xmmword [rsp + 0xfc]
movups xmmword [r12 + 0x3c], xmm3
movups xmmword [r12 + 0x2c], xmm2
movups xmmword [r12 + 0x1c], xmm1
movups xmmword [r12 + 0xc], xmm0
mov qword [r12], rax
mov dword [r12 + 8], esi
mov rdx, qword [rsp + 0x28]
test rdx, rdx
je 0x180555e8f
mov rcx, qword [rsp + 0x30]
shl rdx, 2
mov r8d, 4
call fcn.1804cafa0
mov rdx, qword [rsp + 0x40]
test rdx, rdx
jne 0x180555e99
jmp 0x180555ead
mov r12, qword [rsp + 0x98]
mov dword [r12 + 8], eax
mov dword [r12 + 0xc], ebp
movabs rax, 0x8000000000000008
mov qword [r12], rax
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x180555ead
mov rcx, qword [rsp + 0x48]
shl rdx, 3
mov r8d, 4
call fcn.1804cafa0
mov rsi, qword [rsp + 0xb0]
test rsi, rsi
je 0x180555f12
mov rdi, qword [rsp + 0xa8]
add rdi, 0x20
jmp 0x180555ed9
add rdi, 0x70
dec rsi
je 0x180555f12
mov rdx, qword [rdi - 0x20]
test rdx, rdx
je 0x180555ef5
mov rcx, qword [rdi - 0x18]
shl rdx, 2
mov r8d, 4
call fcn.1804cafa0
mov rdx, qword [rdi - 8]
test rdx, rdx
je 0x180555ed0
mov rcx, qword [rdi]
shl rdx, 3
mov r8d, 4
call fcn.1804cafa0
jmp 0x180555ed0
mov rax, qword [rsp + 0xa0]
test rax, rax
je 0x180555f36
mov rcx, qword [rsp + 0xa8]
imul rdx, rax, 0x70
mov r8d, 8
call fcn.1804cafa0
mov rax, r12
movaps xmm6, xmmword [rsp + 0x230]
add rsp, 0x248
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov edx, dword [rsp + 0x13c]
mov r12, qword [rsp + 0x98]
mov dword [r12 + 0x7c], edx
movups xmm0, xmmword [rsp + 0x12c]
movups xmmword [r12 + 0x6c], xmm0
movups xmm0, xmmword [rsp + 0x11c]
movups xmmword [r12 + 0x5c], xmm0
movups xmm0, xmmword [rsp + 0x10c]
movups xmmword [r12 + 0x4c], xmm0
movups xmm0, xmmword [rsp + 0xcc]
movups xmm1, xmmword [rsp + 0xdc]
movups xmm2, xmmword [rsp + 0xec]
movups xmm3, xmmword [rsp + 0xfc]
movups xmmword [r12 + 0x3c], xmm3
movups xmmword [r12 + 0x2c], xmm2
movups xmmword [r12 + 0x1c], xmm1
movups xmmword [r12 + 0xc], xmm0
mov qword [r12], rcx
mov dword [r12 + 8], eax
mov rdx, qword [rsp + 0x40]
test rdx, rdx
jne 0x180555e99
jmp 0x180555ead
ud2