Function at 0x1000e7e0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1c
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x20], eax
mov eax, dword [0x1008b080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1c], 0x884a3fa0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x28], eax
sub eax, 0x884a3fa0
je 0x1000e8a6
jmp 0x1000e81c
mov eax, dword [ebp - 0x28]
sub eax, 0x8f2698d6
je 0x1000ea85
jmp 0x1000e82f
mov eax, dword [ebp - 0x28]
sub eax, 0xeaea3d3e
je 0x1000e919
jmp 0x1000e842
mov eax, dword [ebp - 0x28]
sub eax, 0x170838bc
je 0x1000e97f
jmp 0x1000e855
mov eax, dword [ebp - 0x28]
sub eax, 0x40a2127e
je 0x1000ea73
jmp 0x1000e868
mov eax, dword [ebp - 0x28]
sub eax, 0x78344ca6
je 0x1000ea97
jmp 0x1000e87b
mov eax, dword [ebp - 0x28]
sub eax, 0x7a84a83f
je 0x1000e973
jmp 0x1000e88e
mov eax, dword [ebp - 0x28]
sub eax, 0x7d6d7a4c
je 0x1000e9f2
jmp 0x1000e8a1
jmp 0x1000ead9
mov ecx, dword [0x1008c54c]
mov eax, dword [0x1008c548]
mov edx, ecx
add edx, 0xff3f4279
sub edx, 1
sub edx, 0xff3f4279
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x8f2698d6
mov ecx, 0xeaea3d3e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c], eax
jmp 0x1000ead9
mov eax, dword [ebp - 0x24]
push eax
mov ecx, esp
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], eax
mov eax, dword [0x1008c54c]
mov ecx, dword [0x1008c548]
mov edx, eax
sub edx, 0x3109d4f0
sub edx, 1
add edx, 0x3109d4f0
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x8f2698d6
mov ecx, 0x7a84a83f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c], eax
jmp 0x1000ead9
mov dword [ebp - 0x1c], 0x170838bc
jmp 0x1000ead9
mov ecx, dword [0x1008c54c]
mov eax, dword [0x1008c548]
mov edx, ecx
sub edx, 0x7a31825c
sub edx, 1
add edx, 0x7a31825c
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x78344ca6
mov ecx, 0x7d6d7a4c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c], eax
jmp 0x1000ead9
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov dword [eax], ecx
mov edx, dword [ebp - 0x18]
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
mov ecx, dword [ebp - 0x14]
mov edi, dword [edx]
not byte [edi]
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
add byte [edi], 0x63
sub byte [edi], 0x27
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
imul byte [edi]
inc edi
loop 0x1000ea0c
mov eax, dword [0x1008c54c]
mov ecx, dword [0x1008c548]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x78344ca6
mov ecx, 0x40a2127e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c], eax
jmp 0x1000ead9
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1002a3a0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x1c], 0xeaea3d3e
jmp 0x1000ead9
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov dword [eax], ecx
mov edx, dword [ebp - 0x18]
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
mov ecx, dword [ebp - 0x14]
mov edi, dword [edx]
not byte [edi]
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
add byte [edi], 0x63
sub byte [edi], 0x27
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
imul byte [edi]
inc edi
loop 0x1000eab1
mov dword [ebp - 0x1c], 0x7d6d7a4c
jmp 0x1000e806