Function at 0x14002f110
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
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x1406a7e00]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov eax, dword [rcx + 4]
cmp eax, 0x6d667431
jne 0x14002f1d6
cmp dword [rdi + 8], 0x30
jb 0x14002f1c4
mov rbx, qword [rdi + 0x10]
mov dword [rsi + 0x68], 0
movzx r9d, byte [rbx + 8]
mov dword [rsi], r9d
movzx eax, byte [rbx + 9]
xor ecx, ecx
mov dword [rsi + 0x100], eax
cmp r9d, 3
jne 0x14002f1c6
lea edx, [rax - 5]
cmp dl, 0xfe
jb 0x14002f1c6
movzx ecx, byte [rbx + 0xa]
mov byte [rsi + 0x104], cl
movzx edx, byte [rbx + 0xa]
mov byte [rsi + 0x105], dl
movzx r10d, byte [rbx + 0xa]
mov byte [rsi + 0x106], r10b
cmp rcx, 2
jb 0x14002f1c4
mov r11d, dword [rdi + 8]
imul rcx, rax
imul rdx, r10
imul rdx, rcx
add r11, 0xffffffffffffffd0
lea rcx, [rax + r9]
shl rcx, 8
add rcx, rdx
cmp rcx, r11
jbe 0x14002fbc3
xor ecx, ecx
mov eax, dword [rdi + 4]
cmp eax, 0x6d667432
jne 0x14002f2c4
jmp 0x14002f1e3
xor ecx, ecx
cmp eax, 0x6d667432
jne 0x14002f2c4
cmp dword [rdi + 8], 0x34
jb 0x14002f2c2
mov r13, qword [rdi + 0x10]
mov dword [rsi + 0x68], 0
movzx r9d, byte [r13 + 8]
mov dword [rsi], r9d
movzx eax, byte [r13 + 9]
xor ecx, ecx
mov dword [rsi + 0x100], eax
cmp r9d, 3
jne 0x14002f2c4
lea edx, [rax - 5]
cmp dl, 0xfe
jb 0x14002f2c4
movzx r10d, byte [r13 + 0xa]
mov byte [rsi + 0x104], r10b
movzx edx, byte [r13 + 0xa]
mov byte [rsi + 0x105], dl
movzx r11d, byte [r13 + 0xa]
mov byte [rsi + 0x106], r11b
cmp r10, 2
jb 0x14002f2c2
movzx ebx, word [r13 + 0x30]
rol bx, 8
lea ecx, [rbx - 0x1001]
movzx ebp, cx
xor ecx, ecx
cmp ebp, 0xf001
jb 0x14002f2c4
movzx r15d, word [r13 + 0x32]
rol r15w, 8
lea ebp, [r15 - 0x1001]
movzx ebp, bp
cmp ebp, 0xf001
jb 0x14002f2c4
movzx ebx, bx
mov r12d, dword [rdi + 8]
add r12, 0xffffffffffffffcc
lea r14, [rbx + rbx]
imul r9, r14
imul r10, rax
imul rdx, r11
imul rdx, r10
movzx ecx, r15w
lea r10, [rcx + rcx]
mov r11, r10
imul r11, rax
add r11, r9
lea r11, [r11 + rdx*2]
cmp r11, r12
jbe 0x14002fcd3
xor ecx, ecx
cmp dword [rdi + 4], 0x6d424120
jne 0x14002f4aa
cmp dword [rdi + 8], 0x20
jb 0x14002fdd0
mov rcx, qword [rdi + 0x10]
movzx edx, byte [rcx + 8]
mov dword [rsi], edx
movzx eax, byte [rcx + 9]
xor ebp, ebp
mov dword [rsi + 0x100], eax
cmp edx, 3
jne 0x14002fdd2
add al, 0xfb
cmp al, 0xfe
jb 0x14002fdd2
mov eax, dword [rcx + 0xc]
test eax, eax
je 0x14002fdd0
bswap eax
mov r12d, dword [rdi + 8]
cmp eax, r12d
ja 0x14002fdd0
mov byte [rsp + 0x37], r8b
mov edx, dword [rcx + 0x10]
mov dword [rsp + 0x3c], edx
bswap edx
mov dword [rsp + 0x4c], edx
mov edx, dword [rcx + 0x14]
mov dword [rsp + 0x54], edx
bswap edx
mov qword [rsp + 0x58], rdx
mov edx, dword [rcx + 0x18]
mov dword [rsp + 0x38], edx
bswap edx
mov dword [rsp + 0x48], edx
mov ecx, dword [rcx + 0x1c]
mov dword [rsp + 0x50], ecx
bswap ecx
mov qword [rsp + 0x40], rcx
lea r14, [rsi + 8]
mov r13, qword [rdi + 0x10]
xor ecx, ecx
lea r15, [rsp + 0x6c]
nop dword [rax + rax]
mov rbp, rcx
mov edx, r12d
sub edx, eax
mov ebx, eax
lea rcx, [rbx + r13]
mov r8, r14
mov r9, r15
call fcn.14002d8b0
test al, al
je 0x14002fdd0
mov eax, dword [rsp + 0x6c]
mov ecx, 0xfffffffc
cmp rax, rcx
ja 0x14002fdd0
add eax, 3
and eax, 0xfffffffc
add rax, rbx
mov rcx, rax
shr rcx, 0x20
jne 0x14002fdd0
cmp rbp, 1
ja 0x14002f3cc
lea rcx, [rbp + 1]
add r14, 0x20
cmp r12d, eax
jae 0x14002f370
cmp rbp, 2
jb 0x14002fdd0
cmp dword [rsp + 0x54], 0
je 0x14002fdc9
cmp dword [rsp + 0x3c], 0
je 0x14002fdd0
mov r12d, dword [rsi]
mov dword [rsi + 0x68], r12d
test r12, r12
sete al
je 0x14002f476
mov r13d, dword [rdi + 8]
mov rcx, qword [rsp + 0x58]
cmp ecx, r13d
ja 0x14002f476
lea r14, [rsi + 0xa0]
mov rbp, qword [rdi + 0x10]
mov r15d, 1
mov edx, r13d
sub edx, ecx
mov ebx, ecx
lea rcx, [rbx + rbp]
mov r8, r14
lea r9, [rsp + 0x6c]
call fcn.14002d8b0
test al, al
je 0x14002fdd0
mov ecx, dword [rsp + 0x6c]
mov eax, 0xfffffffc
cmp rcx, rax
ja 0x14002fdd0
add ecx, 3
and ecx, 0xfffffffc
add rcx, rbx
mov rax, rcx
shr rax, 0x20
jne 0x14002fdd0
cmp r15, r12
setae al
jae 0x14002f476
inc r15
add r14, 0x20
cmp r13d, ecx
jae 0x14002f41a
test al, al
je 0x14002fdd0
mov ecx, dword [rdi + 8]
mov eax, dword [rsp + 0x4c]
lea rdx, [rax + 0x30]
cmp rdx, rcx
ja 0x14002fdd0
cmp byte [rsp + 0x37], 0
jne 0x14002fe08
movss xmm0, dword [0x1406908dc]
jmp 0x14002fe10
test cl, cl
je 0x14002fdd0
mov ebx, dword [rsi]
test ebx, ebx
je 0x14002f69f
mov edi, dword [rsi + 8]
test edi, edi
jle 0x14002f555
lea rcx, [rsi + 8]
lea eax, [rdi + rdi]
cvtsi2ss xmm0, eax
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x64], 0
movss xmm2, dword [0x1406908dc]
divss xmm2, xmm0
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x6c]
mov edx, edi
call fcn.140031340
cmp edi, eax
jne 0x14002f555
movss xmm0, dword [rsp + 0x6c]
ucomiss xmm0, dword [0x1406908dc]
jne 0x14002f555
jp 0x14002f555
movss xmm0, dword [rsp + 0x64]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14002f555
jp 0x14002f555
mov dword [rsi + 8], 0
movsd xmm0, qword [0x1405989e0]
movsd qword [rsi + 0xc], xmm0
xorps xmm0, xmm0
movups xmmword [rsi + 0x14], xmm0
mov dword [rsi + 0x24], 0
cmp ebx, 2
jb 0x14002f69f
mov edi, dword [rsi + 0x28]
test edi, edi
jle 0x14002f5fa
lea rcx, [rsi + 0x28]
lea eax, [rdi + rdi]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x64], 0
movss xmm2, dword [0x1406908dc]
divss xmm2, xmm0
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x6c]
mov edx, edi
call fcn.140031340
cmp edi, eax
jne 0x14002f5fa
movss xmm0, dword [rsp + 0x6c]
ucomiss xmm0, dword [0x1406908dc]
jne 0x14002f5fa
jp 0x14002f5fa
movss xmm0, dword [rsp + 0x64]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14002f5fa
jp 0x14002f5fa
mov dword [rsi + 0x28], 0
movsd xmm0, qword [0x1405989e0]
movsd qword [rsi + 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [rsi + 0x34], xmm0
mov dword [rsi + 0x44], 0
cmp ebx, 3
jb 0x14002f69f
mov edi, dword [rsi + 0x48]
test edi, edi
jle 0x14002f69f
lea rcx, [rsi + 0x48]
lea eax, [rdi + rdi]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x64], 0
movss xmm2, dword [0x1406908dc]
divss xmm2, xmm0
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x6c]
mov edx, edi
call fcn.140031340
cmp edi, eax
jne 0x14002f69f
movss xmm0, dword [rsp + 0x6c]
ucomiss xmm0, dword [0x1406908dc]
jne 0x14002f69f
jp 0x14002f69f
movss xmm0, dword [rsp + 0x64]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14002f69f
jp 0x14002f69f
mov dword [rsi + 0x48], 0
movsd xmm0, qword [0x1405989e0]
movsd qword [rsi + 0x4c], xmm0
xorps xmm0, xmm0
movups xmmword [rsi + 0x54], xmm0
mov dword [rsi + 0x64], 0
mov ebx, dword [rsi + 0x68]
test ebx, ebx
je 0x14002f8c6
mov edi, dword [rsi + 0xa0]
test edi, edi
jle 0x14002f758
lea rcx, [rsi + 0xa0]
lea eax, [rdi + rdi]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x64], 0
movss xmm2, dword [0x1406908dc]
divss xmm2, xmm0
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x6c]
mov edx, edi
call fcn.140031340
cmp edi, eax
jne 0x14002f758
movss xmm0, dword [rsp + 0x6c]
ucomiss xmm0, dword [0x1406908dc]
jne 0x14002f758
jp 0x14002f758
movss xmm0, dword [rsp + 0x64]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14002f758
jp 0x14002f758
mov dword [rsi + 0xa0], 0
movsd xmm0, qword [0x1405989e0]
movsd qword [rsi + 0xa4], xmm0
xorps xmm0, xmm0
movups xmmword [rsi + 0xac], xmm0
mov dword [rsi + 0xbc], 0
cmp ebx, 2
jb 0x14002f8c6
mov edi, dword [rsi + 0xc0]
test edi, edi
jle 0x14002f80f
lea rcx, [rsi + 0xc0]
lea eax, [rdi + rdi]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x64], 0
movss xmm2, dword [0x1406908dc]
divss xmm2, xmm0
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x6c]
mov edx, edi
call fcn.140031340
cmp edi, eax
jne 0x14002f80f
movss xmm0, dword [rsp + 0x6c]
ucomiss xmm0, dword [0x1406908dc]
jne 0x14002f80f
jp 0x14002f80f
movss xmm0, dword [rsp + 0x64]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14002f80f
jp 0x14002f80f
mov dword [rsi + 0xc0], 0
movsd xmm0, qword [0x1405989e0]
movsd qword [rsi + 0xc4], xmm0
xorps xmm0, xmm0
movups xmmword [rsi + 0xcc], xmm0
mov dword [rsi + 0xdc], 0
cmp ebx, 3
jb 0x14002f8c6
mov edi, dword [rsi + 0xe0]
test edi, edi
jle 0x14002f8c6
lea rcx, [rsi + 0xe0]
lea eax, [rdi + rdi]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x64], 0
movss xmm2, dword [0x1406908dc]
divss xmm2, xmm0
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x6c]
mov edx, edi
call fcn.140031340
cmp edi, eax
jne 0x14002f8c6
movss xmm0, dword [rsp + 0x6c]
ucomiss xmm0, dword [0x1406908dc]
jne 0x14002f8c6
jp 0x14002f8c6
movss xmm0, dword [rsp + 0x64]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14002f8c6
jp 0x14002f8c6
mov dword [rsi + 0xe0], 0
movsd xmm0, qword [0x1405989e0]
movsd qword [rsi + 0xe4], xmm0
xorps xmm0, xmm0
movups xmmword [rsi + 0xec], xmm0
mov dword [rsi + 0xfc], 0
mov ebx, dword [rsi + 0x100]
mov bpl, 1
test ebx, ebx
je 0x14002fdd2
mov edi, dword [rsi + 0x118]
test edi, edi
jle 0x14002f985
lea rcx, [rsi + 0x118]
lea eax, [rdi + rdi]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x64], 0
movss xmm2, dword [0x1406908dc]
divss xmm2, xmm0
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x6c]
mov edx, edi
call fcn.140031340
cmp edi, eax
jne 0x14002f985
movss xmm0, dword [rsp + 0x6c]
ucomiss xmm0, dword [0x1406908dc]
jne 0x14002f985
jp 0x14002f985
movss xmm0, dword [rsp + 0x64]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14002f985
jp 0x14002f985
mov dword [rsi + 0x118], 0
movsd xmm0, qword [0x1405989e0]
movsd qword [rsi + 0x11c], xmm0
xorps xmm0, xmm0
movups xmmword [rsi + 0x124], xmm0
mov dword [rsi + 0x134], 0
cmp ebx, 2
jb 0x14002fdd2
mov edi, dword [rsi + 0x138]
test edi, edi
jle 0x14002fa3c
lea rcx, [rsi + 0x138]
lea eax, [rdi + rdi]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x64], 0
movss xmm2, dword [0x1406908dc]
divss xmm2, xmm0
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x6c]
mov edx, edi
call fcn.140031340
cmp edi, eax
jne 0x14002fa3c
movss xmm0, dword [rsp + 0x6c]
ucomiss xmm0, dword [0x1406908dc]
jne 0x14002fa3c
jp 0x14002fa3c
movss xmm0, dword [rsp + 0x64]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14002fa3c
jp 0x14002fa3c
mov dword [rsi + 0x138], 0
movsd xmm0, qword [0x1405989e0]
movsd qword [rsi + 0x13c], xmm0
xorps xmm0, xmm0
movups xmmword [rsi + 0x144], xmm0
mov dword [rsi + 0x154], 0
cmp ebx, 3
jb 0x14002fdd2
mov edi, dword [rsi + 0x158]
test edi, edi
jle 0x14002faf3
lea rcx, [rsi + 0x158]
lea eax, [rdi + rdi]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x64], 0
movss xmm2, dword [0x1406908dc]
divss xmm2, xmm0
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x6c]
mov edx, edi
call fcn.140031340
cmp edi, eax
jne 0x14002faf3
movss xmm0, dword [rsp + 0x6c]
ucomiss xmm0, dword [0x1406908dc]
jne 0x14002faf3
jp 0x14002faf3
movss xmm0, dword [rsp + 0x64]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14002faf3
jp 0x14002faf3
mov dword [rsi + 0x158], 0
movsd xmm0, qword [0x1405989e0]
movsd qword [rsi + 0x15c], xmm0
xorps xmm0, xmm0
movups xmmword [rsi + 0x164], xmm0
mov dword [rsi + 0x174], 0
cmp ebx, 4
jb 0x14002fdd2
mov edi, dword [rsi + 0x178]
test edi, edi
jle 0x14002fdd2
lea rcx, [rsi + 0x178]
lea eax, [rdi + rdi]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x64], 0
movss xmm2, dword [0x1406908dc]
divss xmm2, xmm0
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x6c]
mov edx, edi
call fcn.140031340
cmp edi, eax
jne 0x14002fdd2
movss xmm0, dword [rsp + 0x6c]
ucomiss xmm0, dword [0x1406908dc]
jne 0x14002fdd2
jp 0x14002fdd2
movss xmm0, dword [rsp + 0x64]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14002fdd2
jp 0x14002fdd2
mov dword [rsi + 0x178], 0
movsd xmm0, qword [0x1405989e0]
movsd qword [rsi + 0x17c], xmm0
xorps xmm0, xmm0
movups xmmword [rsi + 0x184], xmm0
mov dword [rsi + 0x194], 0
jmp 0x14002fdd2
shl r9, 8
lea rcx, [rbx + 0x30]
mov dword [rsi + 8], 0x100
mov qword [rsi + 0x10], rcx
mov qword [rsi + 0x18], 0
mov dword [rsi + 0x28], 0x100
lea rcx, [rbx + 0x130]
mov qword [rsi + 0x30], rcx
mov qword [rsi + 0x38], 0
mov dword [rsi + 0x48], 0x100
lea rcx, [rbx + 0x230]
mov qword [rsi + 0x50], rcx
mov qword [rsi + 0x58], 0
lea rcx, [rbx + r9]
add rcx, 0x30
mov qword [rsi + 0x108], rcx
mov qword [rsi + 0x110], 0
add rdx, rcx
mov dword [rsi + 0x118], 0x100
mov qword [rsi + 0x120], rdx
mov qword [rsi + 0x128], 0
mov cl, 1
cmp al, 1
je 0x14002f1c6
mov dword [rsi + 0x138], 0x100
lea r9, [rdx + 0x100]
mov qword [rsi + 0x140], r9
mov qword [rsi + 0x148], 0
cmp al, 2
je 0x14002f1c6
mov dword [rsi + 0x158], 0x100
lea r9, [rdx + 0x200]
mov qword [rsi + 0x160], r9
mov qword [rsi + 0x168], 0
cmp al, 3
je 0x14002f1c6
mov dword [rsi + 0x178], 0x100
add rdx, 0x300
mov qword [rsi + 0x180], rdx
mov qword [rsi + 0x188], 0
jmp 0x14002f1c6
add rdx, rdx
mov r9d, r9d
lea r11, [r13 + 0x34]
mov dword [rsi + 8], ebx
mov qword [rsi + 0x10], 0
mov qword [rsi + 0x18], r11
mov dword [rsi + 0x28], ebx
mov r11d, r14d
lea r11, [r13 + r11 + 0x34]
mov qword [rsi + 0x30], 0
mov qword [rsi + 0x38], r11
mov dword [rsi + 0x48], ebx
mov r11d, ebx
lea r11, [r13 + r11*4 + 0x34]
mov qword [rsi + 0x50], 0
mov qword [rsi + 0x58], r11
add r9, r13
add r9, 0x34
mov qword [rsi + 0x108], 0
mov qword [rsi + 0x110], r9
add rdx, r9
mov dword [rsi + 0x118], ecx
mov qword [rsi + 0x120], 0
mov qword [rsi + 0x128], rdx
cmp al, 1
je 0x14002fdb7
mov dword [rsi + 0x138], ecx
mov r9d, r10d
add r9, rdx
mov qword [rsi + 0x140], 0
mov qword [rsi + 0x148], r9
cmp al, 2
je 0x14002fdb7
mov dword [rsi + 0x158], ecx
mov r9d, ecx
lea r9, [rdx + r9*4]
mov qword [rsi + 0x160], 0
mov qword [rsi + 0x168], r9
cmp al, 3
je 0x14002fdb7
mov dword [rsi + 0x178], ecx
add ecx, ecx
lea eax, [rcx + rcx*2]
add rdx, rax
mov qword [rsi + 0x180], 0
mov qword [rsi + 0x188], rdx
cmp dword [rdi + 4], 0x6d424120
je 0x14002f2d1
jmp 0x14002f4b2
cmp dword [rsp + 0x3c], 0
je 0x14002fdf2
xor ebp, ebp
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.1405602f0
mov eax, ebp
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dword [rsi + 0x68], 0
mov r8, qword [rsp + 0x40]
mov r9d, dword [rsp + 0x38]
jmp 0x14002ff6f
movss xmm0, dword [0x14059be18]
mov r8, qword [rsp + 0x40]
mov r9d, dword [rsp + 0x38]
mov rcx, qword [rdi + 0x10]
mov edx, dword [rcx + rax]
bswap edx
cvtsi2ss xmm2, edx
movss xmm1, dword [0x14059be04]
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x6c], xmm2
mov edx, dword [rcx + rax + 4]
bswap edx
xorps xmm2, xmm2
cvtsi2ss xmm2, edx
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x70], xmm2
mov edx, dword [rcx + rax + 8]
bswap edx
xorps xmm2, xmm2
cvtsi2ss xmm2, edx
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x74], xmm2
mov edx, dword [rcx + rax + 0xc]
bswap edx
xorps xmm2, xmm2
cvtsi2ss xmm2, edx
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x7c], xmm2
mov edx, dword [rcx + rax + 0x10]
bswap edx
xorps xmm2, xmm2
cvtsi2ss xmm2, edx
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x80], xmm2
mov edx, dword [rcx + rax + 0x14]
bswap edx
xorps xmm2, xmm2
cvtsi2ss xmm2, edx
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x84], xmm2
mov edx, dword [rcx + rax + 0x18]
bswap edx
xorps xmm2, xmm2
cvtsi2ss xmm2, edx
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x8c], xmm2
mov edx, dword [rcx + rax + 0x1c]
bswap edx
xorps xmm2, xmm2
cvtsi2ss xmm2, edx
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x90], xmm2
mov edx, dword [rcx + rax + 0x20]
bswap edx
xorps xmm2, xmm2
cvtsi2ss xmm2, edx
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x94], xmm2
mov edx, dword [rcx + rax + 0x24]
bswap edx
xorps xmm2, xmm2
cvtsi2ss xmm2, edx
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x78], xmm2
mov edx, dword [rcx + rax + 0x28]
bswap edx
xorps xmm2, xmm2
cvtsi2ss xmm2, edx
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x88], xmm2
mov eax, dword [rcx + rax + 0x2c]
bswap eax
xorps xmm2, xmm2
cvtsi2ss xmm2, eax
mulss xmm2, xmm1
mulss xmm2, xmm0
movss dword [rsi + 0x98], xmm2
cmp dword [rsp + 0x50], 0
je 0x140030052
test r9d, r9d
je 0x14002fdd0
mov r15d, dword [rsi + 0x100]
test r15, r15
sete al
je 0x14003000b
mov ebp, dword [rdi + 8]
cmp r8d, ebp
ja 0x14003000b
lea rbx, [rsi + 0x118]
mov r12, qword [rdi + 0x10]
mov r13d, 1
mov edx, ebp
sub edx, r8d
mov r14d, r8d
lea rcx, [r12 + r14]
mov r8, rbx
lea r9, [rsp + 0x6c]
call fcn.14002d8b0
test al, al
je 0x14002fdd0
mov r8d, dword [rsp + 0x6c]
mov eax, 0xfffffffc
cmp r8, rax
ja 0x14002fdd0
add r8d, 3
and r8d, 0xfffffffc
add r8, r14
mov rax, r8
shr rax, 0x20
jne 0x14002fdd0
cmp r13, r15
setae al
jae 0x14003000b
inc r13
add rbx, 0x20
cmp ebp, r8d
jae 0x14002ffab
test al, al
je 0x14002fdd0
mov ecx, dword [rdi + 8]
mov edx, dword [rsp + 0x48]
lea rax, [rdx + 0x14]
cmp rax, rcx
ja 0x14002fdd0
mov r8, qword [rdi + 0x10]
lea rcx, [r8 + rdx]
movzx edx, byte [r8 + rdx + 0x10]
cmp edx, 2
je 0x140030078
cmp edx, 1
jne 0x14002fdd0
lea rdx, [rcx + 0x14]
mov qword [rsi + 0x108], rdx
xor edx, edx
jmp 0x140030087
test r9d, r9d
jne 0x14002fdd0
mov ebx, dword [rsi]
cmp ebx, dword [rsi + 0x100]
jne 0x14002fdd0
mov dword [rsi + 0x100], 0
jmp 0x14002f4b4
mov qword [rsi + 0x108], 0
lea rdx, [rcx + 0x14]
mov qword [rsi + 0x110], rdx
movzx edx, byte [rcx + 0x10]
imul edx, dword [rsi + 0x100]
mov ebx, dword [rsi]
test rbx, rbx
je 0x1400300c6
xor r8d, r8d
movzx r9d, byte [rcx + r8]
mov byte [rsi + r8 + 0x104], r9b
cmp r9, 2
jb 0x14002fdd0
imul rdx, r9
inc r8
cmp rbx, r8
jne 0x1400300a3
mov ecx, dword [rdi + 8]
add rdx, rax
cmp rdx, rcx
ja 0x14002fdd0
jmp 0x14002f4b4