Function at 0x1800177e0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xc0
mov rax, qword [0x18007e010]
xor rax, rsp
mov qword [rbp + 0x4f], rax
mov rbx, qword [0x18007f050]
cmp dword [rbx + 0x4918], 0
je 0x18001781e
lea rdi, [rbx + 0x4910]
jmp 0x180017832
cmp dword [rbx + 0x4978], 0
je 0x180017830
lea rdi, [rbx + 0x4970]
jmp 0x180017832
xor edi, edi
mov edx, dword [rbx + 0x48c8]
bt edx, 0xa
jae 0x180017860
cmp dword [rbx + 0x4908], 1
je 0x180017850
cmp dword [rbx + 0x4904], 0
jne 0x180017860
cmp dword [rbx + 0x49a8], 0
je 0x180017860
lea rdi, [rbx + 0x49a0]
test rdi, rdi
jne 0x1800178a8
bt edx, 0xa
jae 0x180017875
bts edx, 0xc
mov dword [rbx + 0x48c8], edx
cmp dword [rbx + 0x4870], 0
je 0x180017c90
bt edx, 0xc
jb 0x180017c90
mov rax, qword [0x18007f050]
mov word [rax + 0x48a9], 1
mov byte [rax + 0x48ab], 1
jmp 0x180017c90
test dl, 0x20
je 0x1800178c6
mov eax, dword [rbx + 0x4948]
test eax, eax
je 0x1800178c6
cmp eax, dword [rbx + 0x4870]
je 0x1800178c6
lea rdi, [rbx + 0x4940]
lea r8, [rbx + 0x4970]
cmp rdi, r8
je 0x180017918
cmp dword [rbx + 0x4978], 0
je 0x180017918
mov rcx, qword [r8]
mov rax, qword [rbx + 0x4868]
cmp qword [rcx + 0x348], rax
jne 0x180017918
movss xmm0, dword [rbx + 0x4994]
movss xmm1, dword [rdi + 0x24]
comiss xmm1, xmm0
ja 0x180017915
ucomiss xmm0, xmm1
jp 0x180017918
jne 0x180017918
movss xmm0, dword [rdi + 0x28]
comiss xmm0, dword [rbx + 0x4998]
jbe 0x180017918
mov rdi, r8
cmp dword [rbx + 0x48a4], 0
jne 0x1800179b3
test dl, 0x40
je 0x18001795e
cmp dword [rbx + 0x48d4], 2
jne 0x18001793d
mov rax, qword [rdi]
movss xmm0, dword [rax + 0x70]
jmp 0x180017940
xorps xmm0, xmm0
mov rax, qword [rdi]
movss dword [rax + 0x78], xmm0
mov dword [rax + 0x80], 0
mov dword [rax + 0x88], 0
jmp 0x1800179b3
mov rdx, qword [rdi]
lea r8, [rbp + 0x3f]
mov r9d, dword [rbx + 0x48cc]
lea rcx, [rbp + 0x37]
movss xmm1, dword [rdx + 0xf0]
movss xmm2, dword [rdx + 0xf4]
movaps xmm0, xmm1
addss xmm0, dword [rdi + 0x18]
addss xmm1, dword [rdi + 0x10]
movaps xmm3, xmm2
addss xmm3, dword [rdi + 0x1c]
addss xmm2, dword [rdi + 0x14]
movss dword [rbp + 0x47], xmm0
movss dword [rbp + 0x3f], xmm1
movss dword [rbp + 0x4b], xmm3
movss dword [rbp + 0x43], xmm2
call fcn.1800135c0
mov rdx, qword [rdi]
cmp qword [rbx + 0x4868], rdx
je 0x180017a11
test byte [rbx + 0x5bf4], 2
je 0x180017a07
mov rdx, qword [rdx]
lea rcx, [rbp + 8]
movdqa xmm0, xmmword [0x1800726f0]
movdqa xmm1, xmmword [0x180072590]
movdqu xmmword [rbp + 7], xmm0
mov dword [rbp + 0x27], 0x6f646e69
movdqu xmmword [rbp + 0x17], xmm1
mov dword [rbp + 0x2b], 0x25222877
mov dword [rbp + 0x2f], 0xa292273
mov byte [rbp + 0x33], 0
call fcn.18001a790
mov rax, qword [rdi]
mov qword [rbx + 0x4868], rax
mov eax, dword [rdi + 8]
cmp dword [rbx + 0x3eec], eax
je 0x180017a25
xor edx, edx
xor ecx, ecx
call fcn.180007290
mov edx, dword [rdi + 8]
cmp dword [rbx + 0x4870], edx
je 0x180017a4e
mov dword [rbx + 0x488c], edx
mov eax, dword [rdi + 0xc]
mov dword [rbx + 0x4890], eax
mov eax, dword [rbx + 0x48d0]
mov dword [rbx + 0x4894], eax
mov edx, dword [rdi + 8]
test byte [rbx + 0x5bf4], 8
je 0x180017bda
movdqa xmm0, xmmword [0x180072360]
xor ecx, ecx
movdqa xmm1, xmmword [0x180072340]
mov rax, qword [rbx + 0x4868]
mov r9, qword [rax]
movdqa xmmword [rbp - 0x49], xmm0
movdqa xmm0, xmmword [str._a85QA_tTAI_Q]
movdqa xmmword [rbp - 0x39], xmm1
movdqa xmm1, xmmword [0x180072570]
movdqa xmmword [rbp - 0x29], xmm0
movdqa xmmword [rbp - 0x19], xmm1
mov dword [rbp - 9], 0x7b5302
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x48], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x47], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x46], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x45], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x44], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x43], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x42], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x41], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x40], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x3f], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x3e], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x3d], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x3c], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x3b], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x3a], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x39], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x38], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x37], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x36], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x35], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x34], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x33], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x32], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x31], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x30], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x2f], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x2e], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x2d], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x2c], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x2b], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x2a], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x29], al
movzx eax, byte [rbp - 0x49]
xor byte [rbp + rcx - 0x28], al
add rcx, 0x21
cmp rcx, 0x42
jb 0x180017ab0
mov r8d, dword [rbx + 0x48a4]
lea rcx, [rbp - 0x48]
mov byte [rbp - 6], 0
call fcn.18001a790
movsxd rcx, dword [rbx + 0x48a4]
mov eax, dword [rdi + 0xc]
mov r8, rcx
mov edx, dword [rdi + 8]
add r8, r8
mov r9, qword [0x18007f050]
mov dword [r9 + 0x4874], eax
mov rax, qword [r9 + 0x4868]
mov dword [r9 + 0x48a4], ecx
mov dword [r9 + 0x4870], edx
mov dword [rax + rcx*4 + 0x380], edx
mov rax, qword [r9 + 0x4868]
movups xmm0, xmmword [rdi + 0x10]
movups xmmword [rax + r8*8 + 0x388], xmm0
mov edx, dword [rbx + 0x48c8]
mov ecx, edx
bt edx, 0xa
jae 0x180017c5f
test dword [rdi + 0x20], 0x400
je 0x180017c5f
mov eax, dword [rdi + 8]
bts ecx, 0xc
mov dword [rbx + 0x48c8], ecx
mov dword [rbx + 0x4898], eax
mov dword [rbx + 0x489c], 5
bt ecx, 0xb
jae 0x180017c78
mov eax, dword [rdi + 8]
mov dword [rbx + 0x4898], eax
mov dword [rbx + 0x489c], 0
bt ecx, 0xc
jb 0x180017c90
mov word [r9 + 0x48a9], 1
mov byte [r9 + 0x48ab], 1
mov rcx, qword [rbp + 0x4f]
xor rcx, rsp
call fcn.18006ba20
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret