Function at 0x91b428
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x91b42e
pop ebp
sub ebp, 6
sub ebp, 0x51b428
jmp 0x91b48c
jmp 0x91b495
mov eax, 0x51b428
add eax, ebp
add eax, 0x93
mov ecx, 0x61e
mov edx, 0xd1703a53
xor byte [eax], dl
inc eax
dec ecx
jne 0x91b4ac
jmp 0x91b4bf
cmp dword [ebx], edx
cmp edx, dword [ebx + 0x43]
push ebx
push ebx
cmp edx, dword [ebx - 0x61]
jg 0x91b51e
shl byte [ebx - 0x1e81fbee], cl
shl byte [ebx - 0x1e81fbee], cl
pushal
xchg ebx, eax
add ebp, dword [esi + eax*8 + 0x5314b26f]
add ebx, eax
sahf
fcomp st(2)
outsd dx, dword [esi]
push ebx
push ebx
push ebx
rcl byte [edx + 0x535353ab], cl
push eax
sahf
jmp 0x91b548
push ebx
mov edx, 0x53535379
push es
fidivr word [edi]
ja 0x91b57c
fcom st(6)
pop ebx
push ebx
push ebx
push ebx
fadd st(6)
pop edi
push ebx
push ebx
push ebx
fcomp st(6)
inc ebx
push ebx
push ebx
push ebx
xchg edx, eax
mov edx, 0xd0516251
xchg ecx, eax
push edi
sbb bl, byte [esi + edx*8 - 0x59]
lodsb al, byte [esi]
lodsb al, byte [esi]
lodsb al, byte [esi]
push cs
xchg ecx, eax
pop edi
push ebx
fcomp st(7)
ja 0x91b5a9
push ebx
push ebx
push ebx
cmp edi, dword [esi]
pop edx
push ebx
cmp ebp, ebx
sub eax, 0x7f52531b
ja 0x91b565
mov ebx, 0x53535356
push ebx
push ebx
push ebx
mov edx, 0x53535166
push es
fidivr word [edi]
ja 0x91b5c5
lodsb al, byte [esi]
pop edi
lodsb al, byte [esi]
pop ebx
mov ebx, 0x53535335
push ebx
fsubr st(6)
pop ebx
push ebx
push ebx
push ebx
pushal
lcall 0x1b56, 0xbbd08160
pop esp
xlatb
sbb eax, 0x5c535353
fistp dword [ebx]
push ebx
push ebx
push ebx
xor eax, 0xd36a4fd8
test al, 0xbb
pop esp
xlatb
dec ecx
push ebx
push ebx
push ebx
shr dword [eax + 0x42d75cba], cl
inc edx
push ebx
push ebx
push ebx
xor eax, 0x76aca8d2
pop esp
xlatb
inc esi
push ebx
push ebx
push ebx
adc bh, byte [edx - 0x53535361]
jp 0x91b5df
push 0x52
rcl byte [edx + 0x57bbd056]
mov edx, 0xacacacee
sar byte [ebx - 0x531145a9], 1
lodsb al, byte [esi]
lodsb al, byte [esi]
jp 0x91b5d6
push 0x51
rcl byte [edx + 0x57b9d055]
push edi
sar byte [ebx - 0x530745aa], 1
lodsb al, byte [esi]
lodsb al, byte [esi]
push cs
xchg ecx, eax
pop edi
push ebx
push es
fdivr dword [edi - 0x27f9fbfb]
pop edi
fsubr dword [esi]
pop ebx
scasd eax, dword es:[edi]
loope 0x91b5c5
fst dword [ebp - 0x2e]
xchg ebp, eax
push edx
push ebx
push ebx
push ebx
fist dword [edx + edx*8 - 0x6c]
push edx
push ebx
push ebx
push ebx
call 0x53e50958
push ecx
sbb dword [esi + edx*8 + 0x56], 0xd9535353
inc ebp
adc eax, 0xd05c8141
mov ebp, dword [esp + ebp*4 + 0x5c8151ac]
salc
push esi
push ebx
push ebx
push ebx
fld dword [ebp + 0x15]
inc ecx
sbb dword [eax + edx*8 + 0x39], 0x60535353
xchg ebx, eax
push ecx
sbb dword [esi + edx*8 + 0x56], 0xd9535353
inc ebp
adc eax, 0xd05c8141
jns 0x91b692
push ebx
push ebx
push ecx
sbb dword [esi + edx*8 + 0x56], 0xd9535353
inc ebp
adc eax, 0x93408141
push ecx
sbb dword [esi + edx*8 + 0x56], 0xd9535353
inc ebp
adc eax, 0x93408141
push ecx
sbb dword [esi + edx*8 + 0x56], 0xd9535353
inc ebp
adc eax, 0x93408141
push ecx
sbb dword [esi + edx*8 + 0x56], 0xd9535353
inc ebp
adc eax, 0x93408141
pop esp
xlatb
push ebp
push ebx
push ebx
push ebx
fmul dword [eax + edi*2 - 0x24af2675]
push esp
adc al, 0xe8
push ecx
push ebx
push ebx
push ebx
mov edx, 0xacacac23
jmp 0x91b6eb
sbb dword [ecx + edx*8 - 0x73], 0x5acacac
fsub dword [eax + edi*2 + 0xdf7a0a6]
mov edx, 0xacacac5b
sbb edx, dword [edx + 0x55d95bb3]
adc eax, 0x52eabbd8
push ebx
push ebx
push ebx
push ecx
sbb dword [esi + edx*8 + 0x56], 0xd9535353
inc ebp
adc eax, 0x9a408141
push ecx
sbb dword [esi + edx*8 + 0x56], 0xd9535353
inc ebp
adc eax, 0xd15c8141
lea ebp, [esp + ebp*4 + 0x53abd2ac]
push ebx
push ebx
ror byte [edx - 0x53535354], cl
shr byte [ebx + 0x53535653], cl
ror byte [edx - 0x53535354], cl
shr byte [ebx + 0x535353d3], cl
rol byte [edx + 0x53535353], cl
shr byte [ebx + 0x535353d3], cl
rol byte [edx + 0x53535353], cl
add eax, 0xa378a4d8
mov al, byte [0xc8ba0df7]
lodsd eax, dword [esi]
lodsb al, byte [esi]
lodsb al, byte [esi]
fst dword [ebp + 0x15]
pushal
lcall 0x49d7, 0x5c52bb93
push ebx
push ebx
push ebx
rol byte [edx + 0x53535351], cl
fdivr dword [ebx + 0x78a4d805]
mov dword [0xe80df7a0], eax
push edx
push ebx
push ebx
push ebx
mov edx, 0xacacad20
push cs
js 0x91b7c5
pop ebx
fcom dword [esp + ecx + 0xeb6d80d]
xchg ecx, eax
pop ebx
push ebx
xchg esp, eax
or al, 0xd
fdiv dword [esi + 0x535b910e]
or al, 0xd
mov edx, 0x53535357
pop ecx
mov ah, byte [ebx]
loop 0x91b799
jnp 0x91b797
add dl, byte [ebx + 0x50]
xchg esi, eax
rcl byte [ebx + 0x535350f8], cl
ljmp 0x4be9
inc ebx
adc ebx, dword [edx]
pop esp
salc
movsd dword es:[edi], dword [esi]
lodsb al, byte [esi]
lodsb al, byte [esi]
lodsb al, byte [esi]
mov edx, 0x53535357
jl 0x91b777
mov word ds:[0x8b781c1c], ds
rol ch, 0x1b
dec edx
dec ebx
dec ebx
mov ah, byte [edx + 0x14e0b949]
rol ch, 0x1f
dec edx
dec ebx
dec ebx
mov ah, byte [edx + 0x14eeb949]
adc eax, 0x4b77d5c0
dec ebx
dec ebx
sbb byte [esp + esi*8 + 0x17], al
js 0x91b84e
adc edx, ecx
mov dword [ebx + 0x484b4b4b], esi
popfd
retf 0x4bb0
dec eax
mov ch, 0xc0
xchg ebp, eax
retf 0x4ba0