Function at 0x180004d70
Capabilities:
Log keystrokes via polling
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3a10]
mov eax, 0x3b10
call fcn.1801cc6b0
sub rsp, rax
movaps xmmword [rsp + 0x3b00], xmm6
movaps xmmword [rsp + 0x3af0], xmm7
movaps xmmword [rsp + 0x3ae0], xmm8
movaps xmmword [rsp + 0x3ad0], xmm9
movaps xmmword [rsp + 0x3ac0], xmm10
movaps xmmword [rsp + 0x3ab0], xmm11
movaps xmmword [rsp + 0x3aa0], xmm12
movaps xmmword [rsp + 0x3a90], xmm13
movaps xmmword [rsp + 0x3a80], xmm14
movaps xmmword [rsp + 0x3a70], xmm15
mov rax, qword [0x18028ab00]
xor rax, rsp
mov qword [rbp + 0x3960], rax
mov r13, r8
mov qword [rsp + 0x58], rdx
mov r12, rcx
mov rbx, qword [0x180391630]
mov qword [rbp - 0x80], rbx
mov rax, qword [rbx + 0x4030]
mov byte [rax + 0xc8], 1
mov r15, qword [rbx + 0x4030]
cmp byte [r15 + 0xcb], 0
je 0x180004e3a
xor al, al
jmp 0x180005cf8
movsxd r8, dword [r15 + 0x108]
mov rax, qword [r15 + 0x110]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
call fcn.18001cdc0
mov edi, eax
mov rcx, qword [r15]
cmp dword [rcx + 0x407c], eax
jne 0x180004e77
mov r8, r12
mov edx, ntohs
mov ecx, eax
call fcn.1800420d0
mov rbx, qword [0x180391630]
mov rcx, r12
cmp r12, 0xffffffffffffffff
jae 0x180004e9d
movzx edx, byte [rcx]
test dl, dl
je 0x180004e9d
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x180004e94
cmp byte [rax], dl
je 0x180004e9d
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x180004e80
movss xmm1, dword [rbx + 0x3d58]
movss dword [rbp - 0x68], xmm1
xor r14d, r14d
movss xmm8, dword [0x18025979c]
movss xmm9, dword [0x180259768]
movss xmm10, dword [0x1802593a8]
cmp r12, rcx
jne 0x180004ed7
xorps xmm7, xmm7
movss dword [rbp - 0x64], xmm7
jmp 0x180004f2b
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r12
movss dword [rsp + 0x20], xmm8
movaps xmm3, xmm9
movaps xmm2, xmm1
lea rdx, [rbp - 0x70]
mov rcx, qword [rbx + 0x3d50]
call fcn.180085670
movss xmm0, dword [rbp - 0x70]
addss xmm0, xmm10
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x64], xmm0
movss xmm1, dword [rbp - 0x6c]
movss dword [rbp - 0x68], xmm1
xorps xmm7, xmm7
movss xmm6, dword [r15 + 0x118]
movss xmm14, dword [r15 + 0x11c]
movaps xmm0, xmm14
addss xmm0, dword [0x1802595b8]
movss dword [rbp - 0x70], xmm0
movaps xmm15, xmm6
addss xmm15, dword [0x1802596e8]
movss dword [rbp + 8], xmm6
movss dword [rbp + 0xc], xmm14
movss dword [rbp + 0x10], xmm15
movss dword [rbp + 0x14], xmm0
mov rcx, qword gs:[0x58]
mov eax, dword [0x1803907bc]
mov edx, 8
mov rax, qword [rcx + rax*8]
mov eax, dword [rdx + rax]
cmp dword [0x180397484], eax
jle 0x180004ff2
lea rcx, [0x180397484]
call fcn.1801cba90
cmp dword [0x180397484], 0xffffffff
jne 0x180004ff2
mov qword [0x180397488], r14
mov qword [0x180397490], r14
mov ecx, 0x58
call fcn.1801cbb08
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [0x180397488], rax
lea rcx, [0x180210540]
call fcn.1801cbe9c
nop
lea rcx, [0x180397484]
call fcn.1801cba24
mov rsi, qword [0x180397488]
mov rax, qword [rsi + 8]
mov rbx, rsi
movzx edx, byte [rax + 0x19]
test dl, dl
jne 0x180005027
mov rcx, rax
nop dword [rax + rax]
cmp dword [rcx + 0x1c], edi
jae 0x18000501b
mov rcx, qword [rcx + 0x10]
jmp 0x180005021
mov rbx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x180005010
cmp byte [rbx + 0x19], 0
jne 0x180005032
cmp edi, dword [rbx + 0x1c]
jae 0x180005035
mov rbx, rsi
cmp rbx, rsi
jne 0x180005195
mov word [rbp - 0x13], r14w
mov byte [rbp - 0x11], 0
xorps xmm0, xmm0
xorps xmm1, xmm1
xorps xmm2, xmm2
mov dword [rbp - 0x18], r14d
mov byte [rbp - 0x14], 0
mov dword [rbp + 0x3920], edi
movups xmmword [rbp + 0x3924], xmm0
movups xmmword [rbp + 0x3934], xmm1
movups xmmword [rbp + 0x3944], xmm2
movsd xmm0, qword [rbp - 0x18]
movsd qword [rbp + 0x3954], xmm0
mov qword [rbp - 0x60], rax
mov dword [rbp - 0x58], r14d
mov rcx, rsi
test dl, dl
jne 0x1800050b6
nop
mov qword [rbp - 0x60], rax
cmp dword [rax + 0x1c], edi
jae 0x1800050a3
mov dword [rbp - 0x58], r14d
mov rax, qword [rax + 0x10]
jmp 0x1800050b0
mov dword [rbp - 0x58], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180005090
cmp byte [rcx + 0x19], 0
jne 0x1800050c5
cmp edi, dword [rcx + 0x1c]
jae 0x180005161
movabs rax, 0x2e8ba2e8ba2e8ba
cmp qword [0x180397490], rax
je 0x180005d5a
lea rbx, [0x180397488]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], r14
mov ecx, 0x58
call fcn.1801cbb08
mov r8, rax
movups xmm0, xmmword [rbp + 0x3920]
movups xmmword [rax + 0x1c], xmm0
movups xmm1, xmmword [rbp + 0x3930]
movups xmmword [rax + 0x2c], xmm1
movups xmm0, xmmword [rbp + 0x3940]
movups xmmword [rax + 0x3c], xmm0
movsd xmm1, qword [rbp + 0x3950]
movsd qword [rax + 0x4c], xmm1
mov eax, dword [rbp + 0x3958]
mov dword [r8 + 0x54], eax
mov qword [r8], rsi
mov qword [r8 + 8], rsi
mov qword [r8 + 0x10], rsi
mov word [r8 + 0x18], 0
movups xmm0, xmmword [rbp - 0x60]
movaps xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.18000d060
mov rsi, qword [0x180397488]
mov rax, qword [rsi + 8]
mov rbx, rsi
cmp byte [rax + 0x19], 0
jne 0x180005187
nop
cmp dword [rax + 0x1c], edi
jae 0x18000517b
mov rax, qword [rax + 0x10]
jmp 0x180005181
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180005170
cmp byte [rbx + 0x19], 0
jne 0x180005192
cmp edi, dword [rbx + 0x1c]
jae 0x180005195
mov rbx, rsi
xorps xmm0, xmm0
movups xmmword [rbp + 0x18], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x28], xmm1
mov r8d, 3
lea rdx, [0x1802350dc]
lea rcx, [rbp + 0x18]
call fcn.180009080
nop
cmp byte [rbx + 0x54], 0
je 0x1800051d7
mov r8d, 5
lea rdx, str.._._.
lea rcx, [rbp + 0x18]
call fcn.180008610
mov rdx, qword [0x180391630]
add rdx, 8
lea rcx, [rbp + 0x40]
call fcn.180005d60
nop
xor r9b, r9b
cmp byte [rbx + 0x54], r9b
je 0x1800052bc
mov ecx, r14d
lea rdx, [rbp + 0xe80]
cmp byte [rdx], 0
je 0x180005223
mov r8d, ecx
sub r8d, 1
je 0x180005251
sub r8d, 1
je 0x180005240
sub r8d, 1
je 0x18000522f
cmp r8d, 1
je 0x180005262
inc ecx
inc rdx
cmp ecx, 5
jl 0x180005203
jmp 0x18000526c
mov dword [rbx + 0x50], 5
mov r9b, 1
inc ecx
inc rdx
jmp 0x180005203
mov dword [rbx + 0x50], 4
mov r9b, 1
inc ecx
inc rdx
jmp 0x180005203
mov dword [rbx + 0x50], 2
mov r9b, 1
inc ecx
inc rdx
jmp 0x180005203
mov dword [rbx + 0x50], 6
mov r9b, 1
test r9b, r9b
jne 0x1800052b8
mov ecx, 8
lea rdx, [rbp + 0xb99]
nop dword [rax]
cmp ecx, 0x1b
je 0x180005296
cmp byte [rdx - 1], 0
je 0x180005291
mov dword [rbx + 0x50], ecx
mov r9b, 1
cmp ecx, 0x1a
je 0x1800052a4
cmp byte [rdx], 0
je 0x1800052a4
lea eax, [rcx + 1]
mov dword [rbx + 0x50], eax
mov r9b, 1
add ecx, 2
add rdx, 2
cmp ecx, 0xa5
jle 0x180005280
test r9b, r9b
je 0x1800052bc
mov byte [rbx + 0x54], 0
movsxd rax, dword [rbx + 0x50]
mov rsi, 0xffffffffffffffff
test eax, eax
je 0x18000531a
cmp byte [rbx + 0x54], 0
jne 0x18000531a
mov r8, rax
lea rax, str.Unknown
mov r8, qword [rax + r8*8]
mov edx, 0x40
lea rcx, [rbp + 0x3920]
call fcn.1801d5dcc
lea rax, [rbp + 0x3920]
mov r8, rsi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180005300
lea rdx, [rbp + 0x3920]
lea rcx, [rbp + 0x18]
call fcn.180008610
mov eax, dword [rbx + 0x50]
mov dword [r13], eax
lea rax, [rbp + 0x18]
cmp qword [rbp + 0x30], 0xf
cmova rax, qword [rbp + 0x18]
mov r14, qword [0x180391630]
movss xmm13, dword [r14 + 0x3d58]
test rax, rax
jne 0x18000534a
movaps xmm12, xmm7
jmp 0x18000539a
xor ecx, ecx
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm8
movaps xmm3, xmm9
movaps xmm2, xmm13
lea rdx, [rsp + 0x50]
mov rcx, qword [r14 + 0x3d50]
call fcn.180085670
movss xmm0, dword [rsp + 0x50]
addss xmm0, xmm10
cvttss2si eax, xmm0
movd xmm12, eax
cvtdq2ps xmm12, xmm12
movss xmm13, dword [rsp + 0x54]
movaps xmm11, xmm14
addss xmm11, dword [0x1802595b4]
movaps xmm7, xmm6
movss xmm9, dword [0x1802596d4]
addss xmm7, xmm9
movaps xmm8, xmm14
movss xmm10, dword [0x1802593b0]
addss xmm8, xmm10
subss xmm9, xmm12
subss xmm9, dword [0x180259588]
addss xmm9, xmm6
movss dword [rsp + 0x60], xmm9
movss dword [rsp + 0x64], xmm8
movss dword [rsp + 0x68], xmm7
movss dword [rsp + 0x6c], xmm11
movss xmm1, dword [r14 + 0xe40]
movss xmm0, dword [r14 + 0xe44]
comiss xmm1, xmm9
jb 0x180005435
comiss xmm7, xmm1
jb 0x180005435
comiss xmm0, xmm8
jb 0x180005435
comiss xmm11, xmm0
jb 0x180005435
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.18002dec0
test al, al
je 0x180005435
mov byte [rbx + 0x54], 1
movss xmm1, dword [r14 + 0xe40]
movss xmm0, dword [r14 + 0xe44]
comiss xmm1, xmm9
jb 0x18000545e
comiss xmm7, xmm1
jb 0x18000545e
comiss xmm0, xmm8
jb 0x18000545e
comiss xmm11, xmm0
jae 0x180005472
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.18002dec0
test al, al
je 0x180005472
mov byte [rbx + 0x54], 0
cmp byte [rbx + 0x54], 0
je 0x180005493
mov ecx, 0x1b
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x180005493
mov dword [rbx + 0x50], 0
mov byte [rbx + 0x54], 0
movaps xmm3, xmm14
addss xmm3, dword [0x1802595a0]
movaps xmm2, xmm6
addss xmm2, dword [0x1802596e0]
movaps xmm1, xmm14
addss xmm1, dword [0x180259518]
movaps xmm0, xmm6
addss xmm0, dword [0x1802596d8]
movss dword [rbp - 0x10], xmm0
movss dword [rbp - 0xc], xmm1
movss dword [rbp - 8], xmm2
movss dword [rbp - 4], xmm3
movss xmm0, dword [rbp - 0x70]
subss xmm0, xmm14
subss xmm15, xmm6
movss dword [rsp + 0x50], xmm15
movss dword [rsp + 0x54], xmm0
mov rax, qword [rbp - 0x80]
movss xmm1, dword [rax + 0x3928]
lea rcx, [rsp + 0x50]
call fcn.1800301c0
xor r9d, r9d
xor r8d, r8d
mov edx, edi
lea rcx, [rbp + 8]
call fcn.18002ff40
test al, al
jne 0x180005524
xor r14b, r14b
jmp 0x180005cde
mov dword [rsp + 0x20], 0
lea r9, [rbp]
lea r8, [rbp + 1]
mov edx, edi
lea rcx, [rbp - 0x10]
call fcn.180097860
movzx r14d, al
mov rcx, qword [0x180391630]
test al, al
je 0x180005583
mov rdx, qword [rsp + 0x58]
cmp byte [rdx], 0
sete al
mov byte [rdx], al
cmp word [rcx + 0x5ee6], 0
jg 0x180005583
mov eax, dword [rcx + 0x4094]
cmp eax, edi
je 0x180005573
test eax, eax
jne 0x18000557c
mov word [rcx + 0x40a4], 0x101
or dword [rcx + 0x49e8], 4
cmp byte [rbx + 0x54], 0
jne 0x1800055d4
movsxd rax, dword [r13]
cmp byte [rbp + rax + 0xb90], 0
je 0x1800055d4
movzx edx, byte [0x1803915ec]
test dl, dl
jne 0x1800055db
mov dl, 1
mov byte [0x1803915ec], dl
cmp word [rcx + 0x5ee6], 0
jg 0x1800055db
mov eax, dword [rcx + 0x4094]
cmp eax, edi
je 0x1800055c2
test eax, eax
jne 0x1800055cb
mov word [rcx + 0x40a4], 0x101
or dword [rcx + 0x49e8], 4
jmp 0x1800055db
movzx edx, byte [0x1803915ec]
movsxd rax, dword [r13]
cmp byte [rbp + rax + 0xb90], 0
jne 0x1800055f4
test dl, dl
je 0x1800055f4
mov byte [0x1803915ec], 0
xor r8d, r8d
mov edx, edi
lea rcx, [rbp + 8]
call fcn.180020930
mov rcx, qword [0x180391630]
movss xmm4, dword [rcx + 0x18]
movss xmm6, dword [0x180259518]
mulss xmm4, xmm6
lea r8, [0x180397450]
lea rax, [0x180397410]
mov rdx, qword [rsp + 0x58]
cmp byte [rdx], 0
cmovne rax, r8
movss xmm5, dword [rax + 0xc]
movss xmm14, dword [0x1802596ec]
divss xmm5, xmm14
movss xmm3, dword [rax + 8]
divss xmm3, xmm14
subss xmm5, dword [rbx + 0x2c]
mulss xmm5, xmm4
addss xmm5, dword [rbx + 0x2c]
subss xmm3, dword [rbx + 0x28]
mulss xmm3, xmm4
addss xmm3, dword [rbx + 0x28]
movss xmm2, dword [rax + 4]
divss xmm2, xmm14
subss xmm2, dword [rbx + 0x24]
mulss xmm2, xmm4
addss xmm2, dword [rbx + 0x24]
movss xmm0, dword [rax]
divss xmm0, xmm14
subss xmm0, dword [rbx + 0x20]
mulss xmm0, xmm4
addss xmm0, dword [rbx + 0x20]
shufps xmm0, xmm0, 0xe1
movss xmm0, xmm2
shufps xmm0, xmm0, 0xc6
movss xmm0, xmm3
shufps xmm0, xmm0, 0x27
movss xmm0, xmm5
shufps xmm0, xmm0, 0x39
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbx + 0x20], xmm0
movss xmm3, dword [rcx + 0x18]
mulss xmm3, xmm6
movss xmm5, dword [0x1803973fc]
divss xmm5, xmm14
movss xmm4, dword [0x1803973f8]
divss xmm4, xmm14
subss xmm4, dword [rbx + 0x38]
mulss xmm4, xmm3
addss xmm4, dword [rbx + 0x38]
movss xmm2, dword [0x1803973f4]
divss xmm2, xmm14
subss xmm2, dword [rbx + 0x34]
mulss xmm2, xmm3
addss xmm2, dword [rbx + 0x34]
movss xmm1, dword [0x1803973f0]
divss xmm1, xmm14
subss xmm1, dword [rbx + 0x30]
mulss xmm1, xmm3
addss xmm1, dword [rbx + 0x30]
subss xmm5, dword [rbx + 0x3c]
mulss xmm5, xmm3
addss xmm5, dword [rbx + 0x3c]
shufps xmm1, xmm1, 0xe1
movss xmm1, xmm2
shufps xmm1, xmm1, 0xc6
movss xmm1, xmm4
shufps xmm1, xmm1, 0x27
movss xmm1, xmm5
shufps xmm1, xmm1, 0x39
movups xmmword [rbp - 0x80], xmm1
movups xmmword [rbx + 0x30], xmm1
movss xmm3, dword [rcx + 0x18]
mulss xmm3, xmm6
movss xmm5, dword [0x1803973fc]
divss xmm5, xmm14
movss xmm4, dword [0x1803973f8]
divss xmm4, xmm14
movss xmm2, dword [0x1803973f4]
divss xmm2, xmm14
subss xmm5, dword [rbx + 0x4c]
mulss xmm5, xmm3
addss xmm5, dword [rbx + 0x4c]
subss xmm4, dword [rbx + 0x48]
mulss xmm4, xmm3
addss xmm4, dword [rbx + 0x48]
subss xmm2, dword [rbx + 0x44]
mulss xmm2, xmm3
addss xmm2, dword [rbx + 0x44]
movss xmm0, dword [0x1803973f0]
divss xmm0, xmm14
subss xmm0, dword [rbx + 0x40]
mulss xmm0, xmm3
addss xmm0, dword [rbx + 0x40]
shufps xmm0, xmm0, 0xe1
movss xmm0, xmm2
shufps xmm0, xmm0, 0xc6
movss xmm0, xmm4
shufps xmm0, xmm0, 0x27
movss xmm0, xmm5
shufps xmm0, xmm0, 0x39
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbx + 0x40], xmm0
movss xmm3, dword [0x18039741c]
divss xmm3, xmm14
movss xmm1, dword [0x180397418]
divss xmm1, xmm14
movss xmm0, dword [0x180397414]
divss xmm0, xmm14
movss xmm2, dword [0x180397410]
divss xmm2, xmm14
shufps xmm2, xmm2, 0xe1
movss xmm2, xmm0
shufps xmm2, xmm2, 0xc6
movss xmm2, xmm1
shufps xmm2, xmm2, 0x27
movss xmm2, xmm3
shufps xmm2, xmm2, 0x39
movups xmmword [rbp - 0x80], xmm2
movups xmmword [rbp - 0x80], xmm2
mulss xmm3, dword [rcx + 0x38e8]
movss dword [rbp - 0x74], xmm3
lea rcx, [rbp - 0x80]
call fcn.18001d360
mov dword [rsp + 0x28], 0
movss xmm0, dword [0x180259488]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x60]
mov rcx, qword [r15 + 0x2b0]
call fcn.18007c3d0
mov rdi, qword [r15 + 0x2b0]
movss xmm3, dword [0x18039740c]
divss xmm3, xmm14
movss xmm1, dword [0x180397408]
divss xmm1, xmm14
movss xmm0, dword [0x180397404]
divss xmm0, xmm14
movss xmm2, dword [0x180397400]
divss xmm2, xmm14
mov rax, qword [0x180391630]
shufps xmm2, xmm2, 0xe1
movss xmm2, xmm0
shufps xmm2, xmm2, 0xc6
movss xmm2, xmm1
shufps xmm2, xmm2, 0x27
movss xmm2, xmm3
shufps xmm2, xmm2, 0x39
movups xmmword [rsp + 0x60], xmm2
movups xmmword [rsp + 0x60], xmm2
mulss xmm3, dword [rax + 0x38e8]
movss dword [rsp + 0x6c], xmm3
lea rcx, [rsp + 0x60]
call fcn.18001d360
mov dword [rbp - 0x70], eax
movss xmm6, dword [0x180259350]
movss xmm15, dword [0x18025934c]
test eax, 0xff000000
je 0x1800059c6
movaps xmm4, xmm8
addss xmm4, xmm6
movaps xmm2, xmm9
addss xmm2, xmm6
movaps xmm1, xmm11
movaps xmm0, xmm7
movss dword [rsp + 0x50], xmm2
movss dword [rsp + 0x54], xmm4
mov dword [rsp + 0x20], 0
movss xmm3, dword [0x180259488]
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x50]
mov rcx, rdi
test byte [rdi + 0x30], 1
je 0x18000597e
subss xmm1, xmm6
subss xmm0, xmm6
jmp 0x180005988
subss xmm1, xmm15
subss xmm0, xmm15
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x5c], xmm1
call fcn.18007bda0
movss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 1
mov r9d, dword [rbp - 0x70]
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.1800797f0
mov dword [rdi + 0x78], 0
mov r10, qword [r15 + 0x2b0]
lea r8, [rbp + 0x18]
cmp qword [rbp + 0x30], 0xf
cmova r8, qword [rbp + 0x18]
lea rcx, [rbx + 0x40]
call fcn.18001d360
mov ecx, eax
mulss xmm13, xmm6
addss xmm8, xmm11
mulss xmm8, xmm6
subss xmm8, xmm13
addss xmm7, xmm9
mulss xmm7, xmm6
mulss xmm12, xmm6
subss xmm7, xmm12
movss dword [rsp + 0x58], xmm7
movss dword [rsp + 0x5c], xmm8
test eax, 0xff000000
je 0x180005a84
inc rsi
cmp byte [r8 + rsi], 0
jne 0x180005a21
add rsi, r8
xorps xmm8, xmm8
cmp r8, rsi
je 0x180005a88
mov rax, qword [r10 + 0x38]
movups xmm0, xmmword [r10 + 0x88]
movups xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], r8
lea rdx, [rsp + 0x60]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], ecx
lea r9, [rsp + 0x58]
movss xmm2, dword [rax + 0x10]
mov rdx, r10
mov rcx, qword [rax + 8]
call fcn.180085a80
jmp 0x180005a88
xorps xmm8, xmm8
lea rcx, [rbx + 0x20]
call fcn.18001d360
movss xmm1, dword [rbp - 4]
subss xmm1, xmm10
movss xmm0, dword [rbp - 8]
subss xmm0, xmm10
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x5c], xmm1
movss xmm2, dword [rbp - 0xc]
addss xmm2, xmm10
movss xmm0, dword [rbp - 0x10]
addss xmm0, xmm10
movss dword [rsp + 0x50], xmm0
movss dword [rsp + 0x54], xmm2
xor r13d, r13d
mov dword [rsp + 0x28], r13d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x50]
mov rcx, qword [r15 + 0x2b0]
call fcn.18007c3d0
mov rdi, qword [r15 + 0x2b0]
movss xmm3, dword [0x18039740c]
divss xmm3, xmm14
movss xmm1, dword [0x180397408]
divss xmm1, xmm14
movss xmm0, dword [0x180397404]
divss xmm0, xmm14
movss xmm2, dword [0x180397400]
divss xmm2, xmm14
mov rsi, qword [0x180391630]
shufps xmm2, xmm2, 0xe1
movss xmm2, xmm0
shufps xmm2, xmm2, 0xc6
movss xmm2, xmm1
shufps xmm2, xmm2, 0x27
movss xmm2, xmm3
shufps xmm2, xmm2, 0x39
movups xmmword [rsp + 0x60], xmm2
movups xmmword [rsp + 0x60], xmm2
mulss xmm3, dword [rsi + 0x38e8]
movss dword [rsp + 0x6c], xmm3
lea rcx, [rsp + 0x60]
call fcn.18001d360
mov r15d, eax
test eax, 0xff000000
je 0x180005c20
movss xmm1, dword [rbp - 4]
movss xmm0, dword [rbp - 8]
movss xmm2, dword [rbp - 0xc]
mov dword [rsp + 0x20], r13d
movaps xmm3, xmm10
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x50]
mov rcx, rdi
addss xmm2, xmm6
movss dword [rsp + 0x54], xmm2
test byte [rdi + 0x30], 1
je 0x180005bc6
subss xmm1, xmm6
subss xmm0, xmm6
jmp 0x180005bd0
subss xmm1, xmm15
subss xmm0, xmm15
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [rbp - 0x10]
addss xmm0, xmm6
movss dword [rsp + 0x5c], xmm1
movss dword [rsp + 0x50], xmm0
call fcn.18007bda0
movss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 1
mov r9d, r15d
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.1800797f0
mov dword [rdi + 0x78], r13d
mov rsi, qword [0x180391630]
movss xmm7, dword [rbp + 0xc]
addss xmm7, dword [rbp + 0x14]
mulss xmm7, xmm6
movss xmm0, dword [rbp - 0x68]
mulss xmm0, xmm6
subss xmm7, xmm0
movss xmm6, dword [rbp + 8]
addss xmm6, dword [0x180259570]
mov dword [rsp + 0x60], r13d
movups xmm0, xmmword [rsi + 0x39d8]
movups xmmword [rsp + 0x64], xmm0
lea rcx, [rsi + 0x4aa8]
lea rdx, [rsp + 0x60]
call fcn.1800437c0
cmp dword [rsi + 0x4aa4], r13d
je 0x180005c7e
movups xmm0, xmmword [rbx + 0x30]
movups xmmword [rsi + 0x39d8], xmm0
movss xmm0, dword [rbp - 0x64]
comiss xmm0, xmm8
jbe 0x180005ca2
mov r9b, 1
xor r8d, r8d
mov rdx, r12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rcx, xmm0
call fcn.18001f4a0
mov r9, qword [0x180391630]
movsxd rax, dword [r9 + 0x4aa8]
cmp eax, 1
jl 0x180005cde
lea r8, [rax + rax*4]
mov rdx, qword [r9 + 0x4ab0]
movsxd rcx, dword [rdx + r8*4 - 0x14]
add rcx, rcx
movups xmm0, xmmword [rdx + r8*4 - 0x10]
movups xmmword [r9 + rcx*8 + 0x39d8], xmm0
dec dword [r9 + 0x4aa8]
lea rcx, [rbp + 0x3910]
call fcn.180007670
nop
lea rcx, [rbp + 0x18]
call fcn.180008100
movzx eax, r14b
mov rcx, qword [rbp + 0x3960]
xor rcx, rsp
call fcn.1801cb9c0
lea r11, [rsp + 0x3b10]
mov rbx, qword [r11 + 0x58]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180003590
int3