Function at 0x180007fe0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x108
lea rbp, [rsp + 0x80]
xorps xmm0, xmm0
movaps xmmword [rbp], xmm0
movaps xmmword [rbp - 0x10], xmm0
movaps xmmword [rbp - 0x20], xmm0
movaps xmmword [rbp - 0x30], xmm0
movaps xmmword [rbp - 0x40], xmm0
movaps xmmword [rbp - 0x50], xmm0
movaps xmmword [rbp - 0x60], xmm0
movaps xmmword [rbp - 0x70], xmm0
mov dword [rbp + 0x10], 0
mov edi, dword [0x18009a940]
mov ebx, dword [0x18009a944]
cmp ebx, 9
setg r9b
cmp ebx, 0xa
setl al
lea esi, [rdi + 1]
imul esi, edi
test sil, 1
sete r8b
mov ebx, eax
and bl, r8b
mov byte [rbp + 0x87], bl
mov ebx, eax
xor bl, r8b
xor bl, byte [rbp + 0x87]
mov qword [rbp - 0x80], rdx
mov qword [rbp - 0x78], rcx
mov ecx, eax
or cl, r8b
or al, sil
xor al, cl
or r9b, r8b
xor r9b, al
xor r9b, bl
and r9b, 1
mov byte [rbp + 0x86], r9b
mov al, byte [rbp + 0x86]
xor eax, eax
lea rcx, [0x18002a300]
nop word [rax + rax]
movsxd rdx, dword [rcx + rax*4]
xor dword [rbp + rdx*4 - 0x70], 0x1e27
movsxd rdx, dword [rcx + rax*4 + 4]
xor dword [rbp + rdx*4 - 0x70], 0x1e27
add rax, 2
cmp rax, 0x20
jne 0x1800080a0
mov eax, 0x489b
xor ebx, ebx
lea r12, [0x18002a4e0]
lea r13, [0x18002a470]
lea r14, [0x18002a280]
mov edi, 0xdaa62406
lea r15, [0x18002a380]
lea rsi, [0x18002a400]
mov dword [rbp + 0x50], 0
mov dword [rbp + 0x44], 0
mov dword [rbp + 0x54], 0
mov dword [rbp + 0x48], 0
mov dword [rbp + 0x24], 0
mov dword [rbp + 0x28], 0
mov dword [rbp + 0x2c], 0
mov dword [rbp + 0x30], 0
mov dword [rbp + 0x34], 0
mov dword [rbp + 0x38], 0
mov dword [rbp + 0x3c], 0
mov dword [rbp + 0x40], 0
mov dword [rbp + 0x4c], 0
jmp 0x180008160
mov eax, dword [rbp + 0xc]
mov ecx, 0x6db2
xor eax, ecx
nop dword [rax]
cmp eax, 0x42a9
jle 0x1800081f0
cmp eax, 0x5c3a
jg 0x180008260
cmp eax, 0x5067
jg 0x18000835e
cmp eax, 0x489a
jg 0x1800085d0
cmp eax, 0x42aa
je 0x180008a98
cmp eax, 0x45df
jne 0x180008160
cmp dword [0x18009a948], 0xa
mov eax, dword [0x18009a94c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x2c], 0
jne 0x1800081d0
xor dword [rbp - 0x44], 0x16dd
xor dword [rbp - 4], 0x16dd
test al, al
mov eax, 0x1f92
mov ecx, 0x329d
cmovne eax, ecx
xor eax, dword [rbp - 0x48]
mov cl, 1
mov dword [rbp + 0x2c], ecx
jmp 0x180008160
cmp eax, 0x2d80
jg 0x1800082f0
cmp eax, 0x1c07
jg 0x180008468
cmp eax, 0x91a
jg 0x18000860a
cmp eax, 0x363
je 0x180008bb8
cmp eax, 0x44e
jne 0x180008160
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
mov word [rax + 2], 0
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
mov word [rax], 0
mov rax, qword [rbp + 0x70]
mov dword [rax], 0xa21ff42a
mov eax, dword [rbp + 8]
mov ecx, 0x76cc
xor eax, ecx
jmp 0x180008160
cmp eax, 0x72db
jg 0x1800084ed
cmp eax, 0x692f
jg 0x18000867a
cmp eax, 0x5c3b
je 0x1800088ce
cmp eax, 0x5f44
jne 0x180008160
mov edi, ebx
mov eax, dword [0x18009a950]
cmp dword [0x18009a954], 0xa
setl cl
mov edx, eax
not edx
lea ebx, [rax + rax]
add ebx, edx
imul ebx, eax
test bl, 1
sete al
or al, cl
cmp byte [rbp + 0x4c], 0
jne 0x1800082c6
xor dword [rbp - 0x18], 0x7c93
xor dword [rbp + 0x10], 0x7c93
test al, al
mov eax, 0x6924
mov ecx, 0x6471
cmovne eax, ecx
xor eax, dword [rbp - 0x1c]
mov cl, 1
mov dword [rbp + 0x4c], ecx
mov ebx, edi
mov edi, 0xdaa62406
jmp 0x180008160
cmp eax, 0x30a7
jg 0x18000853c
cmp eax, 0x2ff6
jg 0x1800086d3
cmp eax, 0x2d81
je 0x18000893f
cmp eax, 0x2fb4
jne 0x180008160
mov rax, qword [rbp + 0x68]
mov dword [rax], 0xfffc
mov rax, qword [rbp + 0x70]
mov dword [rax], 0x1db339c6
mov eax, dword [0x18009a958]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x7abe
mov ecx, 0x12c2
cmove eax, ecx
cmp dword [0x18009a95c], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x3c]
jmp 0x180008160
cmp eax, 0x5493
jg 0x180008798
cmp eax, 0x5068
je 0x180008c54
cmp eax, 0x52f5
jne 0x180008160
mov eax, 0x10
call fcn.180028230
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x58], rax
mov eax, 0x10
call fcn.180028230
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x60], rax
mov eax, 0x10
call fcn.180028230
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x78], rax
mov eax, 0x10
call fcn.180028230
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x68], rax
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp - 0x80]
mov qword [rax], rcx
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp - 0x78]
mov qword [rax], rcx
mov rax, qword [rbp + 0x60]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x78]
mov rcx, qword [rcx]
mov qword [rcx + 8], rax
test rax, rax
mov rax, qword [rbp + 0x58]
setne byte [rax]
mov eax, 0x10
call fcn.180028230
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x70], rax
mov rax, qword [rbp + 0x70]
mov dword [rax], 0x7d9e6d76
mov eax, dword [0x18009a960]
cmp dword [0x18009a964], 0xa
setl cl
lea edx, [rax + rax]
add edx, eax
add edx, 1
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x50], 0
je 0x180008cd3
test al, al
mov eax, 0x2e28
mov ecx, 0x423a
cmovne eax, ecx
xor eax, dword [rbp - 0x68]
mov cl, 1
mov dword [rbp + 0x50], ecx
jmp 0x180008160
cmp eax, 0x1dcc
jg 0x1800087fa
cmp eax, 0x1c08
je 0x180008a46
cmp eax, 0x1d9a
jne 0x180008160
mov rax, qword [rbp + 0x68]
movzx eax, word [rax]
mov rcx, qword [rbp + 0x78]
mov rcx, qword [rcx]
mov word [rcx], ax
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
mov eax, dword [rax]
add eax, 2
mov rcx, qword [rbp + 0x78]
mov rcx, qword [rcx]
mov word [rcx + 2], ax
mov rax, qword [rbp + 0x68]
mov rax, qword [rbp + 0x70]
mov dword [rax], 0xa21ff42a
mov eax, dword [0x18009a968]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x70f9
mov ecx, 0x468d
cmove eax, ecx
cmp dword [0x18009a96c], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x34]
jmp 0x180008160
cmp eax, 0x7986
jg 0x18000881f
cmp eax, 0x72dc
je 0x180008ae6
cmp eax, 0x735d
jne 0x180008160
mov eax, dword [0x18009a970]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x6046
mov ecx, 0x3619
cmove eax, ecx
cmp dword [0x18009a974], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x54]
jmp 0x180008160
cmp eax, 0x34c0
jg 0x1800088a0
cmp eax, 0x30a8
je 0x180008a5e
cmp eax, 0x3149
jne 0x180008160
mov rax, qword [rbp + 0x70]
mov eax, dword [rax]
mov dword [rbp + 0x20], eax
cmp dword [0x18009a978], 0xa
mov eax, dword [0x18009a97c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x54], 0
jne 0x1800085b4
mov ecx, 1
nop
movsxd rdx, dword [r13 + rcx*4 - 4]
xor dword [rbp + rdx*4 - 0x70], 0x2297
movsxd rdx, dword [r13 + rcx*4]
xor dword [rbp + rdx*4 - 0x70], 0x2297
add rcx, 2
cmp rcx, 0x1b
jne 0x180008590
test al, al
mov eax, 0x597a
mov ecx, 0x75da
cmovne eax, ecx
xor eax, dword [rbp - 0x60]
mov cl, 1
mov dword [rbp + 0x54], ecx
jmp 0x180008160
cmp eax, 0x489b
je 0x180008972
cmp eax, 0x4b40
jne 0x180008160
mov rax, qword [rbp + 0x58]
cmp byte [rax], 0
mov eax, 0xf0a2b00b
cmovne eax, edi
mov rcx, qword [rbp + 0x70]
mov dword [rcx], eax
mov eax, dword [rbp - 8]
mov ecx, 0xf1d
xor eax, ecx
jmp 0x180008160
cmp eax, 0x91b
je 0x180008b3b
cmp eax, 0x1ade
jne 0x180008160
mov eax, dword [0x18009a980]
cmp dword [0x18009a984], 0xa
setl cl
lea edx, [rax - 0x465963f0]
not edx
add edx, eax
add edx, eax
add edx, 2
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x28], 0
jne 0x18000865e
xor dword [rbp - 0x4c], 0x28d2
xor dword [rbp - 8], 0x28d2
test al, al
mov eax, 0x2b0
mov ecx, 0x27cf
cmovne eax, ecx
xor eax, dword [rbp - 0x50]
mov cl, 1
mov dword [rbp + 0x28], ecx
jmp 0x180008160
cmp eax, 0x6930
je 0x18000899f
cmp eax, 0x6e3f
jne 0x180008160
mov rax, qword [rbp + 0x58]
cmp byte [rax], 0
mov eax, 0xf0a2b00b
cmovne eax, edi
mov rcx, qword [rbp + 0x70]
mov dword [rcx], eax
mov eax, dword [0x18009a988]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2a62
mov ecx, 0x3e66
cmove eax, ecx
cmp dword [0x18009a98c], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x4c]
jmp 0x180008160
cmp eax, 0x2ff7
je 0x1800089ff
cmp eax, 0x3029
jne 0x180008160
mov eax, 0x10
call fcn.180028230
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x58], rax
mov eax, 0x10
call fcn.180028230
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x60], rax
mov eax, 0x10
call fcn.180028230
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x78], rax
mov eax, 0x10
call fcn.180028230
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x68], rax
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp - 0x80]
mov qword [rax], rcx
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp - 0x78]
mov qword [rax], rcx
mov rax, qword [rbp + 0x60]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x78]
mov rcx, qword [rcx]
mov qword [rcx + 8], rax
test rax, rax
mov rax, qword [rbp + 0x58]
setne byte [rax]
mov eax, 0x10
call fcn.180028230
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x70], rax
mov rax, qword [rbp + 0x70]
mov dword [rax], 0x7d9e6d76
mov eax, dword [rbp - 0x14]
mov ecx, 0x4cf4
xor eax, ecx
jmp 0x180008160
cmp eax, 0x5494
je 0x18000814f
cmp eax, 0x5662
jne 0x180008160
mov rax, qword [rbp + 0x68]
mov rax, qword [rbp + 0x60]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1800075d0
add rsp, 0x20
add eax, eax
mov rcx, qword [rbp + 0x68]
mov dword [rcx], eax
mov rax, qword [rbp + 0x68]
cmp dword [rax], 0xfffc
mov eax, 0x1db339c6
mov ecx, 0x470c686b
cmova eax, ecx
mov rcx, qword [rbp + 0x70]
mov dword [rcx], eax
mov eax, dword [rbp - 4]
mov ecx, 0x2440
xor eax, ecx
jmp 0x180008160
cmp eax, 0x1dcd
je 0x180008b4a
cmp eax, 0x20d4
jne 0x180008160
mov eax, dword [rbp + 0x10]
mov ecx, 0x18e2
xor eax, ecx
jmp 0x180008160
cmp eax, 0x7987
je 0x180008c06
cmp eax, 0x7b6d
jne 0x180008160
mov rax, qword [rbp + 0x68]
mov rax, qword [rbp + 0x60]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1800075d0
add rsp, 0x20
add eax, eax
mov rcx, qword [rbp + 0x68]
mov dword [rcx], eax
mov rax, qword [rbp + 0x68]
cmp dword [rax], 0xfffc
mov eax, 0x1db339c6
mov ecx, 0x470c686b
cmova eax, ecx
mov rcx, qword [rbp + 0x70]
mov dword [rcx], eax
mov eax, dword [0x18009a990]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x94f
mov ecx, 0x69
cmove eax, ecx
cmp dword [0x18009a994], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x44]
jmp 0x180008160
cmp eax, 0x3738
jne 0x180008d39
mov rax, qword [rbp + 0x68]
mov dword [rax], 0xfffc
mov rax, qword [rbp + 0x70]
mov dword [rax], 0x1db339c6
mov eax, dword [rbp]
mov ecx, 0x6232
xor eax, ecx
jmp 0x180008160
cmp dword [0x18009a998], 0xa
mov eax, dword [0x18009a99c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x44], 0
jne 0x180008923
mov ecx, 1
nop word [rax + rax]
movsxd rdx, dword [rsi + rcx*4 - 4]
xor dword [rbp + rdx*4 - 0x70], 0x985
movsxd rdx, dword [rsi + rcx*4]
xor dword [rbp + rdx*4 - 0x70], 0x985
add rcx, 2
cmp rcx, 0x1d
jne 0x180008900
test al, al
mov eax, 0x50ff
mov ecx, 0x7dbe
cmovne eax, ecx
xor eax, dword [rbp - 0x64]
mov cl, 1
mov dword [rbp + 0x44], ecx
jmp 0x180008160
mov eax, dword [0x18009a9a0]
lea ecx, [rax + rax]
add ecx, eax
add ecx, 0xffffffff
imul ecx, eax
test cl, 1
mov eax, 0x15b7
mov ecx, 0x6958
cmove eax, ecx
cmp dword [0x18009a9a4], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x18]
jmp 0x180008160
mov al, byte [rbp + 0x87]
or al, byte [rbp + 0x86]
test bl, bl
je 0x180008ca8
test al, 1
mov eax, 0x2e0e
mov ecx, 0x4cd2
cmovne eax, ecx
xor eax, dword [rbp - 0x70]
mov bl, 1
jmp 0x180008160
mov rax, qword [rbp + 0x68]
movzx eax, word [rax]
mov rcx, qword [rbp + 0x78]
mov rcx, qword [rcx]
mov word [rcx], ax
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
movzx eax, word [rax]
mov ecx, eax
neg ecx
mov edx, ecx
and edx, 1
add edx, eax
add eax, 0xffffffff
and eax, 0xfffe
xor ecx, 1
add ecx, edx
add eax, ecx
add eax, 3
mov rcx, qword [rbp + 0x78]
mov rcx, qword [rcx]
mov word [rcx + 2], ax
mov rax, qword [rbp + 0x68]
mov rax, qword [rbp + 0x70]
mov dword [rax], 0xa21ff42a
mov eax, dword [rbp + 4]
mov ecx, 0x453
xor eax, ecx
jmp 0x180008160
cmp dword [0x18009a9a8], 0xa
mov eax, dword [0x18009a9ac]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x40], 0
jne 0x180008a2a
xor dword [rbp - 0x20], 0x3958
test al, al
mov eax, 0x16d1
mov ecx, 0x7684
cmovne eax, ecx
xor eax, dword [rbp - 0x24]
mov cl, 1
mov dword [rbp + 0x40], ecx
jmp 0x180008160
mov rax, qword [rbp + 0x70]
mov eax, dword [rax]
mov dword [rbp + 0x20], eax
mov eax, dword [rbp - 0x10]
mov ecx, 0x743b
xor eax, ecx
jmp 0x180008160
mov eax, dword [rbp + 0x20]
cmp byte [rbp + 0x48], 0
je 0x180008d09
mov cl, 1
mov dword [rbp + 0x48], ecx
cmp eax, 0x1db339c5
jg 0x180008b9b
cmp eax, 0xa21ff42a
je 0x180008ae6
cmp eax, 0xdaa62406
je 0x18000819e
cmp eax, 0xf0a2b00b
jne 0x180008bb8
cmp dword [0x18009a9b0], 0xa
mov eax, dword [0x18009a9b4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x38], 0
jne 0x180008aca
xor dword [rbp - 0x2c], 0x22f1
xor dword [rbp + 8], 0x22f1
test al, al
mov eax, 0x4dbe
mov ecx, 0x543d
cmovne eax, ecx
xor eax, dword [rbp - 0x30]
mov cl, 1
mov dword [rbp + 0x38], ecx
jmp 0x180008160
cmp dword [0x18009a9b8], 0xa
mov eax, dword [0x18009a9bc]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x3c], 0
jne 0x180008b1f
xor dword [rbp - 0x24], 0xbb5
xor dword [rbp - 0x20], 0xbb5
xor dword [rbp + 0xc], 0xbb5
test al, al
mov eax, 0x1d64
mov ecx, 0x6607
cmovne eax, ecx
xor eax, dword [rbp - 0x28]
mov cl, 1
mov dword [rbp + 0x3c], ecx
jmp 0x180008160
mov eax, dword [rbp - 0xc]
mov ecx, 0x1a00
xor eax, ecx
jmp 0x180008160
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
mov word [rax + 2], 0
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
mov word [rax], 0
mov rax, qword [rbp + 0x70]
mov dword [rax], 0xa21ff42a
mov eax, dword [0x18009a9c0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
mov eax, 0x6f4f
mov ecx, 0x3445
cmove eax, ecx
cmp dword [0x18009a9c4], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x2c]
jmp 0x180008160
cmp eax, 0x1db339c6
je 0x180008c06
cmp eax, 0x470c686b
je 0x180008c54
cmp eax, 0x7d9e6d76
je 0x180008620
cmp dword [0x18009a9c8], 0xa
mov eax, dword [0x18009a9cc]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x24], 0
jne 0x180008bea
xor dword [rbp - 0x54], 0x20ad
xor dword [rbp - 0xc], 0x20ad
test al, al
mov eax, 0x40eb
mov ecx, 0x3aad
cmovne eax, ecx
xor eax, dword [rbp - 0x58]
mov cl, 1
mov dword [rbp + 0x24], ecx
jmp 0x180008160
cmp dword [0x18009a9d0], 0xa
mov eax, dword [0x18009a9d4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x34], 0
jne 0x180008c38
xor dword [rbp - 0x34], 0x5039
xor dword [rbp + 4], 0x5039
test al, al
mov eax, 0x20c0
mov ecx, 0x546a
cmovne eax, ecx
xor eax, dword [rbp - 0x38]
mov cl, 1
mov dword [rbp + 0x34], ecx
jmp 0x180008160
mov ecx, dword [0x18009a9d8]
cmp dword [0x18009a9dc], 0xa
setl al
lea edx, [rcx + 1]
imul edx, ecx
test dl, 1
sete cl
mov edx, eax
or dl, cl
xor al, cl
or al, dl
cmp byte [rbp + 0x30], 0
jne 0x180008c8c
xor dword [rbp - 0x3c], 0x476
xor dword [rbp], 0x476
test al, al
mov eax, 0x7ec8
mov ecx, 0x6644
cmovne eax, ecx
xor eax, dword [rbp - 0x40]
mov cl, 1
mov dword [rbp + 0x30], ecx
jmp 0x180008160
mov ecx, 1
nop dword [rax]
movsxd rdx, dword [r14 + rcx*4 - 4]
xor byte [rbp + rdx*4 - 0x70], 0x26
cmp rcx, 0x1f
je 0x180008986
movsxd rdx, dword [r14 + rcx*4]
xor byte [rbp + rdx*4 - 0x70], 0x26
add rcx, 2
jmp 0x180008cb0
mov ecx, 1
nop dword [rax + rax]
movsxd rdx, dword [r15 + rcx*4 - 4]
xor dword [rbp + rdx*4 - 0x70], 0x52f6
cmp rcx, 0x1d
je 0x18000844c
movsxd rdx, dword [r15 + rcx*4]
xor dword [rbp + rdx*4 - 0x70], 0x52f6
add rcx, 2
jmp 0x180008ce0
mov ecx, 1
nop
movsxd rdx, dword [r12 + rcx*4 - 4]
xor dword [rbp + rdx*4 - 0x70], 0x2e15
cmp rcx, 0x19
je 0x180008a6b
movsxd rdx, dword [r12 + rcx*4]
xor dword [rbp + rdx*4 - 0x70], 0x2e15
add rcx, 2
jmp 0x180008d10
cmp eax, 0x34c1
jne 0x180008160
lea rsp, [rbp + 0x88]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret