Function at 0x1800a8550
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 - 0x1e8]
sub rsp, 0x2c0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x180229ec0]
xor rax, rsp
mov qword [rbp + 0x198], rax
mov r14, rcx
mov qword [rbp - 0x38], rcx
xor r15d, r15d
mov r12d, r15d
mov dword [rbp + 0xac], r15d
mov dword [rbp + 0xa8], r15d
call fcn.180049860
mov qword [rbp + 0x80], r14
lea rbx, [r14 + 0x30]
cmp byte [r14 + 0x50], r15b
je 0x1800a85d4
mov rcx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800a85cd
mov rcx, qword [rbx]
xor edx, edx
call fcn.180048710
mov byte [r14 + 0x52], 0
cmp byte [r14 + 0x50], 0
je 0x1800a85eb
test byte [r14 + 8], 4
je 0x1800a85eb
xor edx, edx
jmp 0x1800a85f0
mov edx, 4
movd xmm0, dword [r14]
movd xmm1, dword [r14 + 4]
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
movss dword [rsp + 0x50], xmm0
movss dword [rsp + 0x54], xmm1
lea rcx, [rsp + 0x50]
call fcn.18004d790
mov r8d, dword [r14 + 8]
test r8b, 4
je 0x1800a8637
cmp qword [rbx + 0x18], 0xf
jbe 0x1800a862b
mov rbx, qword [rbx]
xor edx, edx
mov rcx, rbx
call fcn.1800398d0
jmp 0x1800a8653
shr r8d, 3
and r8d, 1
cmp qword [rbx + 0x18], 0xf
jbe 0x1800a8649
mov rbx, qword [rbx]
xor edx, edx
mov rcx, rbx
call fcn.180039a70
test al, al
je 0x1800a9e5c
mov byte [r14 + 0x52], 1
lea rsi, [r14 + 0x98]
cmp qword [rsi + 0x18], 7
jbe 0x1800a8671
mov rsi, qword [rsi]
movzx esi, byte [rsi]
mov byte [rbp + 0xb0], sil
mov word [rbp + 0xb1], Ordinal_60
call fcn.18003eea0
mulss xmm0, dword [0x18019dc20]
call fcn.180049aa0
mov dword [rsp + 0x40], 0x3d3b3306
mov dword [rsp + 0x44], 0x187b2e3a
mov dword [rsp + 0x48], 0x529372f
mov word [rsp + 0x4c], 0x100
mov rcx, r15
nop dword [rax + rax]
lea eax, [rcx + 0x55]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 0xc
jb 0x1800a86c0
mov byte [rsp + 0x4d], 0
xor r8d, r8d
lea rdx, [rbp + 0xb0]
lea rcx, [rsp + 0x40]
call fcn.18006f9b0
mov r13, 0xffffffffffffffff
test al, al
je 0x1800a87d2
mov edi, r15d
nop dword [rax + rax]
mov eax, dword [r14 + 0x110]
bt eax, edi
jae 0x1800a87ba
lea ebx, [rdi + 0x41]
mov byte [rbp + 0xa8], bl
mov word [rbp + 0xa9], Ordinal_60
cmp sil, bl
sete dl
mov qword [rsp + 0x50], 0
lea r9, [rsp + 0x50]
xor r8d, r8d
lea rcx, [rbp + 0xa8]
call fcn.18007b900
test al, al
je 0x1800a87ba
cmp sil, bl
je 0x1800a87ba
mov byte [rbp + 0xac], bl
mov word [rbp + 0xad], 0x5c3a
mov byte [rbp + 0xaf], 0
lea rax, [rbp + 0xac]
mov qword [rsp + 0x70], rax
lea rcx, [rbp + 0xac]
mov rax, r13
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1800a8780
mov qword [rsp + 0x78], rax
xor r8d, r8d
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.18001d470
bts r12d, 0xe
lea rdx, [rbp - 0x80]
mov rcx, r14
call fcn.1800bc390
nop
lea rcx, [rbp - 0x80]
call fcn.18001b9c0
inc edi
cmp edi, 0x1a
jl 0x1800a8700
mov dword [rbp + 0xac], r12d
call fcn.180076ab0
nop
call fcn.180049190
movss xmm7, dword [0x180198a64]
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.18004c570
mov r13d, r15d
mov r12d, 0xffffffff
mov dword [rbp + 0xa8], r12d
lea rdi, [r14 + 0x98]
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
movups xmmword [rbp + 0x100], xmm0
movups xmmword [rbp + 0x110], xmm0
lea rdx, [rbp + 0xf0]
mov rcx, rdi
call fcn.1800c15d0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm0
mov rcx, rdi
cmp qword [rdi + 0x18], 7
jbe 0x1800a884e
mov rcx, qword [rdi]
mov rax, qword [rdi + 0x10]
lea rbx, [rcx + rax*2]
mov qword [rbp + 0xc0], rbx
movups xmmword [rbp + 0xc8], xmm0
movdqa xmm1, xmmword [0x180125790]
movdqu xmmword [rbp + 0xd8], xmm1
mov word [rbp + 0xc8], r15w
mov qword [rbp + 0xe8], rdi
mov rcx, qword [rbp + 0xf0]
cmp rcx, rbx
je 0x1800a8ab1
cmp r13d, 1
je 0x1800a8955
mov ecx, r13d
call fcn.1800496b0
test r13d, r13d
jle 0x1800a88b5
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.18004c570
lea rax, [rbp + 0xf8]
cmp qword [rbp + 0x110], 7
cmova rax, qword [rbp + 0xf8]
mov qword [rsp + 0x70], rax
mov rax, qword [rbp + 0x108]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp - 0x30], xmm0
lea r9, [rsp + 0x30]
lea r8, [rbp - 0x30]
mov edx, 0xfde9
lea rcx, [rbp - 0x58]
call fcn.180095920
or dword [rbp + 0xac], 0x400
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x80]
call fcn.1800c91f0
nop
cmp qword [rax + 0x18], 0xf
jbe 0x1800a8920
mov rax, qword [rax]
mov rcx, rax
call fcn.18007cfb0
movzx edi, al
mov r8, qword [rbp - 0x68]
cmp r8, 0xf
jbe 0x1800a8942
mov rdx, qword [rbp - 0x80]
lea rcx, [rbp - 0x80]
call fcn.18000c2b0
test dil, dil
cmovne r12d, r13d
call fcn.180049080
mov rcx, qword [rbp + 0xf0]
inc r13d
mov rdx, qword [rbp + 0x118]
mov r14, rdx
cmp qword [rdx + 0x18], 7
jbe 0x1800a896c
mov rdx, qword [rdx]
lea r8, [r14 + 0x10]
mov rax, qword [r8]
lea rsi, [rdx + rax*2]
cmp rdx, rcx
jne 0x1800a89fd
mov rax, qword [rbp + 0x108]
lea rdi, [rcx + rax*2]
mov qword [rbp + 0xf0], rdi
cmp qword [r14 + 0x18], 7
jbe 0x1800a89a3
mov rax, qword [rbp + 0x118]
mov r14, qword [rax]
mov rax, qword [r8]
lea r15, [r14 + rax*2]
mov rdx, r15
mov rcx, r14
call fcn.18002ea60
mov r8, rax
cmp rax, r15
je 0x1800a89d9
nop dword [rax]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x1800a89d0
cmp cx, 0x2f
jne 0x1800a89d9
add r8, 2
cmp r8, r15
jne 0x1800a89c0
cmp r14, rax
je 0x1800a8a37
cmp rax, r8
je 0x1800a8a37
sub r8, rax
sar r8, 1
mov rdx, rax
lea rcx, [rbp + 0xf8]
call fcn.18002f700
jmp 0x1800a8a90
movzx eax, word [rcx]
cmp ax, 0x5c
je 0x1800a8a20
cmp ax, 0x2f
je 0x1800a8a20
mov rax, qword [rbp + 0x108]
lea rdi, [rcx + rax*2]
mov qword [rbp + 0xf0], rdi
jmp 0x1800a8a3a
cmp qword [rbp + 0x108], 0
jne 0x1800a8a0c
add rcx, 2
mov qword [rbp + 0xf0], rcx
jmp 0x1800a8a97
xor r15d, r15d
cmp rdi, rsi
je 0x1800a8a6e
nop
movzx eax, word [rdi]
cmp ax, 0x5c
je 0x1800a8a53
cmp ax, 0x2f
jne 0x1800a8bf3
add rdi, 2
mov qword [rbp + 0xf0], rdi
cmp rdi, rsi
jne 0x1800a8a40
lea rax, [rdi - 2]
mov qword [rbp + 0xf0], rax
lea rax, [rbp + 0xf8]
cmp qword [rbp + 0x110], 7
mov qword [rbp + 0x108], r15
cmova rax, qword [rbp + 0xf8]
mov word [rax], r15w
mov rcx, qword [rbp + 0xf0]
cmp rcx, rbx
mov r15d, 0
jne 0x1800a8893
mov dword [rbp + 0xa8], r12d
mov r14, qword [rbp - 0x38]
lea rcx, [rbp + 0xc8]
call fcn.18001b9c0
nop
lea rcx, [rbp + 0xf8]
call fcn.18001b9c0
test r12d, r12d
js 0x1800a9010
mov r14d, r15d
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
mov qword [rbp + 0x160], r15
mov qword [rbp + 0x168], 7
mov word [rbp + 0x150], r15w
mov rdi, qword [rbp - 0x38]
add rdi, 0x98
movups xmmword [rbp + 0x120], xmm0
movups xmmword [rbp + 0x130], xmm0
movups xmmword [rbp + 0x140], xmm0
lea rdx, [rbp + 0x120]
mov rcx, rdi
call fcn.1800c15d0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
movups xmmword [rbp + 0x100], xmm0
movups xmmword [rbp + 0x110], xmm0
mov rcx, rdi
cmp qword [rdi + 0x18], 7
jbe 0x1800a8b4f
mov rcx, qword [rdi]
mov rax, qword [rdi + 0x10]
lea rbx, [rcx + rax*2]
mov qword [rbp + 0xf0], rbx
movups xmmword [rbp + 0xf8], xmm0
movdqa xmm1, xmmword [0x180125790]
movdqu xmmword [rbp + 0x108], xmm1
mov word [rbp + 0xf8], r15w
mov qword [rbp + 0x118], rdi
cmp qword [rbp + 0x120], rbx
je 0x1800a8f63
movzx edi, byte [rsp + 0x30]
movzx esi, byte [rsp + 0x30]
nop dword [rax + rax]
mov eax, r14d
inc r14d
mov dword [rsp + 0x58], r14d
cmp eax, r12d
jg 0x1800a8f63
lea rcx, [rbp + 0x128]
call fcn.180030ce0
lea rcx, [rbp + 0x150]
test al, al
je 0x1800a8c33
lea rdx, [rbp + 0x128]
cmp qword [rbp + 0x140], 7
cmova rdx, qword [rbp + 0x128]
mov r8, qword [rbp + 0x138]
call fcn.18002f700
jmp 0x1800a8dd2
mov r8, rdi
cmp rdi, rsi
je 0x1800a8c19
nop dword [rax + rax]
movzx eax, word [r8]
cmp ax, 0x5c
je 0x1800a8c19
cmp ax, 0x2f
je 0x1800a8c19
add r8, 2
cmp r8, rsi
jne 0x1800a8c00
sub r8, rdi
sar r8, 1
mov rdx, rdi
lea rcx, [rbp + 0xf8]
call fcn.18002f700
jmp 0x1800a8a90
mov r13, qword [rbp + 0x168]
cmp r13, 7
cmova rcx, qword [rbp + 0x150]
mov qword [rbp - 0x20], rcx
mov r15, qword [rbp + 0x160]
lea rdx, [rcx + r15*2]
mov qword [rsp + 0x40], rdx
lea r8, [rbp + 0x128]
cmp qword [rbp + 0x140], 7
seta byte [rsp + 0x30]
cmova r8, qword [rbp + 0x128]
mov qword [rsp + 0x70], r8
mov rax, qword [rbp + 0x138]
lea r12, [r8 + rax*2]
call fcn.18002ea60
mov r14, rax
mov rdx, r12
mov rcx, qword [rsp + 0x70]
call fcn.18002ea60
mov rcx, rax
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x70]
cmp rax, rcx
je 0x1800a8cf4
mov r9, rcx
mov r8, rax
mov rdx, r14
mov rcx, qword [rbp - 0x20]
call fcn.18002f0f0
test eax, eax
je 0x1800a8cef
lea rdx, [rbp + 0x128]
cmp byte [rsp + 0x30], 0
cmovne rdx, qword [rbp + 0x128]
mov r8, qword [rbp + 0x138]
lea rcx, [rbp + 0x150]
call fcn.18002f700
jmp 0x1800a8dd2
mov rcx, qword [rsp + 0x50]
cmp rcx, r12
je 0x1800a8d3b
movzx eax, word [rcx]
cmp ax, 0x5c
je 0x1800a8d08
cmp ax, 0x2f
jne 0x1800a8d3b
sub r14, qword [rbp - 0x20]
sar r14, 1
cmp r15, r14
jb 0x1800a9ea9
mov qword [rbp + 0x160], r14
lea rax, [rbp + 0x150]
cmp r13, 7
cmova rax, qword [rbp + 0x150]
xor edx, edx
mov word [rax + r14*2], dx
jmp 0x1800a8dba
mov rax, qword [rsp + 0x40]
cmp r14, rax
jne 0x1800a8d5e
sub r14, qword [rbp - 0x20]
and r14, 0xfffffffffffffffe
cmp r14, 6
jl 0x1800a8dba
cmp r15, r13
jb 0x1800a8d73
movzx r8d, dil
jmp 0x1800a8d9f
movzx eax, word [rax - 2]
cmp ax, 0x5c
je 0x1800a8dba
cmp ax, 0x2f
je 0x1800a8dba
cmp r15, r13
jae 0x1800a8d9b
lea rax, [r15 + 1]
mov qword [rbp + 0x160], rax
lea rax, [rbp + 0x150]
cmp r13, 7
cmova rax, qword [rbp + 0x150]
mov dword [rax + r15*2], 0x5c
jmp 0x1800a8dba
movzx r8d, sil
mov r9d, 0x5c
lea edx, [r9 - 0x5b]
lea rcx, [rbp + 0x150]
call fcn.18001edb0
mov rcx, qword [rsp + 0x50]
sub r12, rcx
sar r12, 1
mov r8, r12
mov rdx, rcx
lea rcx, [rbp + 0x150]
call fcn.18002f670
mov r8, qword [rbp + 0x148]
mov rdx, r8
mov r12, r8
cmp qword [r8 + 0x18], 7
jbe 0x1800a8de9
mov rdx, qword [r8]
mov rax, qword [r8 + 0x10]
lea r15, [rdx + rax*2]
mov rcx, qword [rbp + 0x120]
cmp rdx, rcx
jne 0x1800a8e74
mov rax, qword [rbp + 0x138]
lea r14, [rcx + rax*2]
mov qword [rbp + 0x120], r14
cmp qword [r8 + 0x18], 7
jbe 0x1800a8e19
mov r12, qword [r8]
mov rax, qword [r8 + 0x10]
lea r13, [r12 + rax*2]
mov rdx, r13
mov rcx, r12
call fcn.18002ea60
mov r8, rax
cmp rax, r13
je 0x1800a8e4d
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x1800a8e44
cmp cx, 0x2f
jne 0x1800a8e4d
add r8, 2
cmp r8, r13
jne 0x1800a8e34
cmp r12, rax
je 0x1800a8eaf
cmp rax, r8
je 0x1800a8eaf
sub r8, rax
sar r8, 1
mov rdx, rax
lea rcx, [rbp + 0x128]
call fcn.18002f700
xor r15d, r15d
jmp 0x1800a8f04
movzx eax, word [rcx]
cmp ax, 0x5c
je 0x1800a8e83
cmp ax, 0x2f
jne 0x1800a8e9d
cmp qword [rbp + 0x138], 0
jne 0x1800a8e9d
add rcx, 2
mov qword [rbp + 0x120], rcx
xor r15d, r15d
jmp 0x1800a8f0b
mov rax, qword [rbp + 0x138]
lea r14, [rcx + rax*2]
mov qword [rbp + 0x120], r14
cmp r14, r15
je 0x1800a8edf
movzx eax, word [r14]
cmp ax, 0x5c
je 0x1800a8ec4
cmp ax, 0x2f
jne 0x1800a8f21
add r14, 2
mov qword [rbp + 0x120], r14
cmp r14, r15
jne 0x1800a8eb4
lea rax, [r14 - 2]
mov qword [rbp + 0x120], rax
xor r15d, r15d
lea rax, [rbp + 0x128]
cmp qword [rbp + 0x140], 7
mov qword [rbp + 0x138], r15
cmova rax, qword [rbp + 0x128]
mov word [rax], r15w
mov rcx, qword [rbp + 0x120]
mov r12d, dword [rbp + 0xa8]
cmp rcx, rbx
je 0x1800a8f63
mov r14d, dword [rsp + 0x58]
jmp 0x1800a8ba0
mov r8, r14
cmp r14, r15
je 0x1800a8f49
nop dword [rax]
movzx eax, word [r8]
cmp ax, 0x5c
je 0x1800a8f49
cmp ax, 0x2f
je 0x1800a8f49
add r8, 2
cmp r8, r15
jne 0x1800a8f30
sub r8, r14
sar r8, 1
mov rdx, r14
lea rcx, [rbp + 0x128]
call fcn.18002f700
xor r15d, r15d
jmp 0x1800a8f04
lea rcx, [rbp + 0xf8]
call fcn.18001b9c0
nop
lea rcx, [rbp + 0x128]
call fcn.18001b9c0
test r12d, r12d
jne 0x1800a8ff0
mov word [rbp + 0xa8], 0x5c
mov byte [rbp + 0xaa], r12b
lea rax, [rbp + 0xa8]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0xa8]
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1800a8fb0
mov qword [rsp + 0x48], rax
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.18001d470
or dword [rbp + 0xac], 8
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x150]
call fcn.180025fb0
nop
lea rcx, [rbp - 0x80]
call fcn.18001b9c0
lea rdx, [rbp + 0x150]
mov r14, qword [rbp - 0x38]
mov rcx, r14
call fcn.1800bc390
nop
lea rcx, [rbp + 0x150]
call fcn.18001b9c0
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.18004c570
mov word [rbp + 0xa8], Ordinal_46
mov byte [rbp + 0xaa], 0
lea rcx, [rbp + 0xa8]
call fcn.18007cfb0
test al, al
je 0x1800a904a
lea rdx, [r14 + 0x98]
mov rcx, r14
call fcn.1800bc390
cmp qword [r14 + 0x108], 0
je 0x1800a92da
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.18004c570
mov word [rbp + 0xa8], Ordinal_46
mov byte [rbp + 0xaa], 0
lea rcx, [rbp + 0xa8]
call fcn.18007cfb0
test al, al
je 0x1800a90a5
lea rcx, [r14 + 0xe8]
cmp qword [rcx + 0x18], 0xf
jbe 0x1800a9094
mov rcx, qword [rcx]
xor edx, edx
call fcn.180048710
mov rax, qword [r14 + 0x108]
mov byte [rax], 0
lea rcx, [r14 + 0xe8]
cmp qword [rcx + 0x18], 0xf
jbe 0x1800a90b6
mov rcx, qword [rcx]
xor edx, edx
call fcn.1800398d0
test al, al
je 0x1800a92da
mov dword [rsp + 0x58], 0x3d3a373b
mov word [rsp + 0x5c], 0x100
mov rcx, r15
nop word [rax + rax]
lea eax, [rcx + 0x55]
xor byte [rsp + rcx + 0x58], al
inc rcx
cmp rcx, 4
jb 0x1800a90e0
mov byte [rsp + 0x5d], 0
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8d, 0x200
mov rdx, qword [r14 + 0x108]
lea rcx, [rsp + 0x58]
call fcn.180076c70
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.18004c570
mov qword [rsp + 0x70], 0
mov dword [rbp + 0xa8], 0x1003d3a
mov rcx, r15
nop word [rax + rax]
lea eax, [rcx + 0x55]
xor byte [rbp + rcx + 0xa8], al
inc rcx
cmp rcx, 2
jb 0x1800a9140
mov byte [rbp + 0xab], 0
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0xa8]
call fcn.1800703d0
test al, al
je 0x1800a92d4
mov rcx, qword [r14 + 0x108]
cmp byte [rcx], 0
je 0x1800a92d4
mov qword [rsp + 0x40], rcx
mov rsi, 0xffffffffffffffff
mov rax, rsi
inc rax
cmp byte [rcx + rax], 0
jne 0x1800a9192
mov qword [rsp + 0x48], rax
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x58]
call fcn.18001d470
mov edi, dword [rbp + 0xac]
bts edi, 0xc
mov dword [rbp + 0xa8], edi
lea rdx, [r14 + 0x98]
lea rcx, [rbp - 0x80]
call fcn.18001f650
bts edi, 0xd
mov dword [rbp + 0xa8], edi
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x80]
call fcn.180025fb0
lea rcx, [rbp - 0x80]
call fcn.1800c1a30
movzx ebx, al
btr edi, 0xd
mov dword [rbp + 0xac], edi
lea rcx, [rbp - 0x80]
call fcn.18001b9c0
nop
lea rcx, [rbp - 0x58]
call fcn.18001b9c0
test bl, bl
je 0x1800a9229
lea rdx, [r14 + 0x98]
mov rcx, r14
call fcn.1800bc390
jmp 0x1800a92ce
mov rdx, qword [r14 + 0x108]
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x70], xmm1
mov r8, rsi
inc r8
cmp byte [rdx + r8], 0
jne 0x1800a9242
lea rcx, [rbp - 0x80]
call fcn.18000d700
nop
movdqa xmm0, xmmword [str.37_4___2_]
movdqu xmmword [rbp + 0xc0], xmm0
mov word [rbp + 0xd0], 0x45
mov byte [rbp + 0xd2], 1
mov rcx, r15
nop dword [rax]
lea eax, [rcx + 0x55]
xor byte [rbp + rcx + 0xc0], al
inc rcx
cmp rcx, 0x11
jb 0x1800a9280
mov byte [rbp + 0xd2], 0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0xc0]
lea rcx, [rbp - 0x58]
call fcn.180094a90
lea rcx, [r14 + 0x58]
mov rdx, rax
call fcn.180009fb0
lea rcx, [rbp - 0x58]
call fcn.180009f50
nop
lea rcx, [rbp - 0x80]
call fcn.180009f50
nop
call fcn.18003b880
nop
call fcn.18003d7e0
nop
call fcn.18003ef40
movaps xmm6, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x170], xmm1
movdqa xmm2, xmmword [0x180125790]
movdqu xmmword [rbp + 0x180], xmm2
mov word [rbp + 0x170], r15w
xor dil, dil
mov byte [rsp + 0x30], dil
mov eax, dword [r14 + 8]
test al, 1
jne 0x1800a9321
test al, 2
je 0x1800a9321
call fcn.18003ef40
addss xmm6, xmm0
mov r9d, dword [r14 + 8]
and r9d, 4
shl r9d, 0xd
mov dword [rsp + 0x70], 0
xorps xmm6, xmmword [0x180198e90]
movss dword [rsp + 0x74], xmm6
mov r8b, 1
lea rdx, [rsp + 0x70]
lea rcx, [0x1801dabc8]
call fcn.180038ea0
nop
mov r13, qword [r14 + 0xc8]
mov qword [rsp + 0x50], r13
mov rax, qword [r14 + 0xd0]
mov qword [rsp + 0x40], rax
cmp r13, rax
je 0x1800a9bc5
movabs r12, 0x3ffffffffffffff
cmp byte [r13], 0
jne 0x1800a939d
lea rdx, [r13 + 0x48]
mov rcx, r14
call fcn.1800b7630
test al, al
je 0x1800a9ba9
cmp qword [r13 + 0x18], 0
je 0x1800a93bc
lea rax, [r13 + 8]
cmp qword [rax + 0x18], 7
jbe 0x1800a93b2
mov rax, qword [rax]
cmp word [rax], 0x24
je 0x1800a9ba9
lea r8, [r13 + 8]
lea rdx, [rbp + 0xc0]
lea rcx, [r14 + 0xb8]
call fcn.1800969b0
mov rbx, qword [rbp + 0xd0]
cmp byte [rbx + 0x19], 0
jne 0x1800a941d
lea rdx, [rbx + 0x20]
cmp qword [rbx + 0x38], 7
jbe 0x1800a93ef
mov rdx, qword [rbx + 0x20]
mov rax, qword [rbx + 0x30]
mov qword [rbp - 0x10], rdx
mov qword [rbp - 8], rax
movaps xmm0, xmmword [rbp - 0x10]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp + 0xc0]
lea rcx, [r13 + 8]
call fcn.1800c1830
test eax, eax
je 0x1800a9424
jns 0x1800a9424
mov rbx, qword [r14 + 0xb8]
mov rsi, qword [r14 + 0xb8]
cmp rbx, rsi
setne dl
mov qword [rsp + 0x70], 0
lea rcx, [r13 + 0x28]
cmp qword [rcx + 0x18], 0xf
jbe 0x1800a9448
mov rcx, qword [rcx]
lea r9, [rsp + 0x70]
mov r8d, 1
call fcn.18007b900
test al, al
je 0x1800a966e
test byte [r14 + 8], 0x80
je 0x1800a9496
mov ecx, 3
call fcn.1800427f0
test al, al
je 0x1800a9496
call fcn.18003f370
cmp byte [rax + 0x138], 0
jne 0x1800a9491
call fcn.18003f370
cmp byte [rax + 0x139], 0
je 0x1800a9496
mov dil, 1
jmp 0x1800a9499
xor dil, dil
cmp rbx, rsi
je 0x1800a972c
lea r12, [r14 + 0xb8]
test dil, dil
jne 0x1800a9506
mov rsi, qword [r12]
mov rdi, qword [rsi + 8]
cmp byte [rdi + 0x19], 0
jne 0x1800a94f1
nop dword [rax]
mov r8, qword [rdi + 0x10]
mov rdx, r12
mov rcx, r12
call fcn.1800965f0
mov rbx, rdi
mov rdi, qword [rdi]
lea rcx, [rbx + 0x20]
call fcn.18001b9c0
mov edx, 0x40
mov rcx, rbx
call fcn.1800cbd7c
cmp byte [rdi + 0x19], 0
je 0x1800a94c0
mov qword [rsi + 8], rsi
mov qword [rsi], rsi
mov qword [rsi + 0x10], rsi
mov qword [r12 + 8], r15
jmp 0x1800a965a
lea r14, [r13 + 8]
mov r13, qword [r12]
mov rbx, qword [r13 + 8]
mov rsi, r13
cmp byte [rbx + 0x19], 0
jne 0x1800a95bf
mov r15, qword [r14 + 0x18]
mov rax, qword [r14 + 0x10]
mov qword [rbp + 8], rax
nop dword [rax + rax]
mov rax, r14
cmp r15, 7
jbe 0x1800a953c
mov rax, qword [r14]
mov qword [rbp], rax
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp + 0xc0]
lea rcx, [rbx + 0x20]
call fcn.1800c1830
test eax, eax
je 0x1800a9568
jns 0x1800a9568
mov rbx, qword [rbx + 0x10]
jmp 0x1800a95b2
cmp byte [rsi + 0x19], 0
je 0x1800a95ac
lea rcx, [rbx + 0x20]
cmp qword [rbx + 0x38], 7
jbe 0x1800a957d
mov rcx, qword [rbx + 0x20]
mov rax, qword [rbx + 0x30]
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rax
movaps xmm0, xmmword [rbp + 0x10]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp + 0xc0]
mov rcx, r14
call fcn.1800c1830
test eax, eax
je 0x1800a95ac
cmovs rsi, rbx
mov r13, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x1800a9530
xor r15d, r15d
cmp byte [rsi + 0x19], 0
je 0x1800a95cf
mov rbx, qword [r12]
add rbx, 8
jmp 0x1800a95d2
mov rbx, rsi
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
jne 0x1800a962e
nop dword [rax + rax]
lea rcx, [rbx + 0x20]
cmp qword [rbx + 0x38], 7
jbe 0x1800a95ef
mov rcx, qword [rbx + 0x20]
mov rax, qword [rbx + 0x30]
mov qword [rbp + 0x20], rcx
mov qword [rbp + 0x28], rax
movaps xmm0, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp + 0xc0]
mov rcx, r14
call fcn.1800c1830
test eax, eax
je 0x1800a9624
jns 0x1800a9624
mov rsi, rbx
mov rbx, qword [rbx]
jmp 0x1800a9628
mov rbx, qword [rbx + 0x10]
cmp byte [rbx + 0x19], 0
je 0x1800a95e0
mov qword [rbp + 0x30], r13
mov qword [rbp + 0x38], rsi
movaps xmm0, xmmword [rbp + 0x30]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp + 0xc0]
mov rcx, r12
call fcn.1800be750
mov r13, qword [rsp + 0x50]
mov r14, qword [rbp - 0x38]
mov rax, qword [r14 + 0xe0]
mov byte [rax], 0
movabs r12, 0x3ffffffffffffff
mov esi, dword [rbp + 0xac]
xor ecx, ecx
call fcn.180041d70
test al, al
je 0x1800a9ba9
xor ecx, ecx
call fcn.1800422e0
test al, al
je 0x1800a9ba9
cmp byte [r13], 0
je 0x1800a9a93
mov byte [rsp + 0x30], 1
lea rax, [0x18019dc80]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], 2
xor r8d, r8d
lea rdx, [rbp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.18001d470
or esi, 0x10
mov dword [rbp + 0xa8], esi
lea rax, [rbp - 0x80]
cmp qword [rbp - 0x68], 7
cmova rax, qword [rbp - 0x80]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x70]
mov qword [rbp - 0x28], rax
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp + 0xc0], xmm0
lea rcx, [r13 + 8]
lea rdx, [rbp + 0xc0]
call fcn.1800c1830
test eax, eax
je 0x1800a9980
lea r8, [r13 + 8]
lea rdx, [r14 + 0x98]
lea rcx, [rbp + 0xf0]
call fcn.1800a4a60
nop
or esi, 1
jmp 0x1800a9a3b
lea rax, [0x18019dc80]
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], 2
xor r8d, r8d
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x58]
call fcn.18001d470
mov esi, dword [rbp + 0xac]
or esi, 4
mov dword [rbp + 0xac], esi
lea rax, [rbp - 0x58]
cmp qword [rbp - 0x40], 7
cmova rax, qword [rbp - 0x58]
mov qword [rbp + 0x50], rax
mov rax, qword [rbp - 0x48]
mov qword [rbp + 0x58], rax
movaps xmm0, xmmword [rbp + 0x50]
movdqa xmmword [rbp + 0xc0], xmm0
lea rcx, [r13 + 8]
lea rdx, [rbp + 0xc0]
call fcn.1800c1830
mov ebx, eax
lea rcx, [rbp - 0x58]
call fcn.18001b9c0
test ebx, ebx
je 0x1800a9942
mov eax, dword [r14 + 8]
and eax, 1
cmp byte [r13], 0
je 0x1800a97be
test eax, eax
jne 0x1800a97c6
jmp 0x1800a9674
test eax, eax
jne 0x1800a9674
test dil, dil
jne 0x1800a97fb
mov rbx, qword [r14 + 0xb8]
mov r8, qword [rbx + 8]
lea rdx, [r14 + 0xb8]
lea rcx, [r14 + 0xb8]
call fcn.1800965f0
mov qword [rbx + 8], rbx
mov qword [rbx], rbx
mov qword [rbx + 0x10], rbx
mov qword [r14 + 0xc0], r15
lea rbx, [r14 + 0xb8]
lea r8, [r13 + 8]
lea rdx, [rbp - 0x58]
mov rcx, rbx
call fcn.1800969b0
movups xmm6, xmmword [rax]
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0xd0], xmm0
lea r8, [r13 + 8]
mov rdx, qword [rbp + 0xd0]
mov rcx, rbx
call fcn.18009b4b0
test al, al
jne 0x1800a98a1
cmp qword [rbx + 8], r12
je 0x1800a9eaf
lea r9, [r13 + 8]
mov r8, qword [rbx]
mov rdx, rbx
lea rcx, [rbp - 0x20]
call fcn.180094620
mov rdi, qword [rax + 8]
mov qword [rax + 8], r15
mov rcx, qword [rbp - 0x18]
test rcx, rcx
je 0x1800a9888
add rcx, 0x20
call fcn.18001b9c0
mov rdx, qword [rbp - 0x18]
test rdx, rdx
je 0x1800a9888
mov r8d, 1
mov rcx, qword [rbp - 0x20]
call fcn.1800c1c30
movaps xmmword [rbp + 0xc0], xmm6
mov r8, rdi
lea rdx, [rbp + 0xc0]
mov rcx, rbx
call fcn.1800153d0
test byte [r14 + 8], 1
jne 0x1800a9674
lea rcx, [r13 + 8]
cmp qword [r13 + 0x20], 7
jbe 0x1800a98bb
mov rcx, qword [r13 + 8]
mov rax, qword [r13 + 0x18]
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
movaps xmm0, xmmword [rbp + 0x60]
movdqa xmmword [rbp + 0xc0], xmm0
lea r9, [rbp - 0x60]
lea r8, [rbp + 0xc0]
mov edx, 0xfde9
lea rcx, [rbp - 0x58]
call fcn.180095920
bts esi, 0xb
mov dword [rbp + 0xac], esi
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x80]
call fcn.1800c91f0
cmp qword [rax + 0x18], 0xf
jbe 0x1800a990d
mov rax, qword [rax]
mov r8, rax
mov edx, 0x200
mov rcx, qword [r14 + 0xe0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
mov r8, qword [rbp - 0x68]
cmp r8, 0xf
jbe 0x1800a9674
mov rdx, qword [rbp - 0x80]
lea rcx, [rbp - 0x80]
call fcn.18000c2b0
jmp 0x1800a9674
test dil, dil
jne 0x1800a9674
mov rbx, qword [r14 + 0xb8]
mov r8, qword [rbx + 8]
lea rdx, [r14 + 0xb8]
lea rcx, [r14 + 0xb8]
call fcn.1800965f0
mov qword [rbx + 8], rbx
mov qword [rbx], rbx
mov qword [rbx + 0x10], rbx
mov qword [r14 + 0xc0], r15
jmp 0x1800a9674
lea rdi, [r14 + 0x98]
cmp qword [r14 + 0xb0], 7
jbe 0x1800a9998
mov rdi, qword [r14 + 0x98]
mov rax, qword [r14 + 0xa8]
lea rbx, [rdi + rax*2]
mov rdx, rbx
mov rcx, rdi
call fcn.18002ea60
cmp rax, rbx
je 0x1800a9a0d
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x1800a99c2
cmp cx, 0x2f
jne 0x1800a99cb
add rax, 2
cmp rax, rbx
jne 0x1800a99b3
cmp rax, rbx
je 0x1800a9a0d
lea rdx, [rbx - 2]
movzx ecx, word [rdx]
cmp cx, 0x5c
je 0x1800a99ed
cmp cx, 0x2f
je 0x1800a99ed
mov rbx, rdx
cmp rax, rdx
jne 0x1800a99d0
jmp 0x1800a9a0d
cmp rax, rbx
je 0x1800a9a0d
lea rdx, [rbx - 2]
movzx ecx, word [rdx]
cmp cx, 0x5c
je 0x1800a9a05
cmp cx, 0x2f
jne 0x1800a9a0d
mov rbx, rdx
cmp rax, rdx
jne 0x1800a99f2
sub rbx, rdi
sar rbx, 1
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], r15
mov r8, rbx
mov rdx, rdi
lea rcx, [rbp - 0x58]
call fcn.18001b870
lea rax, [rbp - 0x58]
or esi, 0x382
mov dword [rbp + 0xac], esi
mov rdx, rax
lea rcx, [rbp + 0x170]
call fcn.1800213c0
test sil, 2
je 0x1800a9a69
and esi, 0xfffffffd
mov dword [rbp + 0xac], esi
lea rcx, [rbp - 0x58]
call fcn.18001b9c0
nop
test sil, 1
je 0x1800a9a85
and esi, 0xfffffffe
mov dword [rbp + 0xac], esi
lea rcx, [rbp + 0xf0]
call fcn.18001b9c0
nop
lea rcx, [rbp - 0x80]
call fcn.18001b9c0
jmp 0x1800a9ba9
test byte [r14 + 8], 1
jne 0x1800a9ba9
lea rdx, [r13 + 8]
lea rcx, [rbp + 0x88]
call fcn.18001f650
nop
add r14, 0xb8
mov rcx, r14
call fcn.1800c1770
mov r15, qword [r14]
lea rsi, [rbp + 0x88]
nop dword [rax + rax]
mov r9, rsi
mov r8, r15
lea rdx, [rbp - 0x58]
mov rcx, r14
call fcn.180096650
movups xmm6, xmmword [rax]
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0xd0], xmm0
cmp byte [rbp + 0xd0], 0
jne 0x1800a9b61
cmp qword [r14 + 8], r12
je 0x1800a9ea3
mov rbx, qword [r14]
mov qword [rsp + 0x58], r14
xor r12d, r12d
mov qword [rsp + 0x60], r12
lea ecx, [r12 + 0x40]
call fcn.1800cbf7c
mov rdi, rax
mov qword [rsp + 0x60], rax
lea rcx, [rax + 0x20]
mov rdx, rsi
call fcn.18001f650
mov qword [rdi], rbx
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], rbx
mov word [rdi + 0x18], r12w
mov qword [rsp + 0x60], r12
movaps xmmword [rbp + 0xc0], xmm6
mov r8, rdi
lea rdx, [rbp + 0xc0]
mov rcx, r14
call fcn.1800153d0
add rsi, 0x20
lea rax, [rbp + 0xa8]
cmp rsi, rax
movabs r12, 0x3ffffffffffffff
jne 0x1800a9ad0
lea r9, [fcn.18001b9b0]
mov edx, reloc.WLDAP32.dll_Ordinal_32
lea r8d, [rdx - 0x1f]
lea rcx, [rbp + 0x88]
call fcn.1800cc038
mov r14, qword [rbp - 0x38]
mov byte [r14 + 0x53], 1
call fcn.18003b880
add r13, 0x68
mov qword [rsp + 0x50], r13
xor r15d, r15d
cmp r13, qword [rsp + 0x40]
jne 0x1800a9378
movzx edi, byte [rsp + 0x30]
call fcn.18003cc90
nop
test dil, dil
je 0x1800a9bdf
lea rdx, [rbp + 0x170]
mov rcx, r14
call fcn.1800bc390
mov eax, dword [r14 + 8]
test al, 1
jne 0x1800a9ca9
test al, 2
je 0x1800a9ca9
mov rcx, r14
call fcn.180049860
nop
movaps xmm0, xmm7
call fcn.180049aa0
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8d, 0x200
mov rdx, qword [r14 + 0xe0]
lea rcx, [0x18020b381]
call fcn.180076c70
test al, al
je 0x1800a9c9d
mov rax, qword [r14 + 0xe0]
cmp byte [rax], 0
je 0x1800a9c9d
mov qword [rbp - 0x30], rax
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x1800a9c45
mov qword [rbp - 0x28], rcx
xor r8d, r8d
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x80]
call fcn.18001d470
nop
lea rax, [rbp - 0x80]
mov qword [rbp - 0x30], rax
lea rax, [rbp - 0x60]
mov qword [rbp - 0x28], rax
lea rcx, [r14 + 0xb8]
lea rdx, [rbp - 0x30]
call fcn.1800a4260
nop
lea r9, [fcn.18001b9b0]
mov edx, reloc.WLDAP32.dll_Ordinal_32
lea r8d, [rdx - 0x1f]
lea rcx, [rbp - 0x80]
call fcn.1800cc038
call fcn.180049190
nop
call fcn.180049080
nop
mov qword [rsp + 0x70], 0
mov rcx, r15
test byte [r14 + 8], 1
jne 0x1800a9d12
mov dword [rsp + 0x40], 0x3d2f1375
mov dword [rsp + 0x44], 0x392f2f3a
mov word [rsp + 0x48], 0x7d
mov byte [rsp + 0x4a], 1
nop dword [rax + rax]
lea eax, [rcx + 0x55]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 9
jb 0x1800a9ce0
mov byte [rsp + 0x4a], 0
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x40]
call fcn.1800703d0
test al, al
je 0x1800a9d69
cmp qword [r14 + 0xc0], 0
jmp 0x1800a9d5d
movdqa xmm0, xmmword [0x1801e0ea0]
movdqu xmmword [rbp + 0xc0], xmm0
mov byte [rbp + 0xd0], 1
nop dword [rax]
lea eax, [rcx + 0x55]
xor byte [rbp + rcx + 0xc0], al
inc rcx
cmp rcx, 0xf
jb 0x1800a9d30
mov byte [rbp + 0xd0], 0
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0xc0]
call fcn.1800703d0
test al, al
je 0x1800a9d69
mov byte [r14 + 0x53], 1
call fcn.18003b880
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.18004c570
mov qword [rsp + 0x70], 0
mov dword [rsp + 0x58], 0x3b393716
mov dword [rsp + 0x5c], 0x100363c
mov rcx, r15
lea eax, [rcx + 0x55]
xor byte [rsp + rcx + 0x58], al
inc rcx
cmp rcx, 6
jb 0x1800a9d90
mov byte [rsp + 0x5f], 0
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x58]
call fcn.1800703d0
test al, al
jne 0x1800a9de3
cmp byte [r14 + 0x51], al
jne 0x1800a9de3
test byte [r14 + 8], 0x20
je 0x1800a9de8
mov ecx, 3
call fcn.1800427f0
test al, al
je 0x1800a9de8
mov dl, 1
mov ecx, reloc.WS2_32.dll_ntohl
call fcn.180042090
test al, al
je 0x1800a9de8
call fcn.18003b880
cmp qword [r14 + 0x68], 0
je 0x1800a9e49
test byte [r14 + 8], 0x10
jne 0x1800a9e49
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.18004c570
lea rdx, [r14 + 0x58]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800a9e0f
mov rdx, qword [rdx]
mov dword [rbp + 0xac], 0x1002570
nop dword [rax]
lea eax, [r15 + 0x55]
xor byte [rbp + r15 + 0xac], al
inc r15
cmp r15, 2
jb 0x1800a9e20
mov byte [rbp + 0xaf], 0
lea rcx, [rbp + 0xac]
call fcn.18007d520
nop
lea rcx, [rbp + 0x170]
call fcn.18001b9c0
nop
call fcn.18003d7e0
nop
mov word [r14 + 0x50], 0
call fcn.180049080
nop
mov rcx, qword [rbp + 0x198]
xor rcx, rsp
call fcn.1800cbe10
lea r11, [rsp + 0x2c0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.180002bd0
nop
call fcn.18001ba30
nop
call fcn.180002bd0
int3