Function at 0x41a961
Capabilities:
Encode data using xor

Disassembly:
lodsb al, byte [esi]
imul edi, dword [edx - 0x44], 0x72907214
invalid
xor dword [ecx + ebx - 0x4abf0e4a], edi
push edi
push ebp
xor al, 0x31
jns 0x41a86a
call [ecx]
enter 0x313f, 0x31
mov esp, 0x1929bcf9
xlatb
das
stc
mov esp, 0x2fd71929
xor byte [eax], dh
mov dh, 0xf1
inc eax
mov dh, 0x61
push ebp
xor al, 0x31
sbb edx, esi
das
xor byte [eax], dh
mov dh, 0xf1
inc eax
mov dh, 0xaf
push ebp
xor al, 0x31
mov dh, 0xfa
cli
inc eax
mov ecx, 0x31345637
xor byte fs:[esi + ebp + 0x7942a632], dh
mov esp, 0x3a9f1c3e
xor dword [ebp - 0x44], esi
clc
mov esp, 0x2ff21906
xor byte [eax], dh
jns 0x41a8b0
lea edx, [ebp + 0x61]
jns 0x41a8b5
popfd
push ebp
imul edi, dword [ecx - 0x44], 0x797155a5
push ebp
jno 0x41a97b
mov ah, 0xf5
push ecx
nop
hlt
std
std
std
std
std
std
std
std
std
std
jno 0x41a8a1
jns 0x41a8d3
sbb eax, 0xabc7961
jns 0x41a8e2
or bh, byte [ecx - 0x44]
pop ecx
pushal
cmp dh, byte [ecx]
jns 0x41a8eb
mov esi, 0x3a605236
xor dword [ecx + 0x6c], edi
push edx
pushal
cmp dh, byte [ecx]
jns 0x41a9a0
stc
movsd dword es:[edi], dword [esi]
cmp esp, dword [edi]
jb 0x41a987
cmp dword [eax - 0x4a], eax
not dword [ebp + 0x34]
xor dword [ecx - 0x44], edi
inc eax
mov dh, 0xf7
push ebp
xor al, 0x31
jns 0x41a8ff
jl 0x41a9b6
jns 0x41a8fb
cmc
popal
mov word [edx], ds
pop ebp
xor byte [eax], dh
xor ch, bh
std
std
std
std
std
std
std
std
std
std
std
jns 0x41a911
sbb eax, 0x72bc7959
and dword [ebp - 0x42], edi
jb 0x41a984
jge 0x41a923
xor cl, byte ss:[ecx - 0x4b86cecf]
and dword [ecx - 0x44], edi
jns 0x41a92c
cmp dword [ecx], 0xa6016c7a
jge 0x41a9f1
mov esp, 0xbe795971
jns 0x41a93b
inc esi
or bh, byte [edx + 0x31]
xor dword [ecx + 0x6c], edi
repe cmpsb byte [esi], byte es:[edi]
inc ebx
jns 0x41a945
jp 0x41aa04
jns 0x41a941
cmc
pop ecx
sbb cl, byte [eax]
jp 0x41a9c4
xor dword [ecx - 0x4c], edi
cmc
pop ecx
hlt
jns 0x41a959
inc esi
insb byte es:[edi], dx
mov dword [ecx], esi
xor dword [ecx + 0x6c], edi
jns 0x41aa0e
repe cmpsb byte [esi], byte es:[edi]
cmp bh, byte [ecx - 0x4c]
cmc
pop ecx
sbb bl, byte [esi - 0x77]
xor dword [ecx], esi
jns 0x41a96e
inc esi
out 0x8d, eax
xor dword [ecx], esi
jns 0x41aa23
insb byte es:[edi], dx
repe cmpsb byte [esi], byte es:[edi]
cmp eax, 0x59f5b479
cmc
pop ecx
sbb bl, cl
lea esi, [ecx]
xor dword [ecx - 0x44], edi
xor byte [esi - 0x38], al
mov esp, 0xc84630f3
dec esp
cmp byte [ecx], dh
sbb al, 0xf7
xor dword [edi + esi*8], ebx
std
std
std
std
std
std
std
std
std
std
std
std
std
jns 0x41a999
xor bh, byte [ecx - 0x44]
jno 0x41aa3b
jns 0x41aa14
push esi
stosd dword es:[edi], eax
dec esp
cmp byte [ecx], dh
std
xor ebp, edi
std
std
std
std
std
std
std
std
std
std
std
std
std
std
std
std
std
jns 0x41a9b7
mov edx, 0x7941558d
mov edx, 0x884955a5
jns 0x41a9bc
lea edx, [ebp + 0x41]
jns 0x41a9bc
movsd dword es:[edi], dword [esi]
push ebp
dec ecx
mov byte [ecx - 0x4c], bh
sbb eax, 0xabc7961
jns 0x41a9cb
mov esp, 0x3a5f703e
xor dword [ecx - 0x42], edi
jo 0x41aa71
jo 0x41aa71
cmp dh, byte [ecx]
jns 0x41a9d4
imul bx, word [edi + 0x3a], 0x7931
insb byte es:[edi], dx
jmp dword [ebp + 0x4d72273b]
cmp dword [eax - 0x4a], eax
push esp
xor al, 0x31
jns 0x41a9e8
invalid
xor dword [esp + esi*2 + 0x40f1b6a1], edi
int1
inc eax
mov dh, 0x3a
push ebp
xor al, 0x31
jns 0x41a9fc
cld
sbb dword [esi], eax
adc esi, dword [ecx]
xor dword [esi + 0x66b540f1], esi
int1
inc eax
mov ch, 0x66
push ebp
xor al, 0x31
jge 0x41aa0e
jne 0x41aaa7
jno 0x41aa10
add dword [ecx - 0x44], edi
cld
sbb dword [edi + 0x35], edi
xor dword [ecx], esi
mov esp, 0x40f1b629
mov ecx, 0x31345569
xor byte fs:[ebp + ebp*4 + 0x40327155], dh
mov ch, 0x94
push ebp
xor al, 0x31
jns 0x41aa32
xor dword [ecx - 0x44], edi
lea edx, [ebp + 0x79]
jns 0x41aa37
movsd dword es:[edi], dword [esi]
push ebp
cmp dword [ecx - 0x4c], 0xf49061f5
std
std
std
std
std
std
std
jns 0x41aa47
lea edx, [ebp + 0x41]
jns 0x41aa4c
movsd dword es:[edi], dword [esi]
push ebp
dec ecx
mov byte [ecx - 0x4c], bh
sbb eax, 0x2bbc7961
jns 0x41aa5b
sub edi, dword [ecx - 0x44]
or bh, byte [ecx - 0x44]
fstp qword ds:[esi + 0x3a]
xor dword [ecx - 0x42], edi
jns 0x41aa67
salc
pop esi
cmp dh, byte [ecx]
jns 0x41ab1c
stc
movsd dword es:[edi], dword [esi]
cmp esp, dword [edi]
jb 0x41ab03
cmp dword [eax - 0x4a], eax
jge 0x41ab10
mov dh, 0x7d
push ebp
xor al, 0x31
jns 0x41aa73
xchg ebp, eax
push ebp
jno 0x41aaf4
xor dword [ecx - 0x4c], edi
jns 0x41aa79
pop eax
xor dword [ecx], esp
mov ah, 0xb4
sub eax, 0x32313132
inc eax
rol byte [ebp + 0x79313455], 0xbe
invalid
jns 0x41aa9c
jge 0x41ab35
jno 0x41aafb
mov dl, 0x34
xor dword [ecx], esi
mov ah, 0xf9
xor byte [ecx], ah
inc eax
mov ah, 0x2d
xor dh, byte [ecx]
xor dword [ecx + ebx + 0x72c04032], esi
push ebp
xor al, 0x31
jns 0x41aab8
inc eax
sal byte [edx + 0x55], 0x34
xor dword [ecx - 0x44], edi
mov esp, 0x79715575
jne 0x41ab53
jno 0x41ab79
mov esp, 0x7979558d
jns 0x41ab7e
jns 0x41aac2
mov esp, 0x798155a5
mov edx, 0xf5b47938
movsd dword es:[edi], dword [esi]
push ebp
cmp dword [ecx - 0x46], 0xf5b47938
popal
nop
hlt
std
std
std
std
std
std
std
std
jns 0x41aad7
mov edx, 0x7939558d
mov edx, 0x884155a5
lea edx, [ebp + 0x39]
jns 0x41aadc
movsd dword es:[edi], dword [esi]
push ebp
inc ecx
mov byte [ecx - 0x4c], bh
jns 0x41aadc
sbb eax, 0x2abc7961
jns 0x41aaeb
push eax
pop esi
cmp dh, byte [ecx]
jns 0x41aaf4
mov esi, 0x3a5e4966
xor dword [esp + ecx + 0x79], esp
dec cx
pop esi
cmp dh, byte [ecx]
or al, 0x79
insb byte es:[edi], dx
jmp dword [ebp + 0x4d72273b]
mov dh, 0x38
push ebp
xor al, 0x31
jns 0x41ab04
xor byte [eax - 0x4b], al
push ebp
push ebp
xor al, 0x31
jns 0x41ab13
mov esp, 0x3a9da83e
xor dword [ecx - 0x44], edi
test al, 0x9d
cmp dh, byte [ecx]
jns 0x41ab1a
or byte [ecx], bl
dec esp
xor dword [ecx], esi
xor dword [ecx - 0x44], edi
movsd dword es:[edi], dword [esi]
push ebp
jns 0x41ab26
hlt
popal
nop
hlt
std
std
std
std
std
std
jns 0x41ab3b
lea edx, [ebp + 0x39]
mov byte [ecx - 0x4c], bh
sbb eax, 0x2bbc7991
jns 0x41ab4a
cmp dword [eax - 0x6ee24b87], ecx
jns 0x41ab47
sub edi, dword [ecx - 0x44]
or bh, byte [ecx - 0x44]
out dx, al
pop ebp
cmp dh, byte [ecx]
jns 0x41ab56
mov esp, 0x3a5dee3e
xor dword [ecx - 0x42], edi
out 0x5d, eax
cmp dh, byte [ecx]
jns 0x41ac0b
stc
movsd dword es:[edi], dword [esi]
cmp esp, dword [edi]
daa
jb 0x41abf2
cmp dword [eax - 0x4a], eax
xor al, 0x55
xor al, 0x31
add edi, dword fs:[ecx - 0x42]
jge 0x41ac07
popal
jne 0x41ab73
jae 0x41ac18
sbb dword [eax], eax
retf
jns 0x41ab7c
mov esp, 0x313133d1
jns 0x41ab83
xor dword [ecx - 0x42], edi
test dword [ebp + 0x61], edx
sbb dword [edi + 0x31], ebx
xor dword [ecx], esi
inc eax
inc ecx
jne 0x41ac26
popal
jns 0x41ab90
lea edx, [ebp - 0x5f]
inc eax
inc ecx
jge 0x41ac30
jno 0x41ac1d
inc edx
cmp byte [eax + 0x41], al
jne 0x41ac38
add dword [eax + 0x42], 0x42404180
js 0x41ac3d
jns 0x41aba2
cmc
xchg ecx, eax
nop
hlt
std
std
std
std
std
std
std
std
std
jns 0x41abb7
lea edx, [ebp + 0x39]
jns 0x41abbc
mov edx, 0x884155a5
movsd dword es:[edi], dword [esi]
push ebp
inc ecx
mov byte [ecx - 0x4c], bh
jns 0x41abbc
mov ah, 0x1d
push ecx
jns 0x41abc8
sbb eax, 0x23bc7951
jns 0x41abcb
mov esp, 0xabc7923
and dword [edx + esi*2 - 0x3fbfcd93], esi
and edi, dword [ecx - 0x44]
or ah, byte [ecx]
mov ah, 0x72
insd dword es:[edi], dx
xor al, byte [eax - 0x40]
inc eax
shl ch, 0x54
in eax, 0x54
push esp
xor al, 0x31
inc eax
inc ecx
je 0x41ac90
mov ah, 0xf9
xor byte [eax + 0x42], al
aaa
inc eax
inc ecx
jl 0x41abaa
inc eax
inc edx
jg 0x41ac6e
inc eax
inc ecx
je 0x41abc2
xchg ecx, eax
inc eax
inc edx
ja 0x41ac86
and dword [eax - 0xe], eax
je 0x41aca7
insd dword es:[edi], dx
mov ah, 0x19
xor al, byte [eax - 0x40]
rcl byte [esp + esi + 0x31], cl
inc eax
rcl dl, 0x54
xor al, 0x31
jns 0x41ac01
lea edx, [ebp + 0x61]
jns 0x41ac06
movsd dword es:[edi], dword [esi]
push ebp
imul edi, dword [ecx - 0x4c], 0xf49051f5
std
std
std
std
std
std
std
std
jns 0x41ac19
push ecx
nop
hlt
mov esp, 0x728887f5
xchg dword [ecx - 0x4e], edi
cmc
xchg dword [eax - 0x4d86788e], ecx
mov dl, 0x1d
sal dword [ecx], 1
xor dword [ecx], esi
sbb eax, 0x313131d1
jns 0x41ac63
jno 0x41ac6e
das
xor byte [eax], dh
xor byte [ecx - 0x46], bh
mov dword [ecx + 0x7a], eax
mov esp, 0x23bc7d09
jns 0x41ac39
jb 0x41ac50
jge 0x41ac15
jns 0x41acbc
jns 0x41ac39
sar dword [edx + 0x34], 1
sar dword [edx + 0x34], 1
cli
jns 0x41ac48
xor bh, byte [ecx - 0x44]
xor dword [eax], esi
inc esi
dec byte [ecx + 0x38]
xor dword [eax + esi - 0x4a], esp
int1
inc eax
mov dh, 0x8a
xor byte [esi - 2], al
dec ecx
cmp byte [ecx], dh
xor byte fs:[esi - 0x7549bf0f], dh
push esp
xor al, 0x31
jns 0x41ac5c
in eax, dx
push ebp
mov cl, 0x31
xor dword [ecx], esi
jns 0x41ac64
xor dword [ecx - 0x46], edi
in eax, dx
push ebp
or dword [ecx], esi
xor dword [ecx], esi
jns 0x41ac6e
xor dword [ecx - 0x44], edi
dec ebp
pushfd
cmp dh, byte [ecx]
jns 0x41ac6d
mov eax, dword [0x55bdbe7d]
mov eax, dword [0x55bdbe7d]
mov esi, 0x310955bd
or dword [ecx], esi
xor dword [ecx], esi
jge 0x41ac83
mov ch, 0x55
mov cl, 0x31
xor dword [ecx], esi
jns 0x41ac89
xor dword [ecx - 0x44], edi
add al, 0x19
mov ecx, 0x79313131
mov esi, 0x3a5caa66
xor dword [ebp - 0x44], edi
inc esi
mov dword [0x7d313a5c], eax
insb byte es:[edi], dx
cmp dh, byte [ecx]
jge 0x41ad4f
pop es
movsd dword es:[edi], dword [esi]
cmp al, 0x72
daa
jae 0x41ad37
xor eax, 0x5475b640
xor al, 0x31
jp 0x41acaf
pop es
jns 0x41acb2
mov esp, 0x31b155cd
int 0x55
mov cl, 0x31
xor dword [ecx], esi
jns 0x41acba
xor dword [ecx - 0x44], edi
cld
sbb dword [ebp + ebx*8 - 0xe49cecf], esi
inc eax
mov ecx, 0x31345535
jns 0x41acca
int1
wait
cmp dh, byte [ecx]
push 0xffffffffffffffe9
sal dword [esi], 1
xor dword [ecx], esi
inc eax
mov dh, 0x5a
push ebp
xor al, 0x31
jns 0x41acdd
mov ebp, 0x31310955
xor dword [ecx - 0x4a], edi
cli
movsd dword es:[edi], dword [esi]
aaa
sbb dword [ebx - 0x32], ecx
xor dword [ecx], esi
sar dword [ecx - 0x4a], 0xc
movsd dword es:[edi], dword [esi]
cmp dword [ecx - 0x44], edi
jns 0x41acf5
cld
sbb dword [0x793131ce], edi
mov esp, 0x31f955cd
xor dword [ecx], esi
jns 0x41acfb
cmc
sal dword [ecx], 1
xor dword [ecx], esi
jb 0x41acdf
invalid
nop
invalid