Function at 0x5b8840
Capabilities:
Encode data using xor

Disassembly:
je 0x4f4e56
jmp 0x4f048b
imul esi, eax, 0x14
pop ss
scasd eax, dword es:[edi]
adc bl, dl
ja 0x4e50c9
lcall 0x5285, 0x6173d19b
test bh, 0xf0
add edi, eax
push edx
stc
cmp cl, 0xea
mov edi, dword [edi + ecx*4]
sub esp, 0xfffffffc
jb 0x4fd8b0
bt dx, cx
bt bx, 2
test edi, edi
call fcn.004e3a55
out dx, eax
lodsd eax, dword [esi]
leave
mov ebp, edx
cld
salc
mov bl, 0xcc
daa
jae 0x4e5131
adc dword [0x27f8ac4b], edx
invalid
pushfd
call fcn.004f3a0b
stc
xchg ebp, eax
jecxz 0x4efbcf
mov cl, 0xb5
lds ebx, [edx]
jmp 0x4efb7b
int1
cmp eax, dword [esi]
push ss
pop esi
mov eax, 0x79251e02
and al, 0xaa
add ecx, ebx
xor ebp, dword [edi + edx*4 - 1]
adc dh, dh
pop es
mov ch, 0xc6
mov eax, dword [0x9a808a3f]
dec edi
sti
xlatb
xor dword [esi + eax*2], ebp
in al, 0x59
int1
cmp esi, esp
cdq
push es
fisub dword [ebp + 0x78]
mov byte [edx + 0x56872aa4], cl
test al, 0x73
ljmp 0x668
xor ah, byte [edi]
cmp bl, byte [edi - 0x4e6eab41]
xchg ebx, eax
push esp
xchg ecx, eax
mov cl, 0x93
in eax, dx
rcl dword [0x9dc56473]
rcr al, 1
neg byte [ecx + 0x5b]
jge 0x4efbca
test al, 0xb6
xchg edi, eax
pop ecx
sbb bl, byte [eax + edi*8 + 0x48]
sbb byte [esi], dh
inc eax
insd dword es:[edi], dx
dec edi
loop 0x4efc08
or eax, 0xb7594c1e
push 0xcaf44959
aaa
sub dh, byte [esi + 0x33]
dec ebp
dec esi
sahf
add esp, dword [ecx + 0x70]
mov gs, edx
mov ch, 0x72
sub ah, 0xe
inc edx
and byte [eax], cl
jae 0x4efc61
cmpsb byte [esi], byte es:[edi]
pop ecx
mov ch, 0xa8
invalid
popfd
cmp esi, dword fs:[ebx]
inc ecx
push esi
push 0xffffffffffffff9f
invalid
pushfd
sub al, 0x30
clc
push 0xdbb70553
clc
cmp al, 9
pushfd
pushfd
push 0x22906a9f
lea esp, [esp + 0x14]
ja 0x4f3923
pushal
pushfd
pushfd
imul edx, edx, 0xa
cmc
add edx, eax
mov byte [esp + 4], al
pushfd
pushfd
lea esp, [esp + 0x30]
jmp fcn.004e3e28
or byte [ebp + 0x38], 0x49
adc eax, 0x170af7ba
mov ah, ch
dec ebx
cwde
test al, 0x9a
aam 0x53
idiv ebx
push esi
invalid
fdivr dword [0x2d0e009f]
xchg ebp, eax
or byte [eax - 0x41], ah
invalid
push dword [esp]
push dword [esp + 4]
call fcn.005b2d1c
mov ebx, 0x483cfca8
mov word [esi + 0x7e741bc4], gs
in eax, dx
jle 0x4f0662
loopne 0x4f062b
mov dh, 0xde
mov dl, 0xc8
pop ss
test byte [eax - 0x5dbb499b], dl
loop 0x4f061f
xchg edi, eax
mov word [esi + 0x563a20e0], ds
dec eax
in al, 0xa
adc esp, dword [ecx]
fisub word [esi]
not dword [0xa54d7a20]
push 0xd4c9c172
xchg edx, eax
in al, 0xf9
pop edi
cmpsd dword [esi], dword es:[edi]
lea ebx, [ecx - 0x4c0061cb]
int 0xca
sti
cmp eax, 0x2e7ac091
mov esp, 0x9fae6d09
out 0x61, eax
scasd eax, dword es:[edi]
mov byte [esi + edi*4], dl
jno 0x4f0738
arpl word [ebx + 0x78], ax
invalid
invalid
clc
test edi, edi
jmp 0x4efb58
xor di, si
push ebp
mov edi, dword [edx + 0x1c]
mov byte [esp], 0x52
clc
add esp, 4
jg 0x4e5153
clc
add edi, eax
bt ax, 0xb
pushal
mov edi, dword [edi + ecx*4]
pushal
test edi, edi
mov word [esp], si
lea esp, [esp + 0x40]
je 0x5b9345
cmc
jb 0x5b7591
cmc
pushfd
add eax, edi
push ecx
cmp eax, edx
pushfd
lea esp, [esp + 0xc]
jb fcn.005b934d
test dl, 0xf0
pushfd
clc
cmp eax, dword [ebp - 0x10]
jmp 0x4f0673
test sp, di
add eax, edi
test dl, 0xe0
cmp ah, 0xf3
bt ebx, 0x14
cmp ax, bx
cmp eax, edx
pushal
lea esp, [esp + 0x20]
jb fcn.005b934d
call fcn.004e3d54
cmp ecx, dword [edx + 0x14]
mov dword [esp], 0x138c86c1
push dword [esp]
pushal
mov byte [esp + 4], dl
lea esp, [esp + 0x28]
jae 0x5b9345
push 0xb413d065
mov byte [esp], 0x38
lea esp, [esp + 4]
jmp 0x5b0542