Function at 0x180009b2a
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x138
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x68], rcx
sub rsp, 0x20
xor esi, esi
lea rcx, [rbp - 0x74]
mov r8d, 0x84
xor edx, edx
call fcn.180003c5d
add rsp, 0x20
mov eax, dword [0x1800e4c58]
cmp dword [0x1800e4c5c], 9
setg cl
lea edx, [rax + 1]
imul edx, eax
and dl, cl
mov byte [rbp + 0xa7], dl
lea rax, [0x180052f30]
movsxd rcx, dword [rsi + rax]
xor dword [rbp + rcx*4 - 0x74], 0x1e27
add rsi, 4
cmp rsi, 0x80
jne 0x180009b89
mov eax, 0x489b
xor ecx, ecx
mov qword [rbp + 0x50], rcx
lea rdi, [0x180053174]
lea rbx, [0x18005317c]
lea rsi, [0x1800530a0]
lea r14, [0x18005318c]
lea r15, [0x1800531a4]
lea r12, [0x18005319c]
lea r13, [0x180053184]
lea r8, [0x180053194]
lea r10, [0x180052eb0]
lea r11, [0x180052fb0]
lea r9, [0x180053030]
lea rdx, [0x1800531b0]
mov ecx, 0
mov qword [rbp + 0x70], rcx
mov ecx, 0
mov qword [rbp + 0x60], rcx
mov ecx, 0
mov qword [rbp + 0x78], rcx
xor ecx, ecx
mov qword [rbp + 0x90], rcx
xor ecx, ecx
mov qword [rbp + 0x18], rcx
xor ecx, ecx
mov qword [rbp + 0x20], rcx
xor ecx, ecx
mov qword [rbp + 0x28], rcx
xor ecx, ecx
mov qword [rbp + 0x30], rcx
xor ecx, ecx
mov qword [rbp + 0x38], rcx
xor ecx, ecx
mov qword [rbp + 0x40], rcx
xor ecx, ecx
mov qword [rbp + 0x48], rcx
xor ecx, ecx
mov qword [rbp + 0x58], rcx
xor ecx, ecx
mov qword [rbp + 0x80], rcx
cmp eax, 0x42a9
jle 0x180009cfd
cmp eax, 0x5c3a
jg 0x180009d68
cmp eax, 0x5067
jg 0x180009e79
cmp eax, 0x489a
jg 0x18000a0c5
cmp eax, 0x42aa
je 0x18000a7f9
cmp eax, 0x45df
jne 0x180009c5e
cmp dword [0x1800e5178], 0xa
mov eax, dword [0x1800e517c]
setl cl
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x28], 0
jne 0x180009cd9
xor ecx, ecx
movsxd rsi, dword [rcx + r13]
xor dword [rbp + rsi*4 - 0x74], 0x16dd
add rcx, 4
cmp rcx, 8
jne 0x180009cc3
test al, al
mov eax, 0x1f92
mov ecx, 0x329d
cmovne eax, ecx
xor eax, dword [rbp - 0x4c]
mov cl, 1
mov qword [rbp + 0x28], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
cmp eax, 0x2d80
jg 0x180009dfb
cmp eax, 0x1c07
jg 0x180009f76
cmp eax, 0x91a
jg 0x18000a10e
cmp eax, 0x363
je 0x18000a6bb
cmp eax, 0x44e
jne 0x180009c5e
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
add rax, 2
mov rcx, qword [rbp + 0xb0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xa8]
mov dword [rax], 0xf411b87a
mov eax, dword [rbp + 4]
mov ecx, 0x76cc
xor eax, ecx
jmp 0x180009c5e
cmp eax, 0x72db
jg 0x180009fe0
cmp eax, 0x692f
jg 0x18000a185
cmp eax, 0x5c3b
je 0x18000a3a5
cmp eax, 0x5f44
jne 0x180009c5e
cmp dword [0x1800e5180], 0xa
mov eax, dword [0x1800e5184]
setl cl
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x80], 0
jne 0x180009dd4
xor ecx, ecx
movsxd rsi, dword [rcx + rdx]
xor dword [rbp + rsi*4 - 0x74], 0x7c93
add rcx, 4
cmp rcx, 8
jne 0x180009dbe
test al, al
mov eax, 0x6924
mov ecx, 0x6471
cmovne eax, ecx
xor eax, dword [rbp - 0x20]
mov cl, 1
mov qword [rbp + 0x80], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
cmp eax, 0x30a7
jg 0x18000a02f
cmp eax, 0x2ff6
jg 0x18000a1f1
cmp eax, 0x2d81
je 0x18000a406
cmp eax, 0x2fb4
jne 0x180009c5e
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
cmp word [rax], 0x40
mov eax, 0xfd09290b
mov ecx, 0x72968b02
cmova eax, ecx
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], eax
mov eax, dword [0x1800e5188]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x7abe
mov ecx, 0x12c2
cmove eax, ecx
cmp dword [0x1800e518c], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x40]
jmp 0x180009c5e
cmp eax, 0x5493
jg 0x18000a291
cmp eax, 0x5068
je 0x18000a725
cmp eax, 0x52f5
jne 0x180009c5e
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb0], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x98], rax
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0x68]
mov qword [rax], rcx
mov rax, qword [rbp + 0x98]
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x98]
mov qword [rcx], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xa8], rax
mov rax, qword [rbp + 0xa8]
mov dword [rax], 0xf411b87a
cmp dword [0x1800e4cd4], 0xa
mov eax, dword [0x1800e4cd0]
setl cl
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x70], 0
jne 0x180009f52
xor ecx, ecx
movsxd rsi, dword [rcx + r11]
xor dword [rbp + rsi*4 - 0x74], 0x52f6
add rcx, 4
cmp rcx, 0x74
jne 0x180009f3c
test al, al
mov eax, 0x2e28
mov ecx, 0x423a
cmovne eax, ecx
xor eax, dword [rbp - 0x6c]
mov cl, 1
mov qword [rbp + 0x70], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
cmp eax, 0x1dcc
jg 0x18000a2da
cmp eax, 0x1c08
je 0x18000a54c
cmp eax, 0x1d9a
jne 0x180009c5e
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
add word [rax], 0x20
mov rax, qword [rbp + 0xa8]
mov dword [rax], 0xfd09290b
mov eax, dword [0x1800e5198]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x70f9
mov ecx, 0x468d
cmove eax, ecx
cmp dword [0x1800e519c], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x38]
jmp 0x180009c5e
cmp eax, 0x7986
jg 0x18000a2ff
cmp eax, 0x72dc
je 0x18000a78f
cmp eax, 0x735d
jne 0x180009c5e
mov eax, dword [0x1800e4d08]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x6046
mov ecx, 0x3619
cmove eax, ecx
cmp dword [0x1800e4d0c], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x58]
jmp 0x180009c5e
cmp eax, 0x34c0
jg 0x18000a367
cmp eax, 0x30a8
je 0x18000a56a
cmp eax, 0x3149
jne 0x180009c5e
mov r9, r10
mov rax, qword [rbp + 0xa8]
mov eax, dword [rax]
mov dword [rbp + 0x8c], eax
cmp dword [0x1800e4c7c], 0xa
mov eax, dword [0x1800e4c78]
setl cl
mov r10, rsi
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x78], 0
jne 0x18000a0a2
xor ecx, ecx
movsxd rsi, dword [rcx + r10]
xor dword [rbp + rsi*4 - 0x74], 0x2297
add rcx, 4
cmp rcx, 0x68
jne 0x18000a08c
test al, al
mov eax, 0x597a
mov ecx, 0x75da
cmovne eax, ecx
xor eax, dword [rbp - 0x64]
mov cl, 1
mov qword [rbp + 0x78], rcx
mov rsi, r10
mov r10, r9
jmp 0x18000a474
cmp eax, 0x489b
je 0x18000a434
cmp eax, 0x4b40
jne 0x180009c5e
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
cmp word [rax], 0
mov eax, 0x1da432b7
mov ecx, 0xdc43d233
cmove eax, ecx
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], eax
mov eax, dword [rbp - 0xc]
mov ecx, 0xf1d
xor eax, ecx
jmp 0x180009c5e
cmp eax, 0x91b
je 0x18000a5d2
cmp eax, 0x1ade
jne 0x180009c5e
cmp dword [0x1800e4ce8], 0xa
mov eax, dword [0x1800e4cec]
setl cl
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x20], 0
jne 0x18000a161
xor ecx, ecx
movsxd rsi, dword [rcx + rbx]
xor dword [rbp + rsi*4 - 0x74], 0x28d2
add rcx, 4
cmp rcx, 8
jne 0x18000a14b
test al, al
mov eax, 0x2b0
mov ecx, 0x27cf
cmovne eax, ecx
xor eax, dword [rbp - 0x54]
mov cl, 1
mov qword [rbp + 0x20], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
cmp eax, 0x6930
je 0x18000a495
cmp eax, 0x6e3f
jne 0x180009c5e
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
cmp word [rax], 0
mov eax, 0x1da432b7
mov ecx, 0xdc43d233
cmove eax, ecx
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], eax
mov eax, dword [0x1800e4d10]
mov ecx, 1
sub ecx, eax
imul ecx, eax
test cl, 1
mov eax, 0x2a62
mov ecx, 0x3e66
cmove eax, ecx
cmp dword [0x1800e4d14], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x50]
jmp 0x180009c5e
cmp eax, 0x2ff7
je 0x18000a4bf
cmp eax, 0x3029
jne 0x180009c5e
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb0], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x98], rax
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0x68]
mov qword [rax], rcx
mov rax, qword [rbp + 0x98]
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x98]
mov qword [rcx], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xa8], rax
mov rax, qword [rbp + 0xa8]
mov dword [rax], 0xf411b87a
mov eax, dword [rbp - 0x18]
mov ecx, 0x4cf4
xor eax, ecx
jmp 0x180009c5e
cmp eax, 0x5494
je 0x18000a528
cmp eax, 0x5662
jne 0x180009c5e
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
cmp word [rax], 0x5b
mov eax, 0xfd09290b
mov ecx, 0x8d63d1a2
cmovb eax, ecx
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], eax
mov eax, dword [rbp - 8]
mov ecx, 0x2440
xor eax, ecx
jmp 0x180009c5e
cmp eax, 0x1dcd
je 0x18000a5e1
cmp eax, 0x20d4
jne 0x180009c5e
mov eax, dword [rbp + 0xc]
mov ecx, 0x18e2
xor eax, ecx
jmp 0x180009c5e
cmp eax, 0x7987
je 0x18000a65a
cmp eax, 0x7b6d
jne 0x180009c5e
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
cmp word [rax], 0x5b
mov eax, 0xfd09290b
mov ecx, 0x8d63d1a2
cmovb eax, ecx
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], eax
mov eax, dword [0x1800e51c0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x94f
mov ecx, 0x69
cmove eax, ecx
cmp dword [0x1800e51c4], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x48]
jmp 0x180009c5e
cmp eax, 0x3738
jne 0x18000a85a
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
cmp word [rax], 0x40
mov eax, 0xfd09290b
mov ecx, 0x72968b02
cmova eax, ecx
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], eax
mov eax, dword [rbp - 4]
mov ecx, 0x6232
xor eax, ecx
jmp 0x180009c5e
cmp dword [0x1800e4d28], 0xa
mov eax, dword [0x1800e4d2c]
setl cl
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x60], 0
jne 0x18000a3e2
xor ecx, ecx
movsxd rsi, dword [rcx + r9]
xor dword [rbp + rsi*4 - 0x74], 0x985
add rcx, 4
cmp rcx, 0x70
jne 0x18000a3cc
test al, al
mov eax, 0x50ff
mov ecx, 0x7dbe
cmovne eax, ecx
xor eax, dword [rbp - 0x68]
mov cl, 1
mov qword [rbp + 0x60], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
mov eax, dword [0x1800e51d0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x15b7
mov ecx, 0x6958
cmove eax, ecx
cmp dword [0x1800e51d4], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x1c]
jmp 0x180009c5e
mov al, byte [rbp + 0xa7]
cmp byte [rbp + 0x50], 0
mov rdi, r10
jne 0x18000a459
xor r10d, r10d
movsxd rcx, dword [r10 + rdi]
xor byte [rbp + rcx*4 - 0x74], 0x26
add r10, 4
cmp r10, 0x7c
jne 0x18000a446
test al, 1
mov eax, 0x4cd2
mov ecx, 0x2e0e
cmovne eax, ecx
xor eax, dword [rbp - 0x74]
mov cl, 1
mov qword [rbp + 0x50], rcx
mov r10, rdi
lea r9, [0x180053030]
lea rdx, [0x1800531b0]
lea rdi, [0x180053174]
lea rbx, [0x18005317c]
jmp 0x180009c5e
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
add word [rax], 0x20
mov rax, qword [rbp + 0xa8]
mov dword [rax], 0xfd09290b
mov eax, dword [rbp]
mov ecx, 0x453
xor eax, ecx
jmp 0x180009c5e
mov rax, qword [rbp + 0x98]
mov rax, qword [rax]
mov qword [rbp + 0x10], rax
mov rax, qword [rbp + 0x98]
mov eax, dword [0x1800e51d8]
cmp dword [0x1800e51dc], 0xa
setl cl
mov esi, 0xe9b4ff
sub esi, eax
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x58], 0
jne 0x18000a504
xor dword [rbp - 0x24], 0x3958
test al, al
mov eax, 0x16d1
mov ecx, 0x7684
cmovne eax, ecx
xor eax, dword [rbp - 0x28]
mov cl, 1
mov qword [rbp + 0x58], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
mov rax, qword [rbp + 0x98]
mov rax, qword [rax]
mov qword [rbp + 0x10], rax
mov rax, qword [rbp + 0x98]
mov eax, dword [rbp + 8]
mov ecx, 0x6db2
xor eax, ecx
jmp 0x180009c5e
mov rax, qword [rbp + 0xa8]
mov eax, dword [rax]
mov dword [rbp + 0x8c], eax
mov eax, dword [rbp - 0x14]
mov ecx, 0x743b
xor eax, ecx
jmp 0x180009c5e
mov eax, dword [rbp + 0x8c]
cmp byte [rbp + 0x90], 0
jne 0x18000a598
xor ecx, ecx
lea rsi, [0x180053110]
movsxd rsi, dword [rcx + rsi]
xor dword [rbp + rsi*4 - 0x74], 0x2e15
add rcx, 4
cmp rcx, 0x64
jne 0x18000a57b
cmp eax, 0xfd09290a
jg 0x18000a634
cmp eax, 0x8d63d1a2
je 0x18000a71c
cmp eax, 0xdc43d233
je 0x18000a786
mov cl, 1
mov qword [rbp + 0x90], rcx
cmp eax, 0xf411b87a
je 0x18000a124
jmp 0x18000a6bb
mov eax, dword [rbp - 0x10]
mov ecx, 0x1a00
xor eax, ecx
jmp 0x180009c5e
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
add rax, 2
mov rcx, qword [rbp + 0xb0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xa8]
mov dword [rax], 0xf411b87a
mov eax, dword [0x1800e51e0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x6f4f
mov ecx, 0x3445
cmove eax, ecx
cmp dword [0x1800e51e4], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x30]
jmp 0x180009c5e
cmp eax, 0xfd09290b
je 0x18000a7f0
mov cl, 1
mov qword [rbp + 0x90], rcx
cmp eax, 0x1da432b7
je 0x180009c9c
cmp eax, 0x72968b02
jne 0x18000a6bb
cmp dword [0x1800e51e8], 0xa
mov eax, dword [0x1800e51ec]
setl cl
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x38], 0
jne 0x18000a697
xor ecx, ecx
movsxd rsi, dword [rcx + r8]
xor dword [rbp + rsi*4 - 0x74], 0x5039
add rcx, 4
cmp rcx, 8
jne 0x18000a681
test al, al
mov eax, 0x20c0
mov ecx, 0x546a
cmovne eax, ecx
xor eax, dword [rbp - 0x3c]
mov cl, 1
mov qword [rbp + 0x38], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
cmp dword [0x1800e4d48], 0xa
mov eax, dword [0x1800e4d4c]
setl cl
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x18], 0
jne 0x18000a6f8
xor ecx, ecx
movsxd rsi, dword [rcx + rdi]
xor dword [rbp + rsi*4 - 0x74], 0x20ad
add rcx, 4
cmp rcx, 8
jne 0x18000a6e2
test al, al
mov eax, 0x40eb
mov ecx, 0x3aad
cmovne eax, ecx
xor eax, dword [rbp - 0x5c]
mov cl, 1
mov qword [rbp + 0x18], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
mov al, 1
mov qword [rbp + 0x90], rax
cmp dword [0x1800e51f8], 0xa
mov eax, dword [0x1800e51fc]
setl cl
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x30], 0
jne 0x18000a762
xor ecx, ecx
movsxd rsi, dword [rcx + r14]
xor dword [rbp + rsi*4 - 0x74], 0x476
add rcx, 4
cmp rcx, 8
jne 0x18000a74c
test al, al
mov eax, 0x7ec8
mov ecx, 0x6644
cmovne eax, ecx
xor eax, dword [rbp - 0x44]
mov cl, 1
mov qword [rbp + 0x30], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
mov al, 1
mov qword [rbp + 0x90], rax
cmp dword [0x1800e5200], 0xa
mov eax, dword [0x1800e5204]
setl cl
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x48], 0
jne 0x18000a7cc
xor ecx, ecx
movsxd rsi, dword [rcx + r15]
xor dword [rbp + rsi*4 - 0x74], 0xbb5
add rcx, 4
cmp rcx, 0xc
jne 0x18000a7b6
test al, al
mov eax, 0x1d64
mov ecx, 0x6607
cmovne eax, ecx
xor eax, dword [rbp - 0x2c]
mov cl, 1
mov qword [rbp + 0x48], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
mov al, 1
mov qword [rbp + 0x90], rax
cmp dword [0x1800e5208], 0xa
mov eax, dword [0x1800e520c]
setl cl
lea esi, [rax + 1]
imul esi, eax
test sil, 1
sete al
or al, cl
cmp byte [rbp + 0x40], 0
jne 0x18000a836
xor ecx, ecx
movsxd rsi, dword [rcx + r12]
xor dword [rbp + rsi*4 - 0x74], 0x22f1
add rcx, 4
cmp rcx, 8
jne 0x18000a820
test al, al
mov eax, 0x4dbe
mov ecx, 0x543d
cmovne eax, ecx
xor eax, dword [rbp - 0x34]
mov cl, 1
mov qword [rbp + 0x40], rcx
lea rsi, [0x1800530a0]
jmp 0x180009c5e
cmp eax, 0x34c1
jne 0x180009c5e
mov rax, qword [rbp + 0x10]
lea rsp, [rbp + 0xb8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret