Function at 0x4534b0
Capabilities:
Encode data using xor

Disassembly:
pop eax
add eax, 0xb
mov dword [ebx], eax
jmp 0x453498
call 0x4534b0
add ah, cl
adc dword [ecx + 0x55a0af61], 0x4dd70090
add byte [edx], dl
pop esp
mov eax, 0xb1236c15
add bl, byte [eax + 0x57]
ja 0x4534bc
pushal
popal
pop esi
sti
add eax, 0xda2b
mov esi, 0x46daa15f
push 0x3660
pop edx
push eax
je 0x4534dc
add ebx, 0x38f224ee
pop ebx
mov edi, dword [eax]
jnp 0x4534e7
mov bl, al
sub edi, 0x7f6b5597
add edi, 0x76a2802
adc cx, 0x1211
sub edi, 0x6e9a70d6
mov ebx, ecx
push edi
mov si, cx
pop dword [eax]
jno 0x45350d
clc
sub eax, 4
mov bx, si
dec edx
jne 0x453532
sti
jmp 0x45354c
clc
jmp 0x4534dd
cmp dword [ebp + 0x122d09c1], 0
je 0x453563
mov dword [ebp + 0x122d2dfa], 1
mov eax, dword [ebp + 0x122d0d09]
mov esi, eax
mov ecx, dword [esi + 0x3c]
add esi, ecx
mov ecx, 0x400000
mov dword [ebp + 0x122d293b], ecx
mov edi, dword [ebp + 0x122d2bca]
test edi, edi
jne 0x45358e
jmp 0x4536cf
mov esi, edi
mov ecx, 0x4a94
lodsb al, byte [esi]
xor al, 0x37
stosb byte es:[edi], al
dec ecx
jne 0x453595
mov ecx, dword [ebp + 0x122d2bca]
mov edi, dword [ebp + 0x122d0d09]
mov esi, dword [ebp + 0x122d293b]
cmp edi, esi
jne 0x4535bf
jmp 0x4536c0
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
sub dword [ebp + 0x122d1035], edx
sub edx, 8
add ecx, 8
add eax, edi
pushal
mov ebx, eax
push ebx
push 0x1000
push ebx
call dword [ebp + 0x122d209a]
pop ebx
test eax, eax
je 0x453600
lea eax, [ebp + 0x122d2f70]
push eax
push 0x40
push 0x1000
push ebx
call dword [ebp + 0x122d2ffd]
popal
mov bx, word [ecx]
test bx, 0xf000
je 0x4536a7
and ebx, 0xfff
add ebx, eax
cmp dword [ebp + 0x122d2d52], 1
jne 0x45363d
cmp byte [ebx - 2], 0xe8
jne 0x45363d
cmp byte [ebx + 3], 0x90
jne 0x45363d
jmp 0x4536a7
cmp byte [ebx - 1], 0xc5
jne 0x45366a
cmp dword [ebp + 0x122d2e5a], 0
je 0x45366a
cmp dword [ebp + 0x122d0339], 0
je 0x45366a
mov byte [ebx - 1], 0xe9
jmp 0x4536a7
cmp dword [ebp + 0x122d09c1], 0
je 0x453697
cmp byte [ebx - 1], 0xc5
jne 0x453697
cmp dword [ebp + 0x122d2e5a], 0
je 0x453697
mov byte [ebx - 1], 0xe9
jmp 0x4536a7
cmp dword [ebx], 0x90909090
je 0x4536a7
sub dword [ebx], esi
add dword [ebx], edi
add ecx, 2
sub edx, 2
jne 0x453601
cmp dword [ebp + 0x122d1035], 0
jne 0x4535bf
mov edi, dword [ebp + 0x122d2bca]
mov ecx, 0x4a94
xor al, al
rep stosb byte es:[edi], al
mov edx, 0x28639002
mov edi, dword [ebp + 0x122d1411]
mov ecx, 0x79
lea esi, [ebp + 0x1253a722]
rep movsb byte es:[edi], byte [esi]
xor edx, 0x28634112
mov edi, dword [ebp + 0x122d1411]
add edi, 0xe
test edx, edx
je 0x453704
add edx, dword [ebp + 0x122d0d09]
mov dword [edi + 1], edx
mov edx, dword [ebp + 0x122d35bc]
mov edi, dword [ebp + 0x122d1411]
add edi, 0x54
mov dword [edi + 1], edx
mov edi, dword [ebp + 0x122d1411]
add edi, 0x49
mov dword [edi + 1], ebp
mov edi, dword [ebp + 0x122d1411]
add edi, 0x25
mov dword [edi + 1], ebp
jmp 0x4537af
mov eax, 0x10000000
push eax
cmp dword [esp], 0
jne 0x453759
add esp, 4
mov eax, 1
ret
ret
add byte [eax], dl
inc dword [ebp + 0x122d2c86]
mov eax, dword [ebp + 0x122d1045]
cmp dword [ebp + 0x122d2c86], eax
pop ebp
ja 0x453744
mov eax, 1
ret 0xc
xchg ebp, eax
mov eax, edx
push ebp
in eax, dx
std
jne 0x453814
pop esi
jp 0x4537ae
jbe 0x45375e
imul esp, esi, 0xfd49bc56
stosb byte es:[edi], al
pushal
cmp edi, ebp
or byte [esi + 0x3b], cl
std
dec ecx
pop ecx
cmp edi, ebp
scasd eax, dword es:[edi]
sar byte [ebx], 1
std
cdq
adc eax, 0xf477fd3b
cmp edi, ebp
pop esp
test dword [ebx], edi
std
cmp eax, 0x28fd3b3d
popal
cmp edi, ebp
push edi
dec esi
cmp edi, ebp
sub al, 0x59
cmp edi, ebp
adc edx, 0x16e2fd3b
sar byte [ebx], cl
std
cmp edi, ebp
loop 0x453808
cmp edi, ebp
ret
xchg ebp, eax
and ah, byte [edx + 0x714a76d6]
ficomp word [ebp + edi*4 + 0x4b]
mov ebp, 0x5a5cf44b
hlt
pop esp
pop edx
jp 0x453815
jne 0x453841
jb 0x453811
jne 0x4537b5
xchg edi, eax
jns 0x45381d
je 0x4537ed
retf
js 0x453821
jae 0x453813
jge 0x45381d
je 0x45381d
jnp 0x453828
je 0x4538a6
jnp 0x45382c
jne 0x4537ee
mov esp, 0x5e75fd7a
jp 0x453831
jne 0x453894
pop esi
jp 0x453835
jbe 0x453862
cmp eax, 0x32ad75c3
ret
retf
shr dword [esi + 0x51ff6c67], 1
shl byte [ecx + 0x70f07068], cl
salc
scasb al, byte es:[edi]
xor eax, 0xdd215ff
push 0xd146f070
scasb al, byte es:[edi]
push ds
dec dword [ebp - 0x2e]
cwde
push 0xd1cdf070
scasb al, byte es:[edi]
jnp 0x45388a
dec dword [ecx - 0x2e]
dec ecx
shr byte [edx], cl
push 0xd37af070
scasb al, byte es:[edi]
sub ch, byte [eax + 0x70]
invalid
xlatb
inc dword [ebp - 0x2e]
jl 0x453903
jo 0x45388d
dec edi
shr dword [esi + 0x41ff4267], cl
sal byte [esi + 0x1cf07068], cl
shr dword [esi + 0x3dfff067], cl
shr bh, cl
push 0xd017f070
scasb al, byte es:[edi]
cmpsb byte [si], byte es:[di]
push dword [ecx]
rol ah, cl
push 0xd0def070
scasb al, byte es:[edi]
insb byte es:[di], dx
invalid
push 0xd31cf070
scasb al, byte es:[edi]
invalid
sub ch, byte [eax + 0x70]
invalid
jl 0x453963
jo 0x4538ed
push edx
shr byte [esi + 0x19ff4267], 1
sal byte [esi - 0x30f8f98], cl
sbb edx, edx
mov dh, 0x68
jo 0x4538f9
cld
shr dword [esi + 0x2dfff067], 1
shr bh, cl
push 0xd11bf070
scasb al, byte es:[edi]
cmpsb byte [si], byte es:[di]
jmp [ecx]
lodsb al, byte [esi]
and esi, dword [edi + 0x1a20ad29]
jp 0x453969
sbb bh, byte [edx - 3]
jne 0x4539e7
daa
jl 0x453909
out 0xd3, al
scasb al, byte es:[edi]
mov al, byte [0x56ff]
sar byte [eax + ebp*2 + 0x7d], cl
enter 0xffffffffffffdd3c, 0xffffffffffffffae
mov al, byte [0x7cd256ff]
push 0xdd3cc87d
scasb al, byte es:[edi]
iretd
test edi, esi
dec eax
fldcw word [ecx + ebp - 0x11]
clc
sar esp, 1
push eax
mov ah, byte [edx]
and ebx, dword [edi]
mov esp, 0xd256f787
out dx, eax
push 0x20052da0
mov dword [0x6d92ec2c], eax
ja 0x453975
jp 0x453a2d
int 0xc1
jns 0x453a3b
mov dh, byte [eax + 0x5f]
push ebp
loopne 0x4539bc
popfd
pop es
js 0x4539ed
jne 0x4539cc
ret 0xcd9b
jns 0x453a58
adc eax, 0xfd7abe4e
das
mov al, byte gs:[0x59a57b89]
cmp eax, 0xdf709491
cmc
pop es
mov edx, 0xd183fe4d
popfd
add byte [ebx - 3], bh
jne 0x453a78
xchg edx, eax
loope 0x453ac8
mov esp, 0x844ea77a
push cs
adc al, ch
dec ecx
rcl byte [esi]
lds ecx, [ecx - 0x30]
push ss
test eax, 0x75fca77f
retf
cld
jne 0x453a2d
invalid
push 0x913d59a5
xchg esp, eax
jo 0x453a5f
cmc
pop es
mov edx, 0x85b5ff4d
push 0xef295a50
das
pop ds
pop edi
std
push ecx
fidiv dword [ecx + 0x3f]
adc esi, ebp
mov ecx, 0x9285e94d
mov ebp, 0x4d7a9774
hlt
popfd
inc ebx
jnp 0x453ac5
jne 0x453ae4
dec esp
std
jne 0x453b47
sbb al, 0x56
popfd
mov dh, 0x7b
std
jne 0x453ac4
out 0x57, eax
mov dh, 0x9f
out 0x57, al
popfd
imul edi, dword [edx - 3], 0xfcf32375
jne 0x453acb
invalid
wait
int 0xfd
dec ebx
wait
ficom word [ecx + 0x438a036b]
retf 0xdfa7