Function at 0x1400288c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0x100
mov rax, qword gs:[0x30]
mov edi, r9d
mov r15, r8
mov r14, rdx
mov rbx, rcx
mov rsi, qword [rax + 0x48]
lock inc dword [rcx + 0x6b0]
je 0x140028928
cmp rsi, qword [rcx + 0x6a0]
je 0x140028a91
mov rcx, qword [rcx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.140092640
mov qword [rbx + 0x6a0], rsi
mov dword [rbx + 0x6b4], 0x3059efb7
sub dword [rbx + 0x6b4], 0x18fee4f4
sub dword [rbx + 0x6b4], 0xaff802c
sub dword [rbx + 0x6b4], 0xc5b8a96
mov rcx, qword [rbx + 0x510]
mov rax, qword [rcx]
call qword [rax + 8]
lea rdx, [rbp - 0x49]
mov qword [rbp - 0x49], rax
lea rcx, [rbx + 0x598]
mov rsi, rax
call fcn.140027400
mov edx, dword [rbp + 0x6f]
mov rcx, rsi
call fcn.14003b910
mov rdx, r14
mov rcx, rsi
call fcn.14003b6a0
movzx r13d, byte [rbp + 0x77]
xor eax, eax
mov r14d, eax
mov qword [rsp + 0x60], rax
mov eax, dword [rbx + 0x518]
movabs rdx, 0x330f471368f3f5fb
sub rdx, 0x65acf174
add rdx, 0x3469da28
add rdx, 0x22709624
cmp eax, 1
jne 0x140028d44
cmp edi, eax
jne 0x140028a9c
mov rdx, qword [0x1404db148]
movabs r12, 0xd7a072bb3e61f015
add r12, 0xe85ad70
sub r12, 0xed5a9b3
add r12, 0x384eeebc
add rdx, r12
movabs r14, 0x83665142d1a626b
add r14, 0x33904457
sub r14, 0x3d5aaa33
rol rdx, 0x1e
movabs rdi, 0x344ad23572011093
xor rdi, 0x471b82bf
add rdi, 0x3f8735e4
add rdx, r14
xor ecx, ecx
rol rdx, 2
xor rdx, rdi
ror rdx, 0xe
call rdx
sub eax, dword [r15]
mov ecx, 0x6ab905c1
xor ecx, 0x13a7ecb5
sub ecx, 0x791ee973
cdq
sub eax, edx
mov rdx, qword [0x1404db148]
add rdx, r12
sar eax, 1
rol rdx, 0x1e
add rdx, r14
mov dword [rsp + 0x60], eax
rol rdx, 2
xor rdx, rdi
ror rdx, 0xe
call rdx
sub eax, dword [r15 + 4]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x7d], eax
jmp 0x140028ad9
inc dword [rcx + 0x6b4]
jmp 0x140028957
test edi, edi
jne 0x140028ad9
mov dword [rsp + 0x60], 0x77be8ca5
xor dword [rsp + 0x60], 0x5f8df6c5
sub dword [rsp + 0x60], 0xb5d02aa
add dword [rsp + 0x60], 0x6329884a
mov dword [rbp - 0x7d], 0x4faa8027
add dword [rbp - 0x7d], 0x27486540
add dword [rbp - 0x7d], 0x90d1a99
mov rcx, qword [rbp + 0x7f]
test r13b, r13b
pushf
mov eax, 0x35bf6e8f
xor eax, 0x15908a23
add eax, 0x19e0ec55
sub eax, 0x3a08d081
popf
pushf
mov r12d, 0x11e9efbe
add r12d, 0x4fab0096
xor r12d, 0x6198f054
popf
cmove r12d, eax
xor edi, edi
mov qword [rbp - 0x71], rdi
test rcx, rcx
je 0x140028b41
call fcn.140035c60
mov rcx, rax
test rax, rax
je 0x140028b41
mov rax, qword [rax]
call qword [rax + 0xb8]
mov qword [rbp - 0x71], rax
mov rax, qword [rbx + 0x538]
xorps xmm0, xmm0
mov r13, qword [rbx + 0x578]
movabs rcx, 0x330f47131193d9d5
xor rcx, 0x16d90783
xor rcx, 0x5d6baa85
mov r14, qword [rbx + 0x540]
xor rax, rcx
mov qword [rbp - 0x41], rax
lea rcx, [rbp - 0x31]
mov eax, dword [r15 + 4]
mov dword [rbp + 0x4f], eax
lea rdx, [r13 + 1]
mov eax, dword [r15]
mov dword [rbp - 0x79], eax
lea rax, [rbp - 0x29]
mov qword [rbp - 0x31], rax
movups xmmword [rbp - 0x29], xmm0
movups xmmword [rbp - 0x19], xmm0
movups xmmword [rbp - 9], xmm0
call fcn.140010f10
mov edx, 0x7e854ee
add edx, 0x4884b542
sub edx, 0x3a4cf66f
xor edx, 0x27103e46
test r13, r13
je 0x140028c12
mov rdi, rax
sub r14, rax
mov r8, r13
mov r9d, 0x5bda8704
sub r9d, 0x461f6d01
xor r9d, 0x15bb1afc
nop dword [rax]
nop word [rax + rax]
movzx ecx, dx
lea rdi, [rdi + 2]
and cx, r9w
ror edx, 8
xor cx, word [r14 + rdi - 2]
mov word [rdi - 2], cx
sub r8, 1
jne 0x140028bf0
xor ecx, ecx
mov r9d, 0x3056ca52
sub r9d, 0x1e7b2567
add r9d, 0x6dcc10bb
add r9d, 0x5a4a5a
mov word [rax + r13*2], cx
xor r8d, r8d
mov rdi, qword [0x1404db138]
movabs rax, 0x3cb95c29578978e7
sub rax, 0x53765bdd
xor rax, 0x2bb88cd2
sub rax, 0x2be5f953
mov rdx, qword [rbp - 0x31]
mov qword [rsp + 0x58], rcx
rol rdi, 0xb
xor rdi, rax
movabs rax, 0x71cd131254840c1c
sub rax, 0x4c747eea
xor rax, 0x3e7e1354
sub rax, 0x25aa28fa
ror rdi, 0x14
not rdi
add rdi, rax
mov rax, qword [rbp - 0x41]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x71]
mov qword [rsp + 0x48], rcx
mov ecx, r12d
mov qword [rsp + 0x40], rax
mov eax, dword [rbp + 0x4f]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp - 0x79]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x7d]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x60]
rol rdi, 0x15
mov dword [rsp + 0x20], eax
call rdi
mov rcx, qword [rbp - 0x31]
mov r14, rax
lea rax, [rbp - 0x29]
cmp rcx, rax
jne 0x140028cff
lea rdi, [rbp - 0x29]
xor eax, eax
mov ecx, 0x447e9ebc
sub ecx, 0x314a3668
sub ecx, 0x13346824
rep stosb byte [rdi], al
jmp 0x140028d04
call fcn.1400b6f90
test r14, r14
je 0x140028f38
mov rcx, qword [rbx + 0x510]
mov rdx, rsi
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, rax
mov qword [rbp - 0x39], rax
mov rdx, qword [rax]
call qword [rdx + 0x10]
lea rcx, [rbx + 0x658]
lea rdx, [rbp - 0x39]
call fcn.1400274f0
movzx r13d, byte [rbp + 0x77]
jmp 0x140028eb0
cmp eax, 2
jne 0x140028eb0
mov rcx, qword [rbx + 0x530]
mov rax, qword [str.GK_R]
xor rcx, rdx
movabs rdx, 0xdd1a70e5049e679f
xor rdx, 0x616ec8f4
add rdx, 0x7fffffff
sub rdx, 0x12b8e022
add rax, rdx
movabs rdx, 0xa881471463c631b2
xor rdx, 0x201ce979
add rdx, 0x517b673d
xor rax, rdx
movabs rdx, 0x609572e04dae57c2
xor rdx, 0x15580635
xor rdx, 0x4b4ac135
add rdx, 0x7fffffff
add rdx, 0x1d04c9c6
sub rax, rdx
lea rdx, [rbp - 0x69]
call rax
cmp edi, 1
jne 0x140028dfc
mov eax, dword [rbp - 0x61]
sub eax, dword [r15]
sub eax, dword [rbp - 0x69]
cdq
sub eax, edx
sar eax, 1
mov dword [rsp + 0x60], eax
mov eax, dword [rbp - 0x5d]
sub eax, dword [r15 + 4]
sub eax, dword [rbp - 0x65]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x7d], eax
jmp 0x140028e7c
mov rcx, qword [rbx + 0x5a0]
mov rax, qword [rbx + 0x598]
mov rdi, qword [rax + rcx*8 - 0x10]
cmp rdi, qword [rbx + 0x688]
je 0x140028e4f
lea rdx, [rbp + 7]
mov rcx, rdi
call fcn.1400412f0
mov rcx, rdi
mov edx, dword [rax]
add edx, 0x50
mov dword [rsp + 0x60], edx
lea rdx, [rbp + 0xf]
call fcn.1400412f0
mov ecx, dword [rax + 4]
neg ecx
add ecx, 0xffffffd8
neg ecx
mov dword [rbp - 0x7d], ecx
jmp 0x140028e7c
mov dword [rsp + 0x60], 0x39c56b73
add dword [rsp + 0x60], 0x411c1cc
sub dword [rsp + 0x60], 0x3dd72d2b
mov dword [rbp - 0x7d], 0xe497b04
add dword [rbp - 0x7d], 0x1b17158a
sub dword [rbp - 0x7d], 0x29609066
mov edx, 0x3cc6a829
add edx, 0x16212081
sub edx, 0x48b46b07
sub edx, 0xa335803
mov rax, rbx
mov rcx, rsi
mov rdx, qword [rdx + rbx]
dec rdx
call fcn.140024b40
mov rdx, rsi
mov rcx, rbx
call fcn.140029630
mov rax, qword [rsi]
lea rdx, [rsp + 0x60]
mov rcx, rsi
call qword [rax + 0x38]
mov rax, qword [rsi]
mov rdx, r15
mov rcx, rsi
call qword [rax + 0x40]
mov eax, dword [rbx + 0x518]
cmp eax, 1
jne 0x1400291ca
mov r8, r14
mov rdx, rsi
mov rcx, rbx
call fcn.140029290
test al, al
jne 0x140028f4c
mov rax, qword [0x1404db140]
movabs rcx, 0xbf9859967df7a731
sub rcx, 0x6362ab3e
add rcx, 0x7fffffff
xor rcx, 0x26a7148a
xor rax, rcx
movabs rcx, 0x6e53baf164bfd27b
xor rcx, 0xedeb00a
xor rcx, 0x21a3a86d
add rax, rcx
mov rcx, r14
call rax
mov rdx, rsi
mov rcx, rbx
call fcn.140029380
xor edi, edi
mov esi, edi
jmp 0x14002920f
mov rax, qword [0x1404db1d0]
movabs rcx, 0x70f428b079e52beb
sub rcx, 0x63852c22
xor rcx, 0x4f361b3d
sub rcx, 0x30ea31f5
rol rax, 0x37
mov r9d, 0x5dec9974
sub r9d, 0x23028c1f
xor r9d, 0x3aea0d57
add rax, rcx
mov r8b, 0xb
add r8b, 0x26
add r8b, 0x3b
xor r8b, 0x93
rol rax, 0x2e
movabs rcx, 0x393a81b569768d78
sub rcx, 0x210250b6
add rcx, 0x5727ebce
sub rax, rcx
xor edx, edx
ror rax, 3
movabs rcx, 0x579206846a1185c
sub rcx, 0x513d1f5
add rcx, 0x7fffffff
add rcx, 0x24df947a
add rax, rcx
mov rcx, r14
ror rax, 3
call rax
movabs rax, 0x330f471307ac3e12
add rax, 0x73c725b8
sub rax, 0x2151eef7
xor edi, edi
cmp qword [rbx + 0x760], rax
je 0x140029098
mov eax, dword [r15]
lea rdx, [rbp - 0x59]
mov dword [rbp - 0x51], eax
movabs rcx, 0x7585190e144c552d
add rcx, 0x42e3f3df
xor rcx, 0x3717ff1f
add rcx, 0xce197e6
mov eax, dword [r15 + 4]
mov dword [rbp - 0x4d], eax
mov rax, qword [rbx + 0x770]
not rax
mov qword [rbp - 0x59], rdi
add rax, rcx
movabs rcx, 0x7c369811398ccc96
add rcx, 0xcd3b000
sub rcx, 0x1db50580
ror rax, 0x2a
xor rax, rcx
movabs rcx, 0x640bee6d174b8118
add rcx, 0x621145d5
sub rcx, 0x1cce076
sub rcx, 0x60350c02
sub rax, rcx
mov rcx, r14
call rax
mov rax, qword [0x1404db1d8]
movabs rcx, 0x4ced516c657400d8
sub rcx, 0xffbbab9
xor rcx, 0x317ae76e
sub rcx, 0x4012ef8
ror rax, 0x17
not rax
sub rax, rcx
movabs rcx, 0xc9d24ce25c05ea27
sub rcx, 0x5a95f9fe
add rcx, 0x35b382e7
sub rcx, 0x327351ae
rol rax, 0xc
add rax, rcx
movabs rcx, 0x14e128895ac7510b
xor rcx, 0x4d2fc219
add rcx, 0x7fffffff
xor rcx, 0x761d18f2
xor rax, rcx
movabs rcx, 0x3969ed665fd031bc
xor rcx, 0x45724791
add rcx, 0x35494b24
add rcx, 0x692d2a43
add rax, rcx
mov rcx, r14
call rax
mov rax, qword [0x1404db1e0]
movabs rcx, 0xab2d8c021ad63dd4
add rcx, 0x1a314bb5
add rcx, 0xd5805ea
add rax, rcx
mov edx, 0x1a8def2b
add edx, 0x48544884
add edx, 0x1bc9828f
xor edx, 0x7eabba3b
ror rax, 0x13
movabs rcx, 0x24da9875524b0ae8
add rcx, 0x1d7e44
sub rcx, 0x5191247
add rcx, 0x5b618300
xor rax, rcx
movabs rcx, 0x6d841ae10c3129bc
xor rcx, 0x231deeb6
sub rcx, 0xf25355
xor rcx, 0x731a170
rol rax, 0xa
add rax, rcx
mov rcx, r14
rol rax, 0x26
call rax
jmp 0x14002920f
cmp eax, 2
jne 0x14002920d
mov rdx, qword [rbx + 0x580]
test rdx, rdx
je 0x1400291ec
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x20]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
test r13b, r13b
je 0x14002920d
mov rcx, qword [rbx + 0x688]
mov rdx, rsi
call fcn.140041670
xor edi, edi
sub dword [rbx + 0x6b4], 1
jne 0x140029260
mov qword [rbx + 0x6a0], rdi
mov ecx, 0x773c336
add ecx, 0xf59bc01
add ecx, 0x3ce0d0a8
add ecx, 0xac51b020
lock xadd dword [rbx + 0x6b0], ecx
dec ecx
cmp ecx, 0xffffffff
je 0x140029267
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.1400925e0
jmp 0x140029267
lock dec dword [rbx + 0x6b0]
lea r11, [rsp + 0x100]
mov rax, rsi
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret