Function at 0x18001e540
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xc8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x40], 0xfffffffffffffffe
mov rsi, rcx
lea rdi, [rcx + 0x50]
mov qword [rcx + 0x60], 0
cmp qword [rcx + 0x68], 0x10
mov rax, rdi
jb 0x18001e580
mov rax, qword [rsi + 0x50]
mov byte [rax], 0
mov rdx, qword [rsi + 0x38]
cmp rdx, qword [rsi + 0x40]
je 0x18001e591
mov qword [rsi + 0x40], rdx
movzx eax, byte [rsi + 0x14]
mov byte [rbp + 0x20], al
cmp rdx, qword [rsi + 0x48]
je 0x18001e5a6
mov byte [rdx], al
inc qword [rsi + 0x40]
jmp 0x18001e5b3
lea rcx, [rsi + 0x38]
lea r8, [rbp + 0x20]
call fcn.180020540
lea r14, [rbp + 0x38]
lea r15, [rbp + 0x30]
lea r12, [rbp + 0x28]
lea r13, [0x18003f9c8]
jmp 0x18001e5dd
mov edx, 1
mov rcx, rdi
call fcn.18000fa30
mov rcx, rsi
call fcn.1800203f0
inc eax
cmp eax, 0xf5
ja case.0x18001e5fa.128
movsxd rax, dword [r13 + rax*4]
add rax, r13
jmp rax
movzx r9d, byte [rsi + 0x14]
mov rax, qword [rsi + 0x60]
mov rcx, qword [rsi + 0x68]
cmp rax, rcx
jae 0x18001e5d0
lea rdx, [rax + 1]
mov qword [rsi + 0x60], rdx
mov rdx, rdi
cmp rcx, 0x10
jb 0x18001e623
mov rdx, qword [rsi + 0x50]
mov byte [rdx + rax], r9b
mov byte [rdx + rax + 1], 0
jmp 0x18001e5dd
movabs rax, 0xbf00000080
mov qword [rbp + 0x20], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 0x58], rax
mov qword [rbp - 0x50], r12
lea rdx, [rbp - 0x58]
jmp 0x18001e66b
movaps xmm0, xmmword [0x18003d6a0]
movaps xmmword [rbp + 0x20], xmm0
lea rax, [rbp + 0x20]
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], r15
lea rdx, [rbp - 0x38]
mov rcx, rsi
call fcn.180020890
test al, al
jne 0x18001e5dd
jmp 0x18001fa87
movups xmm0, xmmword [0x18003a028]
movaps xmmword [rbp + 0x20], xmm0
movabs rax, 0xbf00000080
mov qword [rbp + 0x30], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 8], rax
mov qword [rbp], r14
lea rdx, [rbp - 8]
jmp 0x18001e66b
mov rcx, rsi
call fcn.1800203f0
add eax, 0xffffffde
cmp eax, 0x53
ja case.0x18001e6cd.35
lea rcx, [0x18003fda0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rax, qword [rsi + 0x60]
mov rcx, qword [rsi + 0x68]
cmp rax, rcx
jae 0x18001ecb5
lea rdx, [rax + 1]
mov qword [rsi + 0x60], rdx
mov rdx, rdi
cmp rcx, 0x10
jb 0x18001e6f5
mov rdx, qword [rsi + 0x50]
mov word [rdx + rax], 0x22
jmp 0x18001e5dd
movaps xmm0, xmmword [0x18003d6b0]
movaps xmmword [rbp + 0x20], xmm0
lea rax, [rbp + 0x20]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], r15
lea rdx, [rbp - 0x48]
jmp 0x18001e66b
movaps xmm0, xmmword [0x18003d690]
movaps xmmword [rbp + 0x20], xmm0
lea rax, [rbp + 0x20]
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], r15
lea rdx, [rbp - 0x28]
jmp 0x18001e66b
movups xmm0, xmmword [0x18003a010]
movaps xmmword [rbp + 0x20], xmm0
movabs rax, 0xbf00000080
mov qword [rbp + 0x30], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], r14
lea rdx, [rbp - 0x18]
jmp 0x18001e66b
movups xmm0, xmmword [0x18003a040]
movaps xmmword [rbp + 0x20], xmm0
movabs rax, 0xbf00000080
mov qword [rbp + 0x30], rax
lea rax, [rbp + 0x20]
mov qword [rbp + 8], rax
mov qword [rbp + 0x10], r14
lea rdx, [rbp + 8]
jmp 0x18001e66b
mov rax, qword [rsi + 0x60]
mov rcx, qword [rsi + 0x68]
cmp rax, rcx
jae 0x18001ecca
lea rdx, [rax + 1]
mov qword [rsi + 0x60], rdx
mov rdx, rdi
cmp rcx, 0x10
jb 0x18001e7c2
mov rdx, qword [rsi + 0x50]
mov word [rdx + rax], 0x2f
jmp 0x18001e5dd
mov rax, qword [rsi + 0x60]
mov rcx, qword [rsi + 0x68]
cmp rax, rcx
jae 0x18001ecdf
lea rdx, [rax + 1]
mov qword [rsi + 0x60], rdx
mov rdx, rdi
cmp rcx, 0x10
jb 0x18001e7f3
mov rdx, qword [rsi + 0x50]
mov word [rdx + rax], 0x5c
jmp 0x18001e5dd
mov rax, qword [rsi + 0x60]
mov rcx, qword [rsi + 0x68]
cmp rax, rcx
jae 0x18001ecf4
lea rdx, [rax + 1]
mov qword [rsi + 0x60], rdx
mov rdx, rdi
cmp rcx, 0x10
jb 0x18001e824
mov rdx, qword [rsi + 0x50]
mov word [rdx + rax], 8
jmp 0x18001e5dd
mov rax, qword [rsi + 0x60]
mov rcx, qword [rsi + 0x68]
cmp rax, rcx
jae 0x18001ed09
lea rdx, [rax + 1]
mov qword [rsi + 0x60], rdx
mov rdx, rdi
cmp rcx, 0x10
jb 0x18001e855
mov rdx, qword [rsi + 0x50]
mov word [rdx + rax], 0xc
jmp 0x18001e5dd
mov rax, qword [rsi + 0x60]
mov rcx, qword [rsi + 0x68]
cmp rax, rcx
jae 0x18001ed1e
lea rdx, [rax + 1]
mov qword [rsi + 0x60], rdx
mov rdx, rdi
cmp rcx, 0x10
jb 0x18001e886
mov rdx, qword [rsi + 0x50]
mov word [rdx + rax], 0xa
jmp 0x18001e5dd
mov rax, qword [rsi + 0x60]
mov rcx, qword [rsi + 0x68]
cmp rax, rcx
jae 0x18001ed33
lea rdx, [rax + 1]
mov qword [rsi + 0x60], rdx
mov rdx, rdi
cmp rcx, 0x10
jb 0x18001e8b7
mov rdx, qword [rsi + 0x50]
mov word [rdx + rax], 0xd
jmp 0x18001e5dd
mov rax, qword [rsi + 0x60]
mov rcx, qword [rsi + 0x68]
cmp rax, rcx
jae 0x18001ed48
lea rdx, [rax + 1]
mov qword [rsi + 0x60], rdx
mov rdx, rdi
cmp rcx, 0x10
jb 0x18001e8e8
mov rdx, qword [rsi + 0x50]
mov word [rdx + rax], 9
jmp 0x18001e5dd
mov rcx, rsi
call fcn.1800207a0
cmp eax, 0xffffffff
je 0x18001fade
mov ebx, eax
and eax, 0xfffffc00
cmp eax, 0xd800
jne 0x18001ed5d
mov rcx, rsi
call fcn.1800203f0
cmp eax, 0x5c
jne 0x18001fabf
mov rcx, rsi
call fcn.1800203f0
cmp eax, 0x75
jne 0x18001fabf
mov rcx, rsi
call fcn.1800207a0
cmp eax, 0xffffffff
je 0x18001fade
mov ecx, eax
and ecx, 0xfffffc00
cmp ecx, 0xdc00
jne 0x18001fabf
shl ebx, 0xa
add ebx, eax
add ebx, 0xfca02400
mov qword [rbp + 0x18], rbx
mov ecx, ebx
shr ecx, 0x12
mov ebx, ecx
not ebx
mov r8d, ebx
and r8d, 0x8dcb9329
mov eax, ecx
and eax, 0x2cd6
or eax, r8d
xor eax, 0x4cea452
mov r8d, ecx
and r8d, 0x377b
or eax, r8d
xor eax, 0xefffffff
or eax, r8d
mov r8d, eax
xor r8d, 0x66fac874
mov r9d, ebx
and r9d, 0x8100
mov r10d, ecx
and r10d, 1
mov r11d, ecx
and r11d, 0x3eae
mov edx, ebx
and edx, 0xa0000050
or edx, r11d
add r9d, r10d
add r9d, 0x3eae
xor r9d, edx
and ebx, 0xf67498e3
mov edx, ecx
and edx, 0x271c
or edx, ebx
xor edx, 0xf6749813
and ecx, 0xf0
or ecx, edx
xor r9d, 0x567400f1
and r9d, ecx
mov edx, eax
xor edx, 0x9905378b
xor eax, 0xc861b72b
or edx, r8d
and edx, eax
xor edx, r9d
and r9d, r8d
xor edx, 0xae9b7f5f
or edx, r9d
mov rcx, rsi
call fcn.180020760
mov rbx, qword [rbp + 0x18]
mov edx, ebx
shr edx, 0xc
mov eax, edx
and eax, 0x43f28
mov ecx, edx
and ecx, 0xbc0d7
or ecx, 0x40000
xor ecx, eax
xor ecx, 0x4003f
and edx, 0xffffffc0
xor edx, 0xffffffc0
or edx, ecx
mov eax, edx
xor eax, 0x48bf138e
xor edx, 0xf138e
and edx, eax
mov ecx, edx
xor ecx, 0x48bf138e
mov eax, edx
xor eax, 0xb740ec71
mov r8d, eax
and r8d, 0x2b537
mov r9d, ecx
and r9d, 0xacfd4ac8
or r9d, r8d
xor r9d, 0x50cf1c1e
or r9d, eax
mov r10d, edx
and r10d, 0xb40256d6
xor r10d, 0x4bffbbaf
mov r11d, r9d
or r11d, r10d
not r11d
and r10d, 0xc5e4f4be
mov r8d, edx
and r8d, 0x30020240
or r8d, r10d
xor r8d, r9d
xor r8d, 0xa1b0b01
or r8d, r11d
xor r8d, 0x3cda9a9
and ecx, 0x63a81367
mov r9d, eax
and r9d, 0x7ec98
or r9d, ecx
xor r9d, 0x63a813e7
and eax, 0x80
or eax, r9d
xor edx, 0x48bf130e
and edx, eax
or edx, r8d
mov rcx, rsi
call fcn.180020760
mov eax, ebx
shr eax, 6
mov ecx, eax
not ecx
or ecx, 0xffffffc0
mov r8d, ecx
and r8d, 0x84003062
mov edx, eax
and edx, 0x1d
or edx, r8d
mov r9d, edx
xor r9d, 0x7bffcf9d
mov r8d, edx
xor r8d, 0x84003062
mov r10d, edx
xor r10d, 0xa9ee60d7
and r10d, r9d
and r9d, 0x203f
xor r9d, 0x8741717f
or r9d, r8d
and ecx, 0xfe6b0f50
and eax, 0x2f
or eax, ecx
mov ecx, eax
xor ecx, 0x4a0af
xor eax, 0x792a0e10
or eax, ecx
mov ecx, eax
or ecx, r9d
not ecx
and ecx, 0x782a0e3f
and r9d, 0x8500203f
or eax, 0x100000
and eax, 0xff7f2fff
xor eax, r9d
xor eax, 0x2c18140
or eax, ecx
mov ecx, edx
xor ecx, 0x17
and ecx, r8d
xor r10d, ecx
mov ecx, edx
xor ecx, 0x840030e2
mov r8d, r10d
xor r8d, 0xd211afca
mov r9d, r8d
and r9d, 0x86d54841
and r10d, 0x292a103e
or r10d, r9d
or r8d, ecx
and ecx, 0xffffff81
and edx, 0x303e
or edx, ecx
xor edx, r10d
xor edx, 0xafff68d7
and edx, r8d
mov ecx, edx
not ecx
mov r8d, ecx
and r8d, 0x3d6912da
and edx, 0x82966825
or edx, r8d
xor edx, 0xc296ed25
or edx, ecx
mov ecx, eax
xor ecx, 0x874151c0
mov r8d, ecx
and r8d, 0x90406407
and eax, 0x11003b8
add eax, r8d
add eax, 0x4a2a0000
or ecx, edx
and edx, 0xbffffaff
xor edx, eax
mov eax, ecx
xor eax, edx
xor edx, 0x9a7a623f
xor eax, 0x9a7a633f
or edx, ecx
not edx
or edx, eax
mov rcx, rsi
call fcn.180020760
mov rcx, rbx
mov eax, ecx
and eax, 0xffffffc0
or eax, 0x27
xor eax, ecx
mov ecx, eax
xor ecx, 0xffffffd8
mov r8d, ecx
or r8d, 0xffffff7f
mov edx, r8d
and edx, 0x67bf6ea
xor edx, ecx
and r8d, 0x1a0c6e87
xor r8d, eax
xor r8d, 0x1a0c6e20
and ecx, 0xffffff7f
or ecx, r8d
xor edx, 0x67bf66a
mov eax, edx
xor eax, ecx
or edx, ecx
not edx
or edx, eax
mov rcx, rsi
call fcn.180020760
jmp 0x18001e5dd
mov edx, 1
mov rcx, rdi
mov r9b, 0x22
call fcn.18000fa30
jmp 0x18001e5dd
mov edx, 1
mov rcx, rdi
mov r9b, 0x2f
call fcn.18000fa30
jmp 0x18001e5dd
mov edx, 1
mov rcx, rdi
mov r9b, 0x5c
call fcn.18000fa30
jmp 0x18001e5dd
mov edx, 1
mov rcx, rdi
mov r9b, 8
call fcn.18000fa30
jmp 0x18001e5dd
mov edx, 1
mov rcx, rdi
mov r9b, 0xc
call fcn.18000fa30
jmp 0x18001e5dd
mov edx, 1
mov rcx, rdi
mov r9b, 0xa
call fcn.18000fa30
jmp 0x18001e5dd
mov edx, 1
mov rcx, rdi
mov r9b, 0xd
call fcn.18000fa30
jmp 0x18001e5dd
mov edx, 1
mov rcx, rdi
mov r9b, 9
call fcn.18000fa30
jmp 0x18001e5dd
cmp eax, 0xdc00
je 0x18001fb00
cmp ebx, 0x7f
jg 0x18001ed7c
mov rcx, rsi
mov edx, ebx
call fcn.180020760
jmp 0x18001e5dd
cmp ebx, 0x7ff
ja 0x18001ef27
mov edx, ebx
shr edx, 6
mov eax, edx
not eax
or eax, 0xfd2a4c80
mov ecx, edx
and ecx, 0x2459164
mov r8d, eax
and r8d, 0x5092269b
or r8d, ecx
xor r8d, 0x91409562
and r8d, eax
mov ecx, edx
and ecx, 0x1d2b3f9
xor ecx, 0xc1d2b3f9
mov r9d, edx
xor r9d, 0xa2d4c06
or r9d, ecx
mov ecx, r8d
not ecx
mov r10d, ecx
and r10d, 0x22c0c77c
and r8d, 0x80153003
or r8d, r10d
or ecx, r9d
and r9d, 0x3dfd3f
xor r9d, r8d
xor r9d, 0x63ff3ac3
not ecx
and ecx, 0x30dd3f
or ecx, r9d
mov r8d, ecx
and r8d, 0xe3efb20b
or r8d, 0x101045f4
and ecx, 0x104df4
xor ecx, r8d
mov r8d, ecx
xor r8d, 0xd1c2f6cd
mov r9d, edx
and r9d, 0x2d5b33f
xor r9d, 0xffffff3f
and edx, 0x958274
and eax, 0x240318b
or eax, edx
xor eax, 0x240314b
or eax, r9d
mov r9d, eax
and r9d, 0x82588002
and eax, 0x531fd
or r9d, 0x3814
xor r9d, eax
mov edx, r9d
xor edx, 0x7da27614
xor r9d, 0x825d89eb
xor ecx, 0x2e3d0932
mov eax, ecx
or eax, edx
and ecx, r9d
and edx, r8d
or edx, ecx
xor edx, eax
not edx
mov rcx, rsi
call fcn.180020760
mov eax, ebx
not eax
or eax, 0xffffffc0
mov ecx, eax
not ecx
and eax, 0xc0cacc0b
xor ebx, 0x20
and ebx, ecx
and ecx, 0xfffffff4
or ecx, eax
mov eax, ecx
xor eax, 0x223120f4
xor ecx, 0xe2fbeceb
and ecx, eax
or ebx, ecx
mov edx, ebx
xor edx, 0x20
mov eax, ebx
xor eax, 0xc94e5e13
and eax, 0xe94e7e13
and ebx, 0x231006c
or ebx, eax
mov eax, ebx
xor eax, 0x1480810c
mov ecx, ebx
xor ecx, 0x99fee56d
and ecx, eax
and edx, 0x804a44a1
or edx, ecx
and ebx, 0xca74367a
mov ecx, eax
and ecx, 0x210b4805
or ecx, ebx
xor ecx, 0xeb7f7ef7
or ecx, eax
mov eax, ecx
and eax, 0xefffffff
xor eax, edx
xor edx, 0x897e64e1
xor eax, 0x9d7e64e1
jmp 0x18001eca2
cmp ebx, 0xffff
ja 0x18001e968
mov r8d, ebx
shr r8d, 0xc
mov edx, r8d
not edx
mov eax, edx
and eax, 0x1a00011c
mov ecx, r8d
and ecx, 0xffee3
or ecx, eax
mov r9d, ecx
xor r9d, 0xc0322202
mov r10d, ecx
xor r10d, 0x1a00011c
mov dword [rbp + 0x18], r10d
and r9d, 0xd232221a
mov r11d, r10d
and r11d, 0xddde5
or r11d, r9d
xor r11d, 0x8ba82b17
and r10d, 0xa090d
or r10d, r11d
mov eax, r10d
not eax
mov r9d, r8d
and r9d, 0xc93be
and edx, 0x19136c41
or edx, r9d
xor edx, 0x4089654c
and r8d, 0x5f6f2
xor r8d, 0xa665f6f2
or r8d, edx
mov edx, r10d
and edx, 0x91adec67
mov r11d, eax
and r11d, 0x66521398
or r11d, edx
mov r9d, r11d
xor r9d, 0x20188
and r11d, 0x4080082
and r10d, 0xc032c418
and eax, 0x12453a65
or eax, r10d
add eax, r11d
add eax, 0x100
or r9d, r8d
and r8d, 0x1d17ffff
xor r8d, eax
mov edx, r8d
xor edx, 0x2450a
or edx, r9d
not edx
or r9d, 0xa8c88870
and r9d, 0xb9cfedff
xor r9d, r8d
xor r9d, 0x44e2d71a
and edx, 0x1107658f
or edx, r9d
mov eax, edx
xor eax, 0xa665f612
xor ecx, 0xc
mov r8d, dword [rbp + 0x18]
and ecx, r8d
and ecx, 0x804f
and r8d, 0x800f
xor r8d, ecx
mov ecx, eax
and ecx, r8d
xor edx, 0x4d
and edx, r8d
not r8d
and r8d, eax
or r8d, edx
xor r8d, ecx
and edx, eax
or edx, r8d
mov rcx, rsi
call fcn.180020760
mov eax, ebx
shr eax, 6
mov edx, eax
xor edx, 0xa
and edx, eax
mov ecx, edx
not ecx
mov r8d, eax
and r8d, 0xa
or eax, ecx
or ecx, 0xfd80b180
and ecx, 0xfd80b195
and edx, 0x2a
or edx, ecx
and eax, 0xa
mov ecx, edx
and ecx, 0x1c80108f
xor ecx, r8d
xor ecx, 0x1800400f
and edx, 0xe100a130
or edx, eax
xor edx, 0xa
or edx, ecx
xor edx, 0xe580f11a
mov rcx, rsi
call fcn.180020760
mov eax, ebx
xor eax, 0x3e
and eax, ebx
and ebx, 0x3e
mov edx, eax
and edx, 0x3f
xor edx, ebx
and eax, 0x3e
xor edx, 0x44a43d3e
or edx, eax
xor edx, 0x44a43dbe
jmp 0x18001eca8
lea r9, [0x18004a9e8]
cmp byte [0x18004c11f], 0
jne 0x18001fa76
mov rax, qword [0x18004a9e0]
movabs r10, 0xcd1cd761094be387
add r10, rax
movabs r11, 0xcd1cd761094be377
add r11, rax
movabs rdi, 0xcd1cd761094be376
add rdi, rax
mov ecx, 1
xor r8d, r8d
movabs rbx, 0xf0f0f0f0f0f0f0f1
lea r14, [0x18004c0f9]
nop word [rax + rax]
mov rax, rcx
mul rbx
mov rax, rdx
shr rax, 4
and rdx, 0xfffffffffffffff0
add rdx, rax
mov r15, r11
sub r15, rdx
mov rax, r8
mul rbx
mov rax, rdx
shr rax, 4
and rdx, 0xfffffffffffffff0
add rdx, rax
mov rax, rdi
sub rax, rdx
movzx eax, byte [rax + r8]
xor al, byte [r10 + r8]
mov byte [r8 + r14], al
movzx eax, byte [r15 + r8]
xor al, byte [r10 + r8 + 1]
mov byte [r8 + r14 + 1], al
add r8, 2
add rcx, 2
cmp r8, 0x26
jne 0x18001f160
mov byte [0x18004c11f], 1
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be56c
add rcx, qword [0x18004a9e0]
call fcn.180033cb0
lea r9, [0x18004aa10]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be5eb
add rcx, qword [0x18004a9e0]
call fcn.180033d90
lea r9, [0x18004aa18]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be66e
add rcx, qword [0x18004a9e0]
call fcn.180033e20
lea r9, [0x18004aa20]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be6e1
add rcx, qword [0x18004a9e0]
call fcn.180033ed0
lea r9, [0x18004aa28]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be759
add rcx, qword [0x18004a9e0]
call fcn.180033fc0
lea r9, [0x18004aa30]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be7d6
add rcx, qword [0x18004a9e0]
call fcn.180034050
lea r9, [0x18004aa38]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be845
add rcx, qword [0x18004a9e0]
call fcn.1800340d0
lea r9, [0x18004aa40]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be8c8
add rcx, qword [0x18004a9e0]
call fcn.180034180
lea r9, [0x18004aa48]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be948
add rcx, qword [0x18004a9e0]
call fcn.180034270
lea r9, [0x18004aa50]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be9d2
add rcx, qword [0x18004a9e0]
call fcn.1800342f0
lea r9, [0x18004aa58]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bea4c
add rcx, qword [0x18004a9e0]
call fcn.180034380
lea r9, [0x18004aa60]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094beac2
add rcx, qword [0x18004a9e0]
call fcn.180034470
lea r9, [0x18004aa68]
jmp 0x18001fa76
lea r9, [0x18004aa70]
cmp byte [0x18004c5f2], 0
jne 0x18001fa76
mov rax, qword [0x18004a9e0]
movabs r10, 0xcd1cd761094beb49
add r10, rax
movabs r11, 0xcd1cd761094beb39
add r11, rax
movabs rdi, 0xcd1cd761094beb38
add rdi, rax
mov ecx, 1
xor r8d, r8d
movabs rbx, 0xf0f0f0f0f0f0f0f1
lea r14, [0x18004c5a4]
nop dword [rax]
mov rax, rcx
mul rbx
mov rax, rdx
shr rax, 4
and rdx, 0xfffffffffffffff0
add rdx, rax
mov r15, r11
sub r15, rdx
mov rax, r8
mul rbx
mov rax, rdx
shr rax, 4
and rdx, 0xfffffffffffffff0
add rdx, rax
mov rax, rdi
sub rax, rdx
movzx eax, byte [rax + r8]
xor al, byte [r10 + r8]
mov byte [r8 + r14], al
movzx eax, byte [r15 + r8]
xor al, byte [r10 + r8 + 1]
mov byte [r8 + r14 + 1], al
add r8, 2
add rcx, 2
cmp r8, 0x4e
jne 0x18001f3c0
mov byte [0x18004c5f2], 1
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bebab
add rcx, qword [0x18004a9e0]
call fcn.1800344f0
lea r9, [0x18004aa78]
jmp 0x18001fa76
lea r9, [0x18004aa80]
cmp byte [0x18004c68a], 0
jne 0x18001fa76
mov rax, qword [0x18004a9e0]
movabs r8, 0xcd1cd761094bec4d
add r8, rax
movabs r10, 0xcd1cd761094bec2f
add r10, rax
xor ecx, ecx
movabs r11, 0x8888888888888889
lea rdi, [0x18004c642]
nop word cs:[rax + rax]
mov rax, rcx
mul r11
shr rdx, 4
imul rax, rdx, 0xffffffffffffffe2
add rax, r10
movzx edx, byte [rcx + rax]
xor dl, byte [r8 + rcx]
mov byte [rcx + rdi], dl
movzx eax, byte [rcx + rax + 1]
xor al, byte [r8 + rcx + 1]
mov byte [rcx + rdi + 1], al
add rcx, 2
cmp rcx, 0x48
jne 0x18001f4a0
mov byte [0x18004c68a], 1
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094becab
add rcx, qword [0x18004a9e0]
call fcn.180034580
lea r9, [0x18004aa88]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bed29
add rcx, qword [0x18004a9e0]
call fcn.180034680
lea r9, [0x18004aa90]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bed9f
add rcx, qword [0x18004a9e0]
call fcn.180034800
lea r9, [0x18004aa98]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bee10
add rcx, qword [0x18004a9e0]
call fcn.1800348c0
lea r9, [0x18004aaa0]
jmp 0x18001fa76
lea r9, [0x18004aaa8]
cmp byte [0x18004c7fb], 0
jne 0x18001fa76
mov rax, qword [0x18004a9e0]
movabs rcx, 0xcd1cd761094bee9b
add rcx, rax
movabs r8, 0xcd1cd761094bee7f
add r8, rax
xor r10d, r10d
movabs r11, 0x4924924924924925
lea rdi, [0x18004c7b2]
nop word cs:[rax + rax]
mov rax, r10
shr rax, 2
mul r11
shr rdx, 1
imul rax, rdx, 0xffffffffffffffe4
add rax, r8
movzx edx, byte [r10 + rax]
xor dl, byte [rcx + r10]
mov byte [r10 + rdi], dl
cmp r10, 0x48
je 0x18001fa5d
movzx eax, byte [rax + r10 + 1]
xor al, byte [rcx + r10 + 1]
mov byte [r10 + rdi + 1], al
add r10, 2
jmp 0x18001f5c0
movabs rcx, 0xcd1cd761094beefd
add rcx, qword [0x18004a9e0]
call fcn.1800349a0
lea r9, [0x18004aab0]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bef7c
add rcx, qword [0x18004a9e0]
call fcn.180034a50
lea r9, [0x18004aab8]
jmp 0x18001fa76
lea r9, [0x18004aac0]
cmp byte [0x18004c8d9], 0
jne 0x18001fa76
mov rax, qword [0x18004a9e0]
movabs r8, 0xcd1cd761094befff
add r8, rax
movabs r10, 0xcd1cd761094befed
add r10, rax
xor ecx, ecx
movabs r11, 0xe38e38e38e38e38f
lea rdi, [0x18004c890]
nop dword [rax]
mov rax, rcx
mul r11
shr rdx, 3
and rdx, 0xfffffffffffffffe
lea rdx, [rdx + rdx*8]
mov rax, r10
sub rax, rdx
movzx edx, byte [rax + rcx]
xor dl, byte [r8 + rcx]
mov byte [rcx + rdi], dl
cmp rcx, 0x48
je 0x18001fa66
movzx eax, byte [rax + rcx + 1]
xor al, byte [r8 + rcx + 1]
mov byte [rcx + rdi + 1], al
add rcx, 2
jmp 0x18001f690
lea r9, [0x18004aac8]
cmp byte [0x18004c923], 0
jne 0x18001fa76
mov rax, qword [0x18004a9e0]
movabs r8, 0xcd1cd761094bf071
add r8, rax
movabs r10, 0xcd1cd761094bf05b
add r10, rax
xor ecx, ecx
movabs r11, 0x2e8ba2e8ba2e8ba3
lea rdi, [0x18004c8da]
nop dword [rax]
mov rax, rcx
mul r11
shr rdx, 2
imul rax, rdx, 0xffffffffffffffea
add rax, r10
movzx edx, byte [rcx + rax]
xor dl, byte [r8 + rcx]
mov byte [rcx + rdi], dl
cmp rcx, 0x48
je 0x18001fa6f
movzx eax, byte [rax + rcx + 1]
xor al, byte [r8 + rcx + 1]
mov byte [rcx + rdi + 1], al
add rcx, 2
jmp 0x18001f720
movabs rcx, 0xcd1cd761094bf0d7
add rcx, qword [0x18004a9e0]
call fcn.180034ac0
lea r9, [0x18004aad0]
jmp 0x18001fa76
lea r9, [0x18004aad8]
cmp byte [0x18004c9b6], 0
jne 0x18001fa76
mov rax, qword [0x18004a9e0]
movabs r10, 0xcd1cd761094bf174
add r10, rax
movabs r11, 0xcd1cd761094bf158
add r11, rax
movabs rdi, 0xcd1cd761094bf157
add rdi, rax
mov ecx, 1
xor r8d, r8d
movabs rbx, 0x1a7b9611a7b9611b
lea r14, [0x18004c96e]
nop word [rax + rax]
mov rax, rcx
mul rbx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 4
imul r15, rax, 0xffffffffffffffe3
mov rax, r8
mul rbx
add r15, r11
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 4
imul rax, rax, 0xffffffffffffffe3
add rax, rdi
movzx eax, byte [r8 + rax]
xor al, byte [r10 + r8]
mov byte [r8 + r14], al
movzx eax, byte [r8 + r15]
xor al, byte [r10 + r8 + 1]
mov byte [r8 + r14 + 1], al
add r8, 2
add rcx, 2
cmp r8, 0x48
jne 0x18001f7e0
mov byte [0x18004c9b6], 1
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bf1da
add rcx, qword [0x18004a9e0]
call fcn.180034bd0
lea r9, [0x18004aae0]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bf249
add rcx, qword [0x18004a9e0]
call fcn.180034ca0
lea r9, [0x18004aae8]
jmp 0x18001fa76
lea r9, [0x18004aaf0]
cmp byte [0x18004ca93], 0
jne 0x18001fa76
mov rax, qword [0x18004a9e0]
movabs r10, 0xcd1cd761094bf2d1
add r10, rax
movabs r11, 0xcd1cd761094bf2b9
add r11, rax
movabs rdi, 0xcd1cd761094bf2b8
add rdi, rax
mov ecx, 1
xor r8d, r8d
movabs rbx, 0x47ae147ae147ae15
lea r14, [0x18004ca4b]
nop
mov rax, rcx
mul rbx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 4
imul r15, rax, 0xffffffffffffffe7
mov rax, r8
mul rbx
add r15, r11
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 4
imul rax, rax, 0xffffffffffffffe7
add rax, rdi
movzx eax, byte [r8 + rax]
xor al, byte [r10 + r8]
mov byte [r8 + r14], al
movzx eax, byte [r8 + r15]
xor al, byte [r10 + r8 + 1]
mov byte [r8 + r14 + 1], al
add r8, 2
add rcx, 2
cmp r8, 0x48
jne 0x18001f8f0
mov byte [0x18004ca93], 1
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bf32c
add rcx, qword [0x18004a9e0]
call fcn.180034df0
lea r9, [0x18004aaf8]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bf397
add rcx, qword [0x18004a9e0]
call fcn.180034ed0
lea r9, [0x18004ab00]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094bf40c
add rcx, qword [0x18004a9e0]
call fcn.180034f40
lea r9, [0x18004ab08]
jmp 0x18001fa76
mov eax, 4
jmp 0x18001fa8c
lea r9, [0x18004ab28]
cmp byte [0x18004cb95], 0
jne 0x18001fa76
mov rax, qword [0x18004a9e0]
movabs r8, 0xcd1cd761094bf49f
add r8, rax
movabs r10, 0xcd1cd761094bf485
add r10, rax
xor ecx, ecx
movabs r11, 0x4ec4ec4ec4ec4ec5
lea rdi, [0x18004cb6f]
nop dword [rax + rax]
mov rax, rcx
mul r11
shr rdx, 3
imul rax, rdx, 0xffffffffffffffe6
add rax, r10
movzx edx, byte [rcx + rax]
xor dl, byte [r8 + rcx]
mov byte [rcx + rdi], dl
movzx eax, byte [rcx + rax + 1]
xor al, byte [r8 + rcx + 1]
mov byte [rcx + rdi + 1], al
add rcx, 2
cmp rcx, 0x26
jne 0x18001fa20
mov byte [0x18004cb95], 1
jmp 0x18001fa76
mov byte [0x18004c7fb], 1
jmp 0x18001fa76
mov byte [0x18004c8d9], 1
jmp 0x18001fa76
mov byte [0x18004c923], 1
movabs rax, 0xcd1cd761094bcf64
add rax, qword [r9]
mov qword [rsi + 0x70], rax
mov eax, 0xe
add rsp, 0xc8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
movabs rcx, 0xcd1cd761094be505
add rcx, qword [0x18004a9e0]
call fcn.180033c00
lea r9, [0x18004aa08]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be429
add rcx, qword [0x18004a9e0]
call fcn.180033a60
lea r9, [0x18004a9f8]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be3be
add rcx, qword [0x18004a9e0]
call fcn.1800339e0
lea r9, [0x18004a9f0]
jmp 0x18001fa76
movabs rcx, 0xcd1cd761094be49a
add rcx, qword [0x18004a9e0]
call fcn.180033ad0
lea r9, [0x18004aa00]
jmp 0x18001fa76