Function at 0x100bd1c0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
cmp dword [0x1014164c], 0
jne 0x100bd27c
mov dword [ebp - 0x10], 0xa3aeb289
xor eax, eax
mov dword [ebp - 0xc], 0xa3b2e6b4
mov dword [ebp - 8], 0xb4b3b2be
mov word [ebp - 4], 0xb5a3
mov byte [ebp - 2], 0xc6
xor byte [ebp + eax - 0x10], 0xc6
inc eax
cmp eax, 0xf
jb 0x100bd1f4
movaps xmm0, xmmword [0x101074e0]
xor eax, eax
movaps xmm2, xmmword [0x101077e0]
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x18], 0xa099f7b0
movaps xmm0, xmmword [0x10107260]
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0xc6a3b4af
nop dword [eax]
movups xmm0, xmmword [ebp + eax - 0x38]
movaps xmm1, xmm2
xorps xmm1, xmm0
movups xmmword [ebp + eax - 0x38], xmm1
add eax, 0x10
cmp eax, 0x20
jb 0x100bd230
cmp eax, 0x28
jae 0x100bd25b
nop dword [eax]
xor byte [ebp + eax - 0x38], 0xc6
inc eax
cmp eax, 0x28
jb 0x100bd250
mov ecx, dword [0x1013c23c]
lea edx, [ebp - 0x10]
push 0
push 1
push edx
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
push edx
mov eax, dword [eax + 0x150]
call eax
mov dword [0x1014164c], eax
cmp dword [0x10141650], 0
jne 0x100bd326
mov dword [ebp - 0x10], 0xa3aeb289
xor eax, eax
mov dword [ebp - 0xc], 0xa3b2e6b4
mov dword [ebp - 8], 0xb4b3b2be
mov word [ebp - 4], 0xb5a3
mov byte [ebp - 2], 0xc6
nop word [eax + eax]
xor byte [ebp + eax - 0x10], 0xc6
inc eax
cmp eax, 0xf
jb 0x100bd2b0
movaps xmm0, xmmword [0x101074e0]
xor eax, eax
movaps xmm1, xmmword [0x101077e0]
movups xmmword [ebp - 0x40], xmm0
movaps xmm0, xmmword [0x10107260]
movups xmmword [ebp - 0x30], xmm0
movaps xmm0, xmmword [0x10107720]
movups xmmword [ebp - 0x20], xmm0
nop word [eax + eax]
movups xmm0, xmmword [ebp + eax - 0x40]
xorps xmm0, xmm1
movups xmmword [ebp + eax - 0x40], xmm0
add eax, 0x10
cmp eax, 0x30
jb 0x100bd2f0
mov ecx, dword [0x1013c23c]
lea edx, [ebp - 0x10]
push 0
push 1
push edx
mov eax, dword [ecx]
lea edx, [ebp - 0x40]
push edx
mov eax, dword [eax + 0x150]
call eax
mov dword [0x10141650], eax
cmp dword [0x10141654], 0
jne 0x100bd3dc
mov dword [ebp - 0x10], 0xa3aeb289
xor eax, eax
mov dword [ebp - 0xc], 0xa3b2e6b4
mov dword [ebp - 8], 0xb4b3b2be
mov word [ebp - 4], 0xb5a3
mov byte [ebp - 2], 0xc6
xor byte [ebp + eax - 0x10], 0xc6
inc eax
cmp eax, 0xf
jb 0x100bd354
movaps xmm0, xmmword [0x101074e0]
xor eax, eax
movaps xmm2, xmmword [0x101077e0]
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x1c], 0xa399f7b0
movaps xmm0, xmmword [0x10107260]
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x18], 0xb5a2a9ab
mov byte [ebp - 0x14], 0xc6
movups xmm0, xmmword [ebp + eax - 0x3c]
movaps xmm1, xmm2
xorps xmm1, xmm0
movups xmmword [ebp + eax - 0x3c], xmm1
add eax, 0x10
cmp eax, 0x20
jb 0x100bd390
cmp eax, 0x29
jae 0x100bd3bb
nop dword [eax]
xor byte [ebp + eax - 0x3c], 0xc6
inc eax
cmp eax, 0x29
jb 0x100bd3b0
mov ecx, dword [0x1013c23c]
lea edx, [ebp - 0x10]
push 0
push 1
push edx
mov eax, dword [ecx]
lea edx, [ebp - 0x3c]
push edx
mov eax, dword [eax + 0x150]
call eax
mov dword [0x10141654], eax
cmp dword [0x10141658], 0
jne 0x100bd49c
mov dword [ebp - 0x10], 0xa3aeb289
xor eax, eax
mov dword [ebp - 0xc], 0xa3b2e6b4
mov dword [ebp - 8], 0xb4b3b2be
mov word [ebp - 4], 0xb5a3
mov byte [ebp - 2], 0xc6
nop word [eax + eax]
xor byte [ebp + eax - 0x10], 0xc6
inc eax
cmp eax, 0xf
jb 0x100bd410
movaps xmm0, xmmword [0x101074e0]
xor eax, eax
movaps xmm1, xmmword [0x101077e0]
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x14], 0xc6b2b5b3
movaps xmm0, xmmword [0x10107260]
movups xmmword [ebp - 0x34], xmm0
movaps xmm0, xmmword [0x10107210]
movups xmmword [ebp - 0x24], xmm0
nop dword [eax]
movups xmm0, xmmword [ebp + eax - 0x44]
xorps xmm0, xmm1
movups xmmword [ebp + eax - 0x44], xmm0
add eax, 0x10
cmp eax, 0x30
jb 0x100bd450
cmp eax, 0x34
jae 0x100bd47b
nop word [eax + eax]
xor byte [ebp + eax - 0x44], 0xc6
inc eax
cmp eax, 0x34
jb 0x100bd470
mov ecx, dword [0x1013c23c]
lea edx, [ebp - 0x10]
push 0
push 1
push edx
mov eax, dword [ecx]
lea edx, [ebp - 0x44]
push edx
mov eax, dword [eax + 0x150]
call eax
mov dword [0x10141658], eax
cmp byte [0x101218cc], 0
mov ecx, dword [0x1014164c]
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x78]
je 0x100bd541
call eax
test al, al
jne 0x100bd4cd
mov ecx, dword [0x1014164c]
push 1
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x74]
call eax
mov ecx, dword [0x10141650]
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x78]
call eax
test al, al
jne 0x100bd4f1
mov ecx, dword [0x10141650]
push 1
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x74]
call eax
mov ecx, dword [0x10141654]
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x78]
call eax
test al, al
jne 0x100bd515
mov ecx, dword [0x10141654]
push 1
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x74]
call eax
mov ecx, dword [0x10141658]
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x78]
call eax
test al, al
jne 0x100bd5c4
mov ecx, dword [0x10141658]
push 1
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x74]
call eax
mov esp, ebp
pop ebp
ret
call eax
test al, al
je 0x100bd558
mov ecx, dword [0x1014164c]
push 0
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x74]
call eax
mov ecx, dword [0x10141650]
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x78]
call eax
test al, al
je 0x100bd57c
mov ecx, dword [0x10141650]
push 0
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x74]
call eax
mov ecx, dword [0x10141654]
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x78]
call eax
test al, al
je 0x100bd5a0
mov ecx, dword [0x10141654]
push 0
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x74]
call eax
mov ecx, dword [0x10141658]
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x78]
call eax
test al, al
je 0x100bd5c4
mov ecx, dword [0x10141658]
push 0
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x74]
call eax
mov esp, ebp
pop ebp
ret