Function at 0x140004790
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x1c8
lea rbp, [rsp + 0x80]
movdqa xmmword [rbp + 0x130], xmm6
mov qword [rbp + 0x128], 0xfffffffffffffffe
call section..text
mov qword [rbp + 0xc8], 0
mov qword [rbp + 0xd0], 8
mov qword [rbp + 0xd8], 0xf
movabs rbx, 0x7478742e6e69616d
mov qword [rbp + 0xc0], rbx
mov dword [rsp + 0x20], 1
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0xc0]
mov r8d, 1
mov r9d, 0x40
call fcn.140006e30
lea rcx, [rbp - 0x40]
mov rax, qword [rbp - 0x50]
mov r14, qword [rbp + 0x40]
lea rsi, [rbp + 0x60]
movsxd rax, dword [rax + 4]
lea rdx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rax - 0x50], rdx
mov rax, qword [rbp - 0x50]
movsxd rax, dword [rax + 4]
lea edx, [rax - 0xb0]
mov dword [rbp + rax - 0x54], edx
call fcn.1400052a0
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x60], rax
mov rcx, rsi
call fcn.140009b00
lea rdi, str.909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090
mov eax, 0x50
test r14, r14
je 0x140004929
movdqa xmm0, xmmword [0x140011040]
nop dword [rax]
movdqa xmm1, xmmword [rax + rdi - 0x50]
pxor xmm1, xmm0
movdqa xmm2, xmmword [rax + rdi - 0x40]
pxor xmm2, xmm0
movdqa xmmword [rax + rdi - 0x50], xmm1
movdqa xmmword [rax + rdi - 0x40], xmm2
movdqa xmm1, xmmword [rax + rdi - 0x30]
pxor xmm1, xmm0
movdqa xmm2, xmmword [rax + rdi - 0x20]
pxor xmm2, xmm0
movdqa xmmword [rax + rdi - 0x30], xmm1
movdqa xmmword [rax + rdi - 0x20], xmm2
movdqa xmm1, xmmword [rax + rdi - 0x10]
pxor xmm1, xmm0
movdqa xmm2, xmmword [rax + rdi]
pxor xmm2, xmm0
movdqa xmmword [rax + rdi - 0x10], xmm1
movdqa xmmword [rax + rdi], xmm2
add rax, 0x60
cmp rax, 0xf50
jne 0x140004880
xor byte [0x140017f00], 0xfe
call section..text
call fcn.140002a40
lea rcx, [0x14001aea0]
lea rdx, str.Loading_Dir_main.txt_...
call fcn.140003eb0
mov rcx, rax
call fcn.1400042b0
xor esi, esi
lea rcx, [rbp + 0xc0]
call fcn.140001d30
jmp 0x1400050f9
movdqa xmm6, xmmword [0x140011040]
nop word cs:[rax + rax]
movdqa xmm0, xmmword [rax + rdi - 0x50]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi - 0x40]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x50], xmm0
movdqa xmmword [rax + rdi - 0x40], xmm1
movdqa xmm0, xmmword [rax + rdi - 0x30]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi - 0x20]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x30], xmm0
movdqa xmmword [rax + rdi - 0x20], xmm1
movdqa xmm0, xmmword [rax + rdi - 0x10]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x10], xmm0
movdqa xmmword [rax + rdi], xmm1
add rax, 0x60
cmp rax, 0xf50
jne 0x140004940
xor byte [0x140017f00], 0xfe
lea rsi, [rbp - 0x50]
mov rcx, rsi
mov edx, 0x65
call fcn.140001ad0
mov r14, qword [rbp - 0x40]
cmp qword [rbp - 0x38], 8
jb 0x1400049d1
mov rsi, qword [rbp - 0x50]
pxor xmm0, xmm0
movdqa xmmword [rbp + 0x100], xmm0
movdqa xmmword [rbp + 0x110], xmm0
test r14, r14
je 0x140004a39
mov qword [rbp + 0x118], 0xf
js 0x140005158
cmp r14, 0x10
jb 0x140004a53
mov rax, r14
or rax, 0xf
cmp rax, 0x17
mov r15d, 0x16
cmovae r15, rax
cmp r15, 0xfff
jb 0x140004a62
lea rcx, [r15 + 0x28]
call fcn.140009580
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140004a6b
mov qword [rbp + 0x118], 0xf
lea rdx, [rbp + 0x100]
xor r8d, r8d
jmp 0x140004bde
lea rax, [rbp + 0x100]
cmp r14, 0x10
jae 0x140004a7f
jmp 0x140004a99
lea rcx, [r15 + 1]
call fcn.140009580
mov qword [rbp + 0x100], rax
mov qword [rbp + 0x118], r15
cmp r14, 0x10
jb 0x140004a99
lea rcx, [rsi + r14*2]
cmp rax, rcx
jae 0x140004b51
lea rcx, [rax + r14]
cmp rsi, rcx
jae 0x140004b51
mov rcx, rsi
mov rdx, r14
mov r8, rax
lea r9, [rdx - 1]
mov r11, rdx
and r11, 7
je 0x140004ad9
xor r10d, r10d
nop word cs:[rax + rax]
movzx esi, byte [rcx]
mov byte [r8 + r10], sil
add rcx, 2
inc r10
cmp r11, r10
jne 0x140004ac0
sub rdx, r10
add r8, r10
cmp r9, 7
jb 0x140004bb1
xor r9d, r9d
nop word cs:[rax + rax]
movzx r10d, byte [rcx + r9*2]
mov byte [r8 + r9], r10b
movzx r10d, byte [rcx + r9*2 + 2]
mov byte [r8 + r9 + 1], r10b
movzx r10d, byte [rcx + r9*2 + 4]
mov byte [r8 + r9 + 2], r10b
movzx r10d, byte [rcx + r9*2 + 6]
mov byte [r8 + r9 + 3], r10b
movzx r10d, byte [rcx + r9*2 + 8]
mov byte [r8 + r9 + 4], r10b
movzx r10d, byte [rcx + r9*2 + 0xa]
mov byte [r8 + r9 + 5], r10b
movzx r10d, byte [rcx + r9*2 + 0xc]
mov byte [r8 + r9 + 6], r10b
movzx r10d, byte [rcx + r9*2 + 0xe]
mov byte [r8 + r9 + 7], r10b
add r9, 8
cmp rdx, r9
jne 0x140004af0
jmp 0x140004bb1
mov r9, r14
and r9, 0xfffffffffffffff0
lea rcx, [rsi + r9*2]
mov edx, r14d
and edx, 0xf
lea r8, [rax + r9]
xor r10d, r10d
movdqa xmm0, xmmword [0x140011030]
nop word cs:[rax + rax]
movdqu xmm1, xmmword [rsi + r10*2]
movdqu xmm2, xmmword [rsi + r10*2 + 0x10]
pand xmm1, xmm0
pand xmm2, xmm0
packuswb xmm1, xmm2
movdqu xmmword [rax + r10], xmm1
add r10, 0x10
cmp r9, r10
jne 0x140004b80
cmp r14, r9
jne 0x140004aa2
mov qword [rbp + 0x110], r14
mov byte [rax + r14], 0
cmp qword [rbp + 0x118], 0x10
jb 0x140004bd0
mov rdx, qword [rbp + 0x100]
jmp 0x140004bd7
lea rdx, [rbp + 0x100]
mov r8, qword [rbp + 0x110]
lea rcx, [0x14001aea0]
call fcn.140008df0
mov rcx, rax
call fcn.1400042b0
mov rax, qword [rbp + 0x110]
test rax, rax
je 0x140004c31
pxor xmm0, xmm0
movdqa xmmword [rbp + 0xe0], xmm0
cmp rax, 4
mov esi, 4
cmovb rsi, rax
cmp qword [rbp + 0x118], 0x10
jb 0x140004e96
mov rdx, qword [rbp + 0x100]
jmp 0x140004e9d
mov esi, 1
call fcn.140004380
test al, al
je 0x140005072
mov eax, 0x50
nop dword [rax + rax]
movdqa xmm0, xmmword [rax + rdi - 0x50]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi - 0x40]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x50], xmm0
movdqa xmmword [rax + rdi - 0x40], xmm1
movdqa xmm0, xmmword [rax + rdi - 0x30]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi - 0x20]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x30], xmm0
movdqa xmmword [rax + rdi - 0x20], xmm1
movdqa xmm0, xmmword [rax + rdi - 0x10]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x10], xmm0
movdqa xmmword [rax + rdi], xmm1
add rax, 0x60
cmp rax, 0xf50
jne 0x140004c50
xor byte [0x140017f00], 0xfe
mov esi, 1
mov ebx, 1
jmp 0x140004cd2
inc ebx
cmp ebx, 9
ja 0x140005072
call section..text
mov eax, 0x50
nop word cs:[rax + rax]
movdqa xmm0, xmmword [rax + rdi - 0x50]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi - 0x40]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x50], xmm0
movdqa xmmword [rax + rdi - 0x40], xmm1
movdqa xmm0, xmmword [rax + rdi - 0x30]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi - 0x20]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x30], xmm0
movdqa xmmword [rax + rdi - 0x20], xmm1
movdqa xmm0, xmmword [rax + rdi - 0x10]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x10], xmm0
movdqa xmmword [rax + rdi], xmm1
add rax, 0x60
cmp rax, 0xf50
jne 0x140004cf0
xor byte [0x140017f00], 0xfe
mov r14d, 1
jmp 0x140004d73
inc r14d
cmp r14d, ebx
ja 0x140004cd0
call section..text
mov eax, 0x50
nop word cs:[rax + rax]
movdqa xmm0, xmmword [rax + rdi - 0x50]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi - 0x40]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x50], xmm0
movdqa xmmword [rax + rdi - 0x40], xmm1
movdqa xmm0, xmmword [rax + rdi - 0x30]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi - 0x20]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x30], xmm0
movdqa xmmword [rax + rdi - 0x20], xmm1
movdqa xmm0, xmmword [rax + rdi - 0x10]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x10], xmm0
movdqa xmmword [rax + rdi], xmm1
add rax, 0x60
cmp rax, 0xf50
jne 0x140004d90
xor byte [0x140017f00], 0xfe
cmp r14d, ebx
jae 0x140004d70
call section..text
mov eax, 0x50
nop word cs:[rax + rax]
movdqa xmm0, xmmword [rax + rdi - 0x50]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi - 0x40]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x50], xmm0
movdqa xmmword [rax + rdi - 0x40], xmm1
movdqa xmm0, xmmword [rax + rdi - 0x30]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi - 0x20]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x30], xmm0
movdqa xmmword [rax + rdi - 0x20], xmm1
movdqa xmm0, xmmword [rax + rdi - 0x10]
pxor xmm0, xmm6
movdqa xmm1, xmmword [rax + rdi]
pxor xmm1, xmm6
movdqa xmmword [rax + rdi - 0x10], xmm0
movdqa xmmword [rax + rdi], xmm1
add rax, 0x60
cmp rax, 0xf50
jne 0x140004e20
xor byte [0x140017f00], 0xfe
jmp 0x140004d70
lea rdx, [rbp + 0x100]
mov qword [rbp + 0xf0], rsi
mov qword [rbp + 0xf8], 0xf
lea rdi, [rbp + 0xe0]
mov rcx, rdi
mov r8, rsi
call sub.msvcrt.dll_memcpy
or rsi, rdi
mov byte [rsi], 0
mov rax, qword [rbp + 0xf8]
cmp qword [rbp + 0xf0], 4
jne 0x140004fbd
cmp rax, 0x10
jb 0x140004ee9
mov rdi, qword [rbp + 0xe0]
cmp dword [rdi], 0x70747468
sete sil
cmp rax, 0x10
jae 0x140004fc9
test sil, sil
je 0x14000500a
call fcn.140002a40
lea rcx, [0x14001aea0]
lea rdx, str.Loading_StringTable_...
call fcn.140003eb0
mov rcx, rax
call fcn.1400042b0
call section..text
mov qword [rbp + 0xe8], 0
mov qword [rbp + 0xf0], 8
mov qword [rbp + 0xf8], 0xf
mov qword [rbp + 0xe0], rbx
lea rcx, [rbp + 0x100]
lea rsi, [rbp + 0xe0]
mov rdx, rsi
call fcn.1400028a0
mov rcx, rsi
call fcn.140001d30
mov rax, qword [rbp + 0xf8]
cmp rax, 0x10
jb 0x140004fb6
mov rcx, qword [rbp + 0xe0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140004fb1
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140005153
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1400095c4
xor esi, esi
jmp 0x140005072
xor esi, esi
cmp rax, 0x10
jb 0x140004efd
mov rcx, qword [rbp + 0xe0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140004ffc
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140005153
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1400095c4
test sil, sil
jne 0x140004f06
call fcn.140002a40
lea rcx, [0x14001aea0]
lea rdx, str.Loading_LocalFile_...
call fcn.140003eb0
mov rcx, rax
call fcn.1400042b0
call section..text
mov r8, qword [rbp + 0x110]
cmp qword [rbp + 0x118], 0x10
jb 0x140005049
mov rdx, qword [rbp + 0x100]
jmp 0x140005050
lea rdx, [rbp + 0x100]
lea rcx, [0x14001aea0]
call fcn.140008df0
mov rcx, rax
call fcn.1400042b0
xor esi, esi
lea rcx, [rbp + 0x100]
call fcn.140001d30
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
jb 0x1400050b7
mov rcx, qword [rbp + 0x100]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1400050b2
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140005153
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1400095c4
mov rax, qword [rbp - 0x38]
cmp rax, 8
jb 0x1400050f9
mov rcx, qword [rbp - 0x50]
lea rdx, [rax*2 + 2]
cmp rdx, 0x1000
jb 0x1400050f4
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140005153
add rax, rax
add rax, 0x29
mov rdx, rax
mov rcx, r8
call fcn.1400095c4
mov rax, qword [rbp + 0xd8]
cmp rax, 0x10
jb 0x14000513a
mov rcx, qword [rbp + 0xc0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140005135
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140005153
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1400095c4
mov eax, esi
movaps xmm6, xmmword [rbp + 0x130]
add rsp, 0x1c8
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
ret
call fcn.14000d770
call fcn.1400065a0
int3