Function at 0x58a301
Capabilities:
Encode data using xor

Disassembly:
add byte [esi], dl
xor al, 0
pop edi
add byte [0x32005f00], dh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add al, 0x59
mov bl, 0
stc
jg 0x58a327
add byte [0x53000000], ch
add byte [ecx], bh
jae 0x58a332
je 0x58a334
add byte gs:[ebp], ch
add byte cs:[edx], dl
jne 0x58a33e
outsb dx, byte [esi]
add byte [eax + eax + 0x69], dh
add byte [ebp], ch
add byte gs:[esi], ch
add byte [esi], dl
add byte gs:[edx], dh
jb 0x58a350
jae 0x58a352
imul eax, dword [eax], 0x6e006f
imul eax, dword [eax], 0x67006e
add byte cs:[edx], al
imul eax, dword [eax], 0x61006e
jb 0x58a36a
jns 0x58a36c
inc ebx
add byte [edi], ch
insd dword es:[edi], dx
add byte [eax], dh
popal
add byte [eax + eax + 0x69], dh
add byte [edx], ah
imul eax, dword [eax], 0x69006c
je 0x58a384
jns 0x58a386
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
nop
jbe 0x58a34e
add cl, bh
jg 0x58a39f
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + 0x7d11], dh
add byte [eax], al
add al, bh
in eax, dx
mov ebx, 0x7ff900
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add al, 0x59
mov bl, 0
stc
jg 0x58a3d7
add byte [0x62000000], al
add byte [ecx], bh
je 0x58a3e2
add byte gs:[ebx], dh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + 0xb359c0], al
stc
jg 0x58a3ff
add byte [0x63000000], al
add byte [eax], ch
popal
add byte [edx], dh
jae 0x58a40e
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + 0xb359c0], al
stc
jg 0x58a427
add byte [ecx], cl
add byte [eax], al
add byte [ebx], ah
push 0x72006100
add byte [ebx], al
outsd dx, dword [esi]
add byte [ebp], dh
outsb dx, byte [esi]
add byte [eax + eax], dh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add al, 0x59
mov bl, 0
stc
jg 0x58a457
add byte [ecx], cl
add byte [eax], al
add byte [edx], ah
jns 0x58a460
je 0x58a462
add byte gs:[ebx], al
outsd dx, dword [esi]
add byte [ebp], dh
outsb dx, byte [esi]
add byte [eax + eax], dh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + 0x29e58], bl
add byte [eax], al
add byte [eax + 0xba6f], dh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ebx], bl
inc esp
mov dword [0xb37690], ecx
stc
jg 0x58a49f
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + 0x26], cl
jge 0x58a4b4
add byte [eax], al
add byte [eax], al
cwde
mov dh, 0xb3
add cl, bh
jg 0x58a4bf
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add al, 0x59
mov bl, 0
stc
jg 0x58a4d7
add byte [0x68000000], bl
add byte [eax + eax + 0x74], dh
add byte [eax], dh
cmp al, byte [eax]
das
add byte [edi], ch
add byte [edi], dh
ja 0x58a4ee
ja 0x58a4f0
add byte cs:[edi], dh
xor eax, dword [eax]
add byte cs:[edi], ch
jb 0x58a4fc
add byte [bx], ch
add byte [edx], dh
add byte [eax], dh
add byte [eax], dh
add byte [eax], dh
add byte [edi], ch
add byte [eax], bh
insd dword es:[edi], dx
add byte [eax + eax + 0x6e], ch
add byte [ebx], dh
das
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add al, 0x59
mov bl, 0
stc
jg 0x58a52f
add byte [eax + eax], ah
add byte [eax], al