Function at 0x10b61358
Capabilities:
Encode data using xor

Disassembly:
jmp 0x10b61362
pushal
call 0x10b61368
pop ebp
sub ebp, 0x10
sub ebp, 0xb61358
mov al, byte [esp + 0x28]
cmp al, 1
je 0x10b6138c
popal
xor eax, eax
inc eax
ret 0xc
jmp 0x10b61395
mov eax, 0xb61358
add eax, ebp
add eax, 0x63
mov ecx, 0x5d0
mov edx, 0x760c5d89
xor byte [eax], dl
inc eax
dec ecx
jne 0x10b613ac
jmp 0x10b613bf
add al, byte [edx + eax]
mov ch, 0x89
mov dword [ecx - 0x768eb7f8], ecx
mov dword [ecx - 0x70cebb76], ecx
mov dword [ecx - 0x765ecc77], ecx
mov dword [ecx + 0x418a6b7e], ecx
add cl, byte [eax]
test dword [ecx + 0x4c8a8989], ecx
fstpnce st(1), st(0)
loope 0x10b6143e
adc dword [ecx - 0xc0f1e77], ebp
sbb al, 0x89
mov byte [ebp - 0x20541e53], ah
rcr dword [ecx - 0x74], 0x89
mov dword [ecx - 0x767642a0], ecx
mov dword [ebp*8 - 0x5aff8a53], eax
lodsd eax, dword [esi]
add ah, byte [ebp + 2]
or al, 0x81
mov dword [ecx - 0x7ae3fd77], ecx
mov dword [ecx - 0x66fbfd77], ecx
mov dword [ecx - 0x749fb777], ecx
mov eax, 0x8d4b0a8b
rol byte [esi + 0x76767d0c], 0x76
add ah, byte [ebp - 0x5212fb53]
lea ecx, [ebx - 0x7b]
mov dword [edx], eax
add eax, 0x89898dad
mov ecx, esp
push ebp
loope 0x10b61495
adc dword [ecx - 0xc0f1e77], ebp
sbb al, 0x89
mov byte [ebp - 0x5212fb53], ah
jne 0x10b61450
test dword [ebp - 0x7676739f], ebp
mov dword [eax - 0x38], esp
mov ecx, dword [ecx - 0x5212fb77]
jne 0x10b61461
mov dword [ecx - 0x74379f77], ecx
mov dword [ecx + 0x75aded04], ecx
add byte [ebp - 0x521afb53], ah
movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
add al, 0xe5
lodsd eax, dword [esi]
mov dword [esi - 4], esi
test dword [esi - 4], esi
and dword [ecx - 0x1b], 0x2898989
xor al, 0x81
mov dword [ecx - 0x45bf4577], ecx
pop ebx
or ah, byte [ecx - 0x74]
rol dword [esi - 0x767638f3], 0x89
xchg byte [ecx], al
ror dword [ecx + 0x2ef8989], 0x95
mov al, 9
jb 0x10b614f4
xchg byte [0x89898993], cl
or dword [edx + 0x60], esi
xchg ebx, eax
mov dword [ecx + 0x60720989], ecx
xchg byte [0x89898998], cl
out dx, eax
mov edi, ebp
or byte [edx + 0x76], dh
lodsb al, byte [esi]
xchg byte [0x8989899c], cl
enter 0x4560, 0x76
jbe 0x10b61529
inc ebp
jbe 0x10b61528
jbe 0x10b61454
mov al, byte [0xa88b0c5]
dec eax
mov word [edx], cs
popal
lea esp, [eax + 0x34]
jbe 0x10b61537
lds esi, [eax - 0x73b7f578]
or ah, byte [ecx - 0x73]
pushal
xor al, 0x76
jbe 0x10b61538
jbe 0x10b61463
mov al, byte [0xa8bb0dd]
dec eax
invalid
fnsave dword [eax - 0x70b7f575]
or ah, byte [ebx - 0x73]
or ah, byte [ecx - 0x74]
pushal
and dh, byte [esi + 0x76]
jbe 0x10b614d7
movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
add al, 0xed
lodsd eax, dword [esi]
lea ecx, [ebx - 0x7b]
mov esp, ebx
add ah, byte [ebp - 0x21]
invalid
mov dword [ecx], eax
mov cs, word [eax]
dec esi
mov byte [ecx - 0x74cd7677], cl
mov dword [ecx - 0x79a47477], ecx
or al, 0x8c
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
xchg byte [edx], cl
push ecx
jbe 0x10b6158a
jbe 0x10b614a1
pop ebx
xchg byte [esp + ecx*4], cl
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
xchg byte [edx], cl
jecxz 0x10b614af
mov dword [ecx + 0x5b8b49ba], ecx
xchg byte [esp + ecx*4], cl
mov edx, 0x865b8b49
dec ecx
mov ebx, dword [ebx - 0x7a]
or al, 0x8c
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
xchg byte [edx], cl
mov dword [0x8b898988], eax
or ah, byte [ebx - 0x74767678]
pop ebx
xchg byte [esp + ecx*4], cl
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
lcall 0x8c0c, 0x865b8b49
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
lcall 0x8c0c, 0x865b8b49
pop ebx
xchg byte [esp + ecx*4], cl
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
lcall 0x8c0c, 0x865b8b49
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
lcall 0x8989, 0x8f0d8649
mov dword [edx], eax
push esi
mov byte [0x18a0351], al
mov cs, esi
xor cl, byte [ebx + 0x60898989]
stc
jbe 0x10b61607
mov dword [ecx + 0x76f96089], ecx
jbe 0x10b61608
jbe 0x10b615c4
xor dword [eax - 0x74767677], ecx
pop ebx
mov byte [ecx + 0x5b8b8989], cl
xchg byte [esp + ecx*4], cl
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
lcall 0x8c0c, 0x865b8b49
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
xchg byte [ebx], cl
push edi
jbe 0x10b6162e
jbe 0x10b6155c
dec edx
xor cl, byte [eax - 0x79767677]
or al, 0xbd
mov dword [ecx - 0x7677cf77], ecx
mov dword [ecx + 0xc865b8b], ecx
mov word [ecx - 0x60fc7677], cs
iretd
mov ebp, 0x30898989
mov byte [ecx + 0x5b8b8989], cl
mov dword [ecx - 0x767677d0], ecx
mov dword [ebx - 0x73f379a5], ecx
xchg byte [esp + ecx*4], cl
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
lcall 0x8c0c, 0x865b8b40
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
xchg byte [ebx], cl
push edi
jbe 0x10b61662
jbe 0x10b615cd
add bh, byte [esi - 0x5e]
jl 0x10b6166d
sub eax, 0x768160d7
jbe 0x10b61670
ror dword [eax + 0x69], 0x81
add ecx, dword [edi + 0x306102cf]
mov byte [ecx + 0x5b8b8989], cl
xchg byte [esp + ecx*4], cl
mov dword [ebx - 0x73f379a5], ecx
mov ebx, dword [ebx - 0x7a]
or al, 0x8c
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
lcall 0x8c0c, 0x865b8b40
mov dword [ecx - 0x3060fc77], ecx
wait
pop ebx
xchg byte [ebx], cl
push edi
jbe 0x10b6169f
jbe 0x10b61633
jno 0x10b615b6
hlt
mov dword [ecx + 0x76765008], ecx
jbe 0x10b616ac
jbe 0x10b616ab
jbe 0x10b6163f
or byte [ecx - 0x77], dh
jno 0x10b615c2
mov word [ecx + 0x76500889], cs
jbe 0x10b616b7
jbe 0x10b6164b
jno 0x10b6164e
mov dword [ecx - 0x76a7f777], ecx
mov dword [ecx + 0x9710889], ecx
or byte [ecx + 9], dh
mov dword [ecx - 0x76a7f777], ecx
mov dword [ecx + 0x7e02df89], ecx
mov byte [0xd72d7a79], al
pushal
adc dh, byte [edi + 0x76]
ja 0x10b616dc
jbe 0x10b6166b
invalid
inc eax
dec ecx
popal
mov byte [esi - 0x76766cf3], al
mov dword [eax], ecx
pop eax
mov ecx, dword [ecx + 0x61028989]
fild word [edx]
jle 0x10b61623
or eax, 0x89898993
or byte [eax - 0x75], bl
mov dword [ecx - 0x209efd77], ecx
add bh, byte [esi - 0x5e]
jns 0x10b616fd
sub eax, 0x898832d7
mov dword [ecx + 0x7677fa60], ecx
jbe 0x10b61664
mov byte [0x4e0281f4], al
salc
xlatb
add ch, byte [esp + edx*8 + 0x4b]
or dword [ecx + 0x4adb502], 0x28daded
lodsd eax, dword [esi]
add al, 0xed
lodsd eax, dword [esi]
lea eax, [edx]
mov ebp, 0xaded04ad
lea esp, [eax - 0x73]
mov dword [ecx - 0x47945e77], ecx
ret
pushal
lea ecx, [ecx + 0x6ba18989]
mov eax, 0x9ad131c3
aas
mov dword [edx + 0xb49084c], ecx
mov cl, byte [ecx - 0x74c7cf77]
mov dword [ecx - 0x1d7470cd], ecx
leave
mov ecx, 0x86c0c999
or al, 0x7f
jbe 0x10b6174a
jbe 0x10b61736
lea ecx, [ecx + 0x1428989]
push ecx
or ecx, dword [eax]
jno 0x10b616e9
js 0x10b616e7
clc
mov bl, 8
js 0x10b616ec
add al, 0x33
xor edi, dword [eax - 0x707070d1]
mov eax, 0x8f8f8f2f
invalid
invalid
push edi
add al, 0xd8
invalid
or byte [esi], 0x77
mov word [edi + 0xa808f8f], cs
or byte [edi + 0x4e98f8f], 0x88
push cs
outsd dx, dword [esi]
jo 0x10b616ca
invalid