Function at 0x59010b
Capabilities:
Encode data using xor

Disassembly:
push 0x9d7d5467
nop
mov bl, byte [ebx]
insb byte es:[edi], dx
movsd dword es:[edi], dword [esi]
int3
adc dword [esi + 0x3283444d], esp
and eax, 0x79d015c6
jb 0x58ffd4
jns 0x58ffd4
jno 0x58ff08
movsb byte es:[edi], byte [esi]
xchg ecx, eax
mov bh, 0xfd
loop 0x58ff56
push esi
mov byte [eax - 0x134cfcd6], al
add al, 0x47
and dword [ebx - 0x78], ebp
and dl, byte [ecx + 0x7d]
xchg dword [ebx + 6], eax
rcr dword [esi + 0x11], 0xaa
ret
not byte [0xcdcca303]
mov al, 0xc4
push 0xc1f31589
pop edx
jae 0x58ffc4
xor byte [eax + 0x4664db31], ah
add dword [eax], ecx
cmpsb byte [esi], byte es:[edi]
jo 0x58ffe9
jnp 0x58ff60
xor al, 0x43
inc edi
nop
mov cs, ebp
cmp dword [esi + eax*8 + 0xef7c46b], ebp
lahf
in al, 0x51
push esi
nop
bound esp, qword [edi + 0x3f]
fld qword [ecx + 0x6c]
cmp al, 0xd6
retf
push ecx
test al, 0xc8
not dword [ecx]
adc al, 0x81
push esp
adc dword [edx], 0x5b
jle 0x58ffbc
aam 0x49
movsb byte es:[edi], byte [esi]
pop ebp
test bl, ah
les esp, [ebp + 0x52]
mov dword [0x95620246], eax
arpl word [ebp + 0x2c378c6d], ax
stc
daa
outsb dx, byte [esi]
sbb dword [eax - 0x49], edx
loope 0x590043
div byte [ebx + 2]
fist word [ebx - 0xa]
cmc
stc
hlt
rol byte [ebx + 0xb], cl
invalid
inc ebx
or eax, esp
out 0xe7, al
enter 0xffffffffffffb0af, 0x6c
enter 0x50fb, 0xffffffffffffffda
test al, 0
jo 0x59008a
mov esp, dword [esi]
jne 0x5900bf
clc
lcall 0xfd6b, 0x54cb6c28
movsb byte es:[edi], byte [esi]
jp 0x5900b4
push esp
push edi
aaa
and dword [esi + 0xa], edi
imul eax, dword [eax], 0xffffff84
xchg byte [edi], ah
stosd dword es:[edi], eax
je 0x58fffa
push edi
xchg dword [esi + ebx*8 - 0x49], eax
mov word [esi], es
out dx, eax
jecxz 0x5900f9
nop
cmp esp, dword ss:[ecx]
jmp 0x5900e1
sti
push esp
invalid
loopne 0x5900c2
jmp 0x4a19db54
jae 0x590042
add dh, dl
jge 0x590062
mov bl, 4
sti
xor al, 8
mov al, byte es:[0x2022dfc0]
int 0x7d
ror dword ds:[esi], cl
fbld tbyte [edx]
and ch, cl
jge 0x590106
ror dword [esi], cl
out 0x6c, eax
into
pop ebp
popfd
imul edi, dword [eax], 0x56aaa4d7
jb 0x59014d
dec edi
scasb al, byte es:[edi]
jnp 0x59009f
aaa
inc ebx
mov eax, dword fs:[0xdc04e792]
or eax, 0xb2927ae
xchg edx, eax
out 4, eax
fmul qword [0xb2927ae]
jo fcn.0059010b
mov byte [0xfa1d188], al
lodsd eax, dword [esi]
inc edx
xchg esi, eax
mov edx, 0x5e60887a
neg dword [ecx]
adc ebx, dword [ebx - 0x38]
and bh, byte [edi - 0x57]
outsd dx, dword [esi]
ljmp 0x4bad
inc esp
xchg ebx, eax
xchg edi, eax
invalid
lodsd eax, dword [esi]
dec ebx
shr byte [ebp + 0x7fdbe04b], cl
adc ecx, dword [ecx + 0x545f97b3]
and dword [esi + 0x15], eax
xor edi, dword [esi]
dec esp
insd dword es:[edi], dx
jg 0x590120
mov dword [ebx + 0x21545f97], esi
inc esi
adc eax, 0x6d4c3e33
push es
mov al, 4
adc al, 0x62
mov eax, 0xb7aa6038
mov al, 0xe3
nop
pushal
stosb byte es:[edi], al
mov bh, 0xb0
jecxz 0x5900b6
sti
or al, 0xb
push edx
mov ecx, 0xd886e3ef
mov word [ebp + esi + 0x3e2dacf8], gs
mov ch, 0xbb
add dword [edx], 0xacef858e
out 0x70, eax
mov al, 0x9a
fsubr st(3), st(0)
mov dword [0xc9a978eb], eax
in eax, dx
ror ebp, 0x85
xchg edx, eax
mov bh, 0xd0
adc dword cs:[edi - 0x1d], edx
pop ds
test dword [edx + 0x112ed0b7], edx
push edi
jecxz 0x590175
fidivr word [ecx + 0x4b54b7ab]
sub dword [ebp - 0x41938a90], 0x2a
shr dword [ebp + 0x69], 0x73
mov eax, 0x360881e4
cmc
sub al, 0
in al, dx
or al, byte [esi + 0x53]
or esp, esi
test cl, 0xc9
pop ss
in al, 0x61
adc dl, byte [edx + 0x16]
pop es
mov dl, al
cmpsd dword [esi], dword es:[edi]
xchg esp, eax
cmp al, 6
mov gs, word [ebx - 0x4d]
mov word [esi + esi*8], es
push eax
or edx, eax
xchg edx, eax
mov ch, 0xbd
daa
push es
outsb dx, byte [esi]
das
in al, 0x73
test byte [ebp + 0x2470ceee], al
jne 0x590203
hlt
xor eax, 0x35792e0b
invalid
inc ebx
cmp ebx, dword [edi]
push edi
popfd
add cl, byte [esi - 0x2e0deb8d]
push ecx
or al, 0xd
mov dl, 5
xchg ebx, eax
fidiv dword [esi]
sub dword [ebx], edi
les eax, [edx + ebx*2]
sub al, 0xd5
clc
sub al, 0x86
mov edi, 0x4dfd96c9
and ecx, esp
invalid
or dword [ecx + 0x3db42b14], ecx
adc al, 0xb4
push ds
sub dword [ebx + 0x548374d1], ebx
mov bl, 0x54
xor dword [ecx + ecx*2 + 0x7056ea40], ebx
xor bh, byte [ebp - 0x3c]
dec edx
nop
xor al, 0xdc
mov al, 0x25
in eax, dx
jno 0x5901ad
adc dl, dh
insd dword es:[edi], dx
jmp 0x590256
hlt
cli
and edi, ecx
dec eax
popal
cmp al, 0x26
and al, 0x25
push esi
xchg edx, eax
mov eax, dword [0xbcae6a15]
in eax, dx
jnp 0x590272
aad 0xf3
and al, 0xed
mov eax, 0xc57a408f
jp 0x590239
sub byte [edi - 0x77], 0x6d
xchg dword [ecx + esi], eax
adc dword [esi - 0x4d], eax
mov esi, 0xf5d3752f
mov dword [0x831e68da], eax
salc
test byte [edi - 0x1c40cbf1], 0x33
pop ds
and eax, dword [ecx + 0x42]
sub byte [eax - 0x3d04fd80], al
pop esi
push 0x65
xor cl, byte [bx + si + 0x5c]
mov ecx, 0xa9ea102b
cmpsd dword [esi], dword es:[edi]
insb byte es:[edi], dx
jo 0x59026b
pop edi
sub dword [ebp - 0x291ee8b5], esp
ficomp dword [esi + 0x331c9bb3]
xchg esi, eax
adc byte [ebx - 0x70], ah
push ecx
xor al, 0x1f
pop ds