Function at 0x100026b0
Capabilities:
Encode data using xor
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x150
mov eax, dword [0x1008b008]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
push esi
mov esi, dword [ebp + 0xc]
lea eax, [ebp - 0x4c]
push edi
push 0x40
mov ebx, ecx
mov dword [ebp - 0x140], edx
push 0
push eax
mov dword [ebp - 0x144], ebx
mov dword [ebp - 0x148], ebx
mov dword [ebp - 0x14c], 0
call fcn.100344b0
mov eax, dword [esi]
add esp, 0xc
movaps xmm2, xmmword [str.6666666666666666]
movaps xmm3, xmmword [0x1007f120]
mov dword [ebp - 0x4c], eax
mov ax, word [esi + 4]
mov word [ebp - 0x48], ax
xor eax, eax
movups xmm1, xmmword [ebp + eax - 0x4c]
movaps xmm0, xmm1
pxor xmm0, xmm2
movups xmmword [ebp + eax - 0x8c], xmm0
movaps xmm0, xmm3
pxor xmm0, xmm1
movups xmm1, xmmword [ebp + eax - 0x3c]
movups xmmword [ebp + eax - 0xcc], xmm0
movaps xmm0, xmm1
pxor xmm1, xmm3
pxor xmm0, xmm2
movups xmmword [ebp + eax - 0x7c], xmm0
movups xmmword [ebp + eax - 0xbc], xmm1
add eax, 0x20
cmp eax, 0x40
jb 0x10002714
xor ecx, ecx
mov dword [ebp - 0xec], 0x6a09e667
xorps xmm0, xmm0
mov dword [ebp - 0xfc], ecx
movlpd qword [ebp - 0xf4], xmm0
xor esi, esi
mov dword [ebp - 0xe8], 0xbb67ae85
mov dword [ebp - 0xe4], 0x3c6ef372
mov dword [ebp - 0xe0], 0xa54ff53a
mov dword [ebp - 0xdc], 0x510e527f
mov dword [ebp - 0xd8], 0x9b05688c
mov dword [ebp - 0xd4], 0x1f83d9ab
mov dword [ebp - 0xd0], 0x5be0cd19
mov al, byte [ebp + esi - 0x8c]
mov byte [ebp + ecx - 0x13c], al
mov ecx, dword [ebp - 0xfc]
inc ecx
mov dword [ebp - 0xfc], ecx
cmp ecx, 0x40
jne 0x10002807
lea edx, [ebp - 0x13c]
mov ecx, edx
call fcn.100012e0
add dword [ebp - 0xf4], 0x200
adc dword [ebp - 0xf0], 0
xor ecx, ecx
mov dword [ebp - 0xfc], ecx
inc esi
cmp esi, 0x40
jb 0x100027c1
mov edi, dword [ebp + 8]
xor esi, esi
test edi, edi
je 0x1000286d
mov ebx, dword [ebp - 0x140]
nop dword [eax]
mov al, byte [esi + ebx]
mov byte [ebp + ecx - 0x13c], al
mov ecx, dword [ebp - 0xfc]
inc ecx
mov dword [ebp - 0xfc], ecx
cmp ecx, 0x40
jne 0x10002862
lea edx, [ebp - 0x13c]
mov ecx, edx
call fcn.100012e0
add dword [ebp - 0xf4], 0x200
adc dword [ebp - 0xf0], 0
xor ecx, ecx
mov dword [ebp - 0xfc], ecx
inc esi
cmp esi, edi
jb 0x10002820
mov ebx, dword [ebp - 0x144]
lea edx, [ebp - 0x13c]
lea ecx, [ebp - 0x6c]
call fcn.10001510
xor ecx, ecx
mov dword [ebp - 0xec], 0x6a09e667
xorps xmm0, xmm0
mov dword [ebp - 0xfc], ecx
movlpd qword [ebp - 0xf4], xmm0
xor esi, esi
mov dword [ebp - 0xe8], 0xbb67ae85
mov dword [ebp - 0xe4], 0x3c6ef372
mov dword [ebp - 0xe0], 0xa54ff53a
mov dword [ebp - 0xdc], 0x510e527f
mov dword [ebp - 0xd8], 0x9b05688c
mov dword [ebp - 0xd4], 0x1f83d9ab
mov dword [ebp - 0xd0], 0x5be0cd19
mov al, byte [ebp + esi - 0xcc]
mov byte [ebp + ecx - 0x13c], al
mov ecx, dword [ebp - 0xfc]
inc ecx
mov dword [ebp - 0xfc], ecx
cmp ecx, 0x40
jne 0x10002926
lea edx, [ebp - 0x13c]
mov ecx, edx
call fcn.100012e0
add dword [ebp - 0xf4], 0x200
adc dword [ebp - 0xf0], 0
xor ecx, ecx
mov dword [ebp - 0xfc], ecx
inc esi
cmp esi, 0x40
jb 0x100028e0
xor esi, esi
nop
mov al, byte [ebp + esi - 0x6c]
mov byte [ebp + ecx - 0x13c], al
mov ecx, dword [ebp - 0xfc]
inc ecx
mov dword [ebp - 0xfc], ecx
cmp ecx, 0x40
jne 0x10002973
lea edx, [ebp - 0x13c]
mov ecx, edx
call fcn.100012e0
add dword [ebp - 0xf4], 0x200
adc dword [ebp - 0xf0], 0
xor ecx, ecx
mov dword [ebp - 0xfc], ecx
inc esi
cmp esi, 0x20
jb 0x10002930
lea edx, [ebp - 0x13c]
lea ecx, [ebp - 0x2c]
call fcn.10001510
push 0x20
lea eax, [ebp - 0x2c]
mov dword [ebx + 0x14], 0xf
mov dword [ebx + 0x10], 0
mov ecx, ebx
push eax
mov byte [ebx], 0
call fcn.100042b0
mov ecx, dword [ebp - 8]
mov eax, ebx
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1002eb22
mov esp, ebp
pop ebp
ret