Function at 0x180043d90
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x78]
sub rsp, 0x150
mov rdi, qword [0x180147368]
movzx ebx, r9b
mov r12d, dword [rbp + 0xa0]
mov r14d, edx
movaps xmmword [rax - 0x38], xmm6
mov r13, qword [rdi + 0x1a80]
mov eax, dword [r13 + 0xc]
movss xmm3, dword [r13 + 0x270]
and eax, 4
movss xmm5, dword [r13 + 0x274]
or eax, 0x1000103
or r12d, eax
cmp qword [r13 + 0x1a0], 0
je 0x180043e07
movss xmm3, dword [r13 + 0x250]
cvttss2si eax, dword [r8]
subss xmm3, dword [r13 + 0xd0]
subss xmm5, dword [r13 + 0xd4]
xorps xmm4, xmm4
movd xmm1, eax
cvttss2si eax, dword [r8 + 4]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
ucomiss xmm1, xmm4
cvtdq2ps xmm0, xmm0
jp 0x180043e43
jne 0x180043e43
mov eax, 1
jmp 0x180043e45
xor eax, eax
ucomiss xmm0, xmm4
jp 0x180043e54
jne 0x180043e54
mov r15d, 2
jmp 0x180043e57
xor r15d, r15d
movss xmm2, dword [0x180004c94]
or r15d, eax
comiss xmm4, xmm1
jb 0x180043e73
addss xmm1, xmm3
comiss xmm1, xmm2
jae 0x180043e73
movaps xmm1, xmm2
comiss xmm4, xmm0
jb 0x180043e84
addss xmm0, xmm5
comiss xmm0, xmm2
jae 0x180043e84
movaps xmm0, xmm2
or dword [rdi + 0x1b20], 2
movss dword [rdi + 0x1b40], xmm1
movss dword [rdi + 0x1b44], xmm0
mov dword [rdi + 0x1b28], 1
mov r9, qword [r13]
test rcx, rcx
je 0x180043f27
movzx eax, word [0x180005b28]
lea r8, [rsp + 0x30]
movsd xmm0, qword [0x180005b20]
mov edx, 0x100
movsd qword [rsp + 0x30], xmm0
xor byte [rsp + 0x31], 0x32
xor byte [rsp + 0x32], 0x33
xor byte [rsp + 0x33], 0x34
xor byte [rsp + 0x34], 0x35
xor byte [rsp + 0x35], 0x36
xor byte [rsp + 0x36], 0x37
xor byte [rsp + 0x37], 0x38
mov word [rsp + 0x38], ax
movzx eax, byte [0x180005b2a]
xor byte [rsp + 0x38], 0x39
xor al, 0x3b
xor byte [rsp + 0x39], 0x3a
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x3a], al
mov byte [rsp + 0x30], 0x25
call fcn.180048cc0
jmp 0x180043fa0
cmp byte [0x180005b37], 0
mov rax, qword [0x180005b30]
mov qword [rbp + 0x80], rax
je 0x180043f85
xor r8d, r8d
movabs r10, 0x47ae147ae147ae15
nop dword [rax + rax]
mov rax, r10
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rbp + r8 + 0x80], al
inc r8
cmp r8, 8
jb 0x180043f50
lea r8, [rbp + 0x80]
mov dword [rsp + 0x20], r14d
mov edx, 0x100
lea rcx, [rsp + 0x40]
call fcn.180048cc0
movss xmm6, dword [rdi + 0x1594]
test bl, bl
jne 0x180043fb6
mov dword [rdi + 0x1594], 0
mov r8d, r12d
lea rcx, [rsp + 0x40]
xor edx, edx
call fcn.180041c10
mov rbx, qword [rdi + 0x1a80]
movzx esi, al
movss dword [rdi + 0x1594], xmm6
cmp word [rbx + 0x8a], 1
mov dword [rbx + 0x50], r14d
mov byte [rbx + 0x96], r15b
jne 0x180043ffa
movsd xmm0, qword [rbx + 0x10]
movsd qword [r13 + 0xd0], xmm0
cmp dword [rdi + 0x1c08], r14d
jne 0x180044048
bt r12d, 0x17
jb 0x180044048
cmp dword [rbx + 0x144], 0
jne 0x18004401c
cmp byte [rbx + 0x151], 0
je 0x180044048
mov rcx, rbx
call fcn.180047b00
xor edx, edx
mov rcx, rbx
call fcn.18004abf0
lea ecx, [r14 + 1]
mov rdx, rbx
call fcn.180052a50
movzx eax, sil
mov dword [rdi + 0x1b00], 2
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret