Function at 0x6b5d50
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x174
mov ebx, ecx
nop
mov esi, dword [ebp + 8]
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x6bc760
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
mov dword fs:[0], eax
call fcn.006bc6e0
mov edx, dword [0xa42fd8]
mov ecx, dword [0xa42fc8]
mov edi, 0xffffd742
sub edi, eax
mov dword [ebp - 0x3c], edi
sub ecx, edi
add ecx, edx
call dword [0xa37360]
call ecx
mov ecx, eax
xor ecx, 0xcbada2dd
mov edx, eax
xor edx, 0xcbada2cd
mov edi, eax
xor edi, 0xcbada2c1
mov dword [ebp - 0x20], edx
mov dword [ebp + edx - 0x80], 0
mov dword [ebp - 0x24], eax
xor eax, 0xcbada2d6
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], eax
mov dword [ebp + edi - 0x80], eax
mov dword [ebp - 0x38], ecx
mov byte [ebp + ecx - 0x80], 0
mov dword [ebp - 0x80], 0x954b60
mov dword [ebp - 0x10], 2
lea eax, [ebp - 0x80]
mov dword [ebp - 0x64], ebx
mov ecx, ebx
push esi
push eax
call fcn.006b4f00
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax - 0x5c], 0
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp + eax - 0x5c], ecx
mov eax, dword [ebp - 0x38]
mov byte [ebp + eax - 0x5c], 0
mov dword [ebp - 0x5c], 0x956450
mov dword [ebp - 0x10], 3
lea ecx, [ebp - 0x5c]
call fcn.00795fd0
nop
mov eax, dword [ebp - 0x38]
lea ecx, [eax + ebp]
add ecx, 0xffffff80
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax - 0x80]
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
cmp dword [ebp + edx - 0x80], esi
jbe 0x6b5e5f
mov ecx, dword [ebp - 0x40]
mov ecx, dword [ecx]
test eax, eax
je 0x6b63a1
xorps xmm0, xmm0
movups xmmword [ebp - 0x90], xmm0
movups xmmword [ebp - 0xa0], xmm0
movups xmmword [ebp - 0xb0], xmm0
movups xmmword [ebp - 0xc0], xmm0
movups xmmword [ebp - 0xd0], xmm0
movups xmmword [ebp - 0xe0], xmm0
movups xmmword [ebp - 0xf0], xmm0
movups xmmword [ebp - 0x100], xmm0
movups xmmword [ebp - 0x110], xmm0
movups xmmword [ebp - 0x120], xmm0
movups xmmword [ebp - 0x130], xmm0
movups xmmword [ebp - 0x140], xmm0
movups xmmword [ebp - 0x150], xmm0
movups xmmword [ebp - 0x160], xmm0
movups xmmword [ebp - 0x170], xmm0
movups xmmword [ebp - 0x180], xmm0
mov ebx, dword [ebp - 0x24]
mov edx, ebx
xor edx, 0xcbada2f6
mov dword [ebp - 0x34], edx
mov byte [ebp + edx - 0x180], 1
xor ebx, 0xcbada285
mov byte [ebp + ebx - 0x180], 1
movzx edx, byte [ecx + eax - 1]
cmp byte [ebp + edx - 0x180], 0
lea edx, [ecx + eax - 1]
jne 0x6b5f35
lea esi, [eax - 1]
nop word cs:[eax + eax]
test esi, esi
je 0x6b5f39
nop
movzx edi, byte [edx - 1]
dec edx
dec esi
cmp byte [ebp + edi - 0x180], 1
jne 0x6b5f20
sub edx, ecx
jmp 0x6b5f3e
mov edx, 0xffffffff
mov esi, dword [ebp - 0x38]
add esi, ebp
add esi, 0xffffffa4
mov dword [ebp - 0x28], esi
dec eax
cmp edx, eax
jne 0x6b5f92
lea esi, [ecx + edx]
mov dword [ebp - 0x60], esi
mov esi, dword [ebp - 0x20]
mov dword [ebp + esi - 0x80], eax
lea edi, [ecx + edx]
inc edi
neg edx
mov ecx, eax
xor ecx, edx
and edx, eax
lea esi, [ecx + edx*2]
inc esi
mov eax, dword [0xa42fd0]
mov ecx, dword [0xa42fc4]
sub ecx, dword [ebp - 0x3c]
add ecx, eax
mov dword [ebp - 0x10], 0xffffffff
call dword [0xa37360]
push esi
push edi
push dword [ebp - 0x60]
call ecx
add esp, 0xc
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
cmp dword [ebp + eax - 0x5c], ecx
mov edi, dword [ebp - 0x28]
mov eax, dword [edi]
cmova edi, eax
cmp byte [0xa8c5fc], 0
cmovne edi, eax
mov eax, dword [ebp - 0x20]
mov esi, dword [ebp + eax - 0x5c]
test esi, esi
je 0x6b6394
xorps xmm0, xmm0
movups xmmword [ebp - 0x90], xmm0
movups xmmword [ebp - 0xa0], xmm0
movups xmmword [ebp - 0xb0], xmm0
movups xmmword [ebp - 0xc0], xmm0
movups xmmword [ebp - 0xd0], xmm0
movups xmmword [ebp - 0xe0], xmm0
movups xmmword [ebp - 0xf0], xmm0
movups xmmword [ebp - 0x100], xmm0
movups xmmword [ebp - 0x110], xmm0
movups xmmword [ebp - 0x120], xmm0
movups xmmword [ebp - 0x130], xmm0
movups xmmword [ebp - 0x140], xmm0
movups xmmword [ebp - 0x150], xmm0
movups xmmword [ebp - 0x160], xmm0
movups xmmword [ebp - 0x170], xmm0
movups xmmword [ebp - 0x180], xmm0
mov eax, dword [ebp - 0x34]
mov byte [ebp + eax - 0x180], 1
mov byte [ebp + ebx - 0x180], 1
lea eax, [edi + esi]
dec eax
movzx ecx, byte [edi + esi - 1]
cmp byte [ebp + ecx - 0x180], 0
jne 0x6b6075
lea ecx, [esi - 1]
nop dword [eax]
test ecx, ecx
je 0x6b6079
nop
movzx edx, byte [eax - 1]
dec eax
dec ecx
cmp byte [ebp + edx - 0x180], 1
jne 0x6b6060
sub eax, edi
jmp 0x6b607e
mov eax, 0xffffffff
mov edx, dword [ebp - 0x24]
mov ecx, edx
xor ecx, 0xa68dc723
xor edx, 0x597238dc
add edx, ecx
add edx, esi
cmp eax, edx
jne 0x6b60da
cmp esi, eax
jb 0x6b6394
setne cl
movzx ebx, cl
add edi, eax
sub esi, ebx
mov ecx, dword [ebp - 0x20]
mov dword [ebp + ecx - 0x5c], esi
sub esi, eax
mov eax, dword [0xa42fd0]
mov ecx, dword [0xa42fc4]
sub ecx, dword [ebp - 0x3c]
add ecx, eax
inc esi
add ebx, edi
mov dword [ebp - 0x10], 0xffffffff
call dword [0xa37360]
push esi
push ebx
push edi
call ecx
add esp, 0xc
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp + esi - 0x5c]
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ebp + ecx - 0x5c]
mov edx, ecx
sub edx, eax
cmp edx, 2
jae 0x6b6135
nop
movzx eax, byte [0xa42de3]
mov ecx, dword [ebp - 0x24]
mov ch, cl
xor ch, 5
cmp al, ch
je 0x6b61d1
mov eax, dword [ebp - 0x24]
mov cl, al
xor cl, 0x5f
mov edx, eax
xor dl, 0x1b
nop word cs:[eax + eax]
mov eax, ecx
lock cmpxchg byte [0xa42de3], dl
je 0x6b6164
cmp al, ch
jne 0x6b6120
jmp 0x6b61d1
lea edx, [eax + 2]
mov dword [ebp + esi - 0x5c], edx
mov edx, dword [ebp - 0x28]
cmp ecx, dword [ebp - 0x2c]
jbe 0x6b6149
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x24]
xor ecx, 0x8d85
mov word [edx + eax], cx
mov byte [edx + eax + 2], 0
nop
mov eax, dword [ebp - 0x20]
jmp 0x6b620a
nop
mov eax, dword [ebp - 0x24]
mov edx, eax
xor edx, 0x6089e5a
mov dword [ebp - 0x34], edx
xor eax, 0xcbada2da
cmp eax, 2
mov edi, 1
cmovge edi, eax
xor ebx, ebx
nop
mov esi, dword [ebp - 0x38]
nop dword [eax]
nop
mov eax, dword [ebp - 0x34]
add eax, ebx
xor edx, edx
div esi
movzx eax, byte [ebx + 0xa42de0]
mov cl, byte [edx + 0x9d6180]
xor cl, byte [ebp - 0x24]
mov edx, ecx
xor dl, 0x38
and dl, al
xor cl, al
xor cl, 0xc7
or cl, dl
mov byte [ebx + 0xa42de0], cl
inc ebx
cmp edi, ebx
jne 0x6b6190
nop
xchg byte [0xa42de3], ch
mov dword [ebp - 0x10], 3
nop
mov dword [ebp - 0x10], 3
sub esp, 0x10
movzx eax, byte [ebp - 0x180]
mov byte [esp + 4], al
mov dword [esp + 0xc], 2
mov dword [esp + 8], 0xa42de0
mov dword [esp], 2
mov ecx, dword [ebp - 0x28]
call fcn.00671270
nop
mov eax, dword [ebp - 0x20]
mov esi, dword [ebp + eax - 0x80]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
cmp dword [ebp + eax - 0x80], ecx
jbe 0x6b6228
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x20]
mov ebx, dword [ebp + edx - 0x5c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax - 0x5c]
mov ecx, eax
sub ecx, ebx
cmp ecx, esi
jae 0x6b626c
nop
mov dword [ebp - 0x10], 3
sub esp, 0x10
movzx eax, byte [ebp - 0x180]
mov byte [esp + 4], al
mov dword [esp + 0xc], esi
mov eax, dword [ebp - 0x34]
mov dword [esp + 8], eax
mov dword [esp], esi
mov ecx, dword [ebp - 0x28]
call fcn.00671270
jmp 0x6b62b3
lea edi, [ebx + esi]
mov dword [ebp - 0x38], edi
mov dword [ebp + edx - 0x5c], edi
mov edi, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x2c]
jbe 0x6b6283
mov eax, dword [ebp - 0x28]
mov edi, dword [eax]
add ebx, edi
mov eax, dword [0xa42fd0]
mov ecx, dword [0xa42fc4]
sub ecx, dword [ebp - 0x3c]
add ecx, eax
mov dword [ebp - 0x10], 0xffffffff
call dword [0xa37360]
push esi
push dword [ebp - 0x34]
push ebx
call ecx
add esp, 0xc
mov eax, dword [ebp - 0x38]
mov byte [edi + eax], 0
nop
mov dword [ebp - 0x10], 3
mov ecx, dword [ebp - 0x64]
lea eax, [ebp - 0x5c]
push eax
call fcn.006b59a0
nop
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax - 0x5c]
cmp eax, dword [ebp - 0x2c]
jbe 0x6b632a
nop
mov ecx, dword [ebp - 0x28]
mov ecx, dword [ecx]
lea esi, [eax + 1]
mov ebx, dword [ebp - 0x24]
mov edx, ebx
xor edx, 0xcbadad26
cmp esi, edx
jbe 0x6b6320
mov esi, ebx
xor esi, 0x34525d25
lea edi, [ecx + esi]
mov edx, dword [0xa8c5f8]
add edx, dword [ecx + esi]
sub edi, edx
mov ecx, ebx
xor ecx, 0xcbada2f9
cmp edi, ecx
jae 0x6b63a6
mov ecx, ebx
xor ecx, 0xcbada2fd
add eax, ecx
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.0091d82d
add esp, 8
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax - 0x80]
cmp ecx, dword [ebp - 0x2c]
jbe 0x6b637e
nop
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
lea edx, [ecx + 1]
mov edi, dword [ebp - 0x24]
mov esi, edi
xor esi, 0xcbadad26
cmp edx, esi
jbe 0x6b6374
mov edx, edi
xor edx, 0x34525d25
lea esi, [eax + edx]
mov eax, dword [eax + edx]
sub esi, eax
mov edx, edi
xor edx, 0xcbada2f9
cmp esi, edx
jae 0x6b63b3
xor edi, 0xcbada2fd
add ecx, edi
mov edx, ecx
push edx
push eax
call fcn.0091d82d
add esp, 8
mov eax, dword [ebp - 0x18]
mov dword fs:[0], eax
add esp, 0x174
pop esi
pop edi
pop ebx
pop ebp
ret 4
nop
mov dword [ebp - 0x10], 3
call fcn.0069f310
call fcn.0069f310
nop
mov dword [ebp - 0x10], 0
call fcn.00900ce1
nop
mov dword [ebp - 0x10], 1
call fcn.00900ce1
push ebp
sub esp, 0x10
add ebp, 0xc
call fcn.009350a0
nop dword [eax]
push ebp
sub esp, 0x10
add ebp, 0xc
call fcn.009350a0
nop dword [eax]
push ebp
sub esp, 0x10
add ebp, 0xc
nop
mov eax, dword [0xa42fd4]
mov esi, dword [0xa42fc0]
sub esi, dword [ebp - 0x3c]
add esi, eax
mov ecx, esi
call dword [0xa37360]
lea ecx, [ebp - 0x5c]
call esi
add esp, 0x10
pop ebp
ret