Function at 0x6067b0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push esi
mov esi, dword [ebp + 8]
test byte [esi + 0x24], 1
je 0x606b76
cmp byte [ebp + 0x10], 1
push edi
jne 0x6067ef
mov eax, dword [esi + 0x14]
add eax, 0xfffffffe
cmp eax, 5
ja 0x606b75
jmp dword [eax*4 + 0x407a9c]
mov edi, dword [ebp + 0xc]
test edi, edi
jle 0x606b75
cmp edi, 0xd
jge 0x606b75
mov eax, dword [edi*4 + 0x768270]
dec edi
push ebx
push 0x1b7
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1c], 0
call 0x6c4794
mov bl, byte [ebp + 0x14]
cmp eax, 1
je 0x60683b
cmp bl, 1
jne 0x606af1
mov eax, dword [edi*4 + 0x7682a4]
cmp eax, 8
jg 0x60684c
cmp dword [esi + 0x14], eax
jg 0x606855
cmp bl, 1
jne 0x606af1
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x1c], eax
mov eax, dword [0x7682f0]
mov dword [0x779070], 0
mov dword [0x779074], 0xffffff
mov ecx, 0xff
mov edi, 0x779078
rep stosd dword es:[edi], eax
lea eax, [ebp - 4]
push eax
push esi
push 0x6c1be0
push 0x316
push 0x6c1b38
mov ecx, 0x77c500
mov dword [ebp - 0x20], 0x779070
call fcn.006040e0
cmp bl, 1
jne 0x60693a
cmp dword [ebp - 4], 0x7d0
jbe 0x6068e8
push 0
push 0
push 0
push 0
push 0
push 0x10006
push 8
push 0xa4
push esi
push esi
push 0x6c1be0
push 0x323
push 0x6c1b38
mov ecx, 0x77c340
call fcn.00603a10
cmp dword [esi + 0x14], 0x18
je 0x60691c
push 0
push 0
push 0
push 0
push 0
push 4
push 0x18
push 0xa4
push esi
push esi
push 0x6c1be0
push 0x326
push 0x6c1b38
mov ecx, 0x77c340
call fcn.00603a10
lea eax, [ebp - 4]
push eax
push esi
push 0x6c1be0
push 0x327
push 0x6c1b38
mov ecx, 0x77c500
call fcn.006040e0
push 0x1f40
call 0x6c4e41
mov edi, eax
push 0x1f40
mov dword [ebp - 0xc], edi
call 0x6c4e41
add esp, 8
cmp dword [ebp - 4], 0x7d0
mov ebx, eax
mov dword [edi + eax*2 - 0x40], eax
out 0x1b, eax
js 0x6069cf
ja 0x60699e
daa
inc eax
push eax
daa
insd dword es:[edi], dx
xchg cx, ax
idiv dword [edx]
and eax, 0x7646e7b4
aam 0x87
invalid
in al, dx
xchg ebx, eax
adc ch, ah
lds eax, [edi]
mov al, byte [0xcc073426]
aad 0x84
push ss
fnsave dword [edx]
je 0x606a2f
sahf
int 0x8e
jns 0x606a08
mov bh, 0x25
adc dword [edx], ebx
movsb byte es:[edi], byte [esi]
je 0x606a33
invalid
ret
and al, 0x85
mov al, byte [0xf30e4de6]
int3
push edx
test eax, 0xf99f1653
out 0x40, eax
mov dh, 6
dec ebx
xchg edx, eax
push esi
pushal
xor esi, dword [eax - 0x5d]
and ch, 0x52
xchg dword [ecx], ebx
jg 0x6069df
mov eax, dword [0xf80d548b]
pop es
adc ebp, eax
out dx, al
sub dl, byte [ebx + 0x10]
adc eax, 0x25d92b7e
push esp
push es
push esp
daa
iretd
nop
add dword [ebx - 0x392eac5a], ebx
push ebx
rol esi, 1
daa
sbb eax, 0x35168d93
in eax, 0xf6
jecxz 0x6069c1
push ebx
test dword [esi], edx
jne 0x606aac
loopne 0x6069df
mov edi, 0x3a356516
out 0x45, eax
xor dword [ecx], edi
adc dword [edi], eax
idiv esp
add eax, dword [ecx + ecx*8 - 0x73]
xchg ebx, eax
enter 0xffffffffffffb083, 0x76
les ecx, [ebx - 0x44]
sar byte [ebx + eax*2 - 0x659ee0c1], cl
mov edi, 0x54ded0dc
movsd dword es:[edi], dword [esi]
inc esp
xor dword [ebp + 0x45], 0xbda4fb47
movups xmm2, xmmword ss:[ebx - 0x13599c2c]
adc byte [ebx - 0x21708d4], 0x28
cmpsb byte [esi], byte es:[edi]
sub dword [eax], ebp
salc
cli
dec ebx
adc cl, byte [esi + 0x215b3ca2]
or byte [esi - 0x58], 0xf3
out 0xfa, al
fyl2xp1
int3
retf 0x2e6d
out 0x85, eax
aad 0x34
or dword [eax - 0x79788a09], edi
cmpsd dword [esi], dword es:[edi]
hlt
insb byte es:[edi], dx
test edi, esi
int1
cwde
adc al, 0x26
mov edi, 0xa914fc28
or dword [eax + 0x7de802f2], 0xf6d63f58
hlt