Function at 0x100098b0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x20
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x24], eax
mov eax, dword [0x10086080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x1008756c]
mov eax, dword [0x10087568]
mov edx, ecx
add edx, 0x2e1ff13c
sub edx, 1
sub edx, 0x2e1ff13c
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x1a], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x19], al
mov dword [ebp - 0x20], 0x240743ca
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2c], eax
sub eax, 0x839c743a
je 0x10009b72
jmp 0x10009925
mov eax, dword [ebp - 0x2c]
sub eax, 0x9fcffb0c
je 0x10009b7e
jmp 0x10009938
mov eax, dword [ebp - 0x2c]
sub eax, 0xe863f143
je 0x10009ad5
jmp 0x1000994b
mov eax, dword [ebp - 0x2c]
sub eax, 0xed638714
je 0x10009a62
jmp 0x1000995e
mov eax, dword [ebp - 0x2c]
sub eax, 0x6188b28
je 0x10009b60
jmp 0x10009971
mov eax, dword [ebp - 0x2c]
sub eax, 0x14dd1595
je 0x100099e8
jmp 0x10009984
mov eax, dword [ebp - 0x2c]
sub eax, 0x240743ca
je 0x100099c2
jmp 0x10009997
mov eax, dword [ebp - 0x2c]
sub eax, 0x5735e547
je 0x10009a48
jmp 0x100099aa
mov eax, dword [ebp - 0x2c]
sub eax, 0x64927dc5
je 0x10009a3c
jmp 0x100099bd
jmp 0x10009bc2
mov al, byte [ebp - 0x1a]
mov cl, byte [ebp - 0x19]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x839c743a
mov ecx, 0x14dd1595
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x10009bc2
push eax
mov eax, esp
mov dword [ebp - 0x18], eax
mov eax, dword [0x1008756c]
mov ecx, dword [0x10087568]
mov edx, eax
sub edx, 0xc35516a8
sub edx, 1
add edx, 0xc35516a8
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, 0x839c743a
mov ecx, 0x64927dc5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x10009bc2
mov dword [ebp - 0x20], 0x5735e547
jmp 0x10009bc2
mov ecx, dword [ebp - 0x28]
push eax
mov eax, esp
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
mov dword [eax], ecx
mov dword [ebp - 0x20], 0xed638714
jmp 0x10009bc2
mov ecx, dword [0x1008756c]
mov eax, dword [0x10087568]
mov edx, ecx
add edx, 0xeb59bc71
sub edx, 1
sub edx, 0xeb59bc71
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, 0x9fcffb0c
mov ecx, 0xe863f143
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x10009bc2
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov dword [eax], ecx
mov edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x14]
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
mov ecx, dword [edx]
mov edi, dword [esi]
not byte [edi]
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
add byte [edi], 0x87
sub byte [edi], 0x35
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
imul byte [edi]
inc edi
loop 0x10009af1
mov eax, dword [0x1008756c]
mov ecx, dword [0x10087568]
mov edx, eax
add edx, 0xe4c1197f
sub edx, 1
sub edx, 0xe4c1197f
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, 0x9fcffb0c
mov ecx, 0x6188b28
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x10009bc2
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10025cd0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x20], 0x14dd1595
jmp 0x10009bc2
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov dword [eax], ecx
mov edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x14]
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
mov ecx, dword [edx]
mov edi, dword [esi]
not byte [edi]
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
add byte [edi], 0x87
sub byte [edi], 0x35
pop eax
push eax
mov eax, eax
xor eax, 0x85
nop
imul byte [edi]
inc edi
loop 0x10009b9a
mov dword [ebp - 0x20], 0xe863f143
jmp 0x1000990f