Function at 0x5a87da
Capabilities:
Encrypt data using des

Disassembly:
push ebp
mov ebp, esp
push ecx
cmp ch, 0x5d
stc
push edi
push ebx
xchg edi, ebx
nop
push eax
sub ax, ax
not ebx
push esi
and si, 0x6dab
push edx
cmp edx, esi
not di
shl bh, 7
sbb ebx, eax
test ecx, ecx
add bl, ch
add ax, 0x62d7
dec cx
dec edi
cmp bh, cl
stc
shr bx, 7
add bl, cl
ror esi, cl
mov cl, 0x6a
and cx, 0x7cc5
not al
shr di, 2
shl eax, 2
sub edi, 0x4480b9cc
xchg edi, edx
not cx
adc ecx, ebx
sub ax, ax
xor dx, 0x4395
xchg ebx, esi
and ah, ah
and si, di
or bl, bh
add edi, eax
not edx
and eax, ecx
and edi, 0x29fbe954
cmp dx, ax
or dh, 0x54
or ch, 0x4a
add edx, 0x18f0f3d5
ror bl, cl
shl dx, cl
cmp dl, dh
inc si
pop edx
pop esi
pop eax
pop ebx
pop edi
pop ecx
push ecx
add cx, 0x3d0f
push edx
add dx, 0x2336
push ebx
push eax
sub ebx, eax
push edi
mov edi, ebx
add cl, cl
sub ax, 0x3b8a
test bl, 0x37
adc ax, 0x4eff
sbb ah, dl
xchg edx, eax
stc
stc
cmp ah, dl
and edi, edi
dec bl
push esi
sbb esi, 0x3fd61ddd
stc
mov dx, dx
ror bx, cl
or ebx, ebx
sub dx, 0x1d98
test cl, 0x48
not dh
sbb ax, dx
xchg esi, edi
test bh, 0x56
sub dl, bl
or cx, 0x6b5c
adc di, 0x35fb
nop
mov si, 0x5fb
shl bx, 7
mov si, bx
add cx, si
adc bh, al
not si
and edi, 0x18579722
rol bx, 3
rol edi, 7
test cx, 0x47ad
dec ch
test bx, si
inc bh
adc al, 0x71
add al, 0
sub al, ah
add ch, 0x3f
xchg dl, dh
stc
and dh, 0x34
cmp dh, 0x13
add ch, dh
rol dx, 6
nop
sbb ch, 0x68
shr edi, 7
rol cx, 7
or esi, 0x652a8f00
mov bx, 0x4f6
not si
adc bl, bh
sbb ch, dh
test esi, 0x2520492b
sub edi, 0x4f23b6f8
shr edi, cl
ror bx, cl
mov si, 0x6229
test cx, ax
stc
test bl, dh
sbb esi, 0x4e29c618
xchg edi, ecx
dec eax
nop
adc bh, 0x2c
not ch
test ebx, 0x61373d46
adc ch, 0x71
xchg ecx, edi
ror ah, 2
shl dl, 5
mov bl, 0x1c
mov si, di
or dl, ch
add esi, 0x1b59253c
dec cx
cmp si, di
xor bx, 0x66dc
xor ecx, 0x40b31c98
stc
and edi, 0x6d6a7c33
and bh, 0xf
cmp bx, dx
dec cx
or bh, 0x55
nop
rol si, cl
ror ax, 8
sub edi, ebx
inc edi
pop esi
stc
push esi
ror si, 4
shr esi, 8
sbb bx, ax
adc ecx, 0x303a6ff1
nop
mov edx, 0x3c01b110
shr eax, 2
dec dl
mov ecx, 0x7a95fbdd
stc
rol si, 7
xor eax, ebx
and si, ax
or bh, ah
stc
test bl, 0x53
or dx, cx
shr dh, 4
dec ecx
test ecx, ecx
mov ecx, esi
stc
ror cx, 4
mov ax, dx
dec cl
test edi, 0x60067fa1
xchg dx, ax
mov dx, dx
mov ebx, 0x2a19e980
nop
xor di, 0x6d51
sbb ecx, ecx
mov al, 0x29
ror dx, 8
sub cl, 0x52
and di, 0x591d
sbb dh, 0x10
shr edi, 7
xchg esi, ebx
add ah, 0x41
xor eax, 0x7a1c2cbb
cmp bx, si
ror ecx, cl
test cl, 0x6b
ror di, 6
rol ah, 8
not ecx
add bx, cx
xor al, dl
dec cx
xchg cl, bh
stc
mov dx, di
xor dl, 0x18
not cx
inc cx
shr si, 8
add dh, 0x6a
nop
adc dx, dx
xor dx, di
mov edx, 0x2e8d6f1
inc al
dec dl
dec edx
ror cx, cl
xchg dx, bx
xor ecx, 0x563a0d87
shr bx, cl
xor ecx, 0x33bc5054
cmp edi, ebx
add si, 0x63ff
shl ebx, cl
rol ax, 2
rol dl, cl
add ebx, ebx
and edi, esi
dec esi
xchg ecx, edi
mov edx, esi
ror ecx, cl
xchg si, di
sub edi, 0x69e35e3f
adc esi, ebx
or ah, 0x49
adc ah, al
rol bh, 4
shr bl, cl
test edx, esi
nop
inc dx
adc ah, 0x2f
add al, 0x3c
test dx, 0x5850
nop
and bl, bh
dec di
shl cx, 2
sbb ecx, edi
pop esi
xchg dx, cx
xchg ah, dl
shl bh, 7
and edx, ebx
or dl, al
sub ecx, 0x472eea9d
sbb ebx, ecx
and ebx, 0x5f32799f
push esi
adc cx, si
add ax, 0x7fad
inc ah
stc
rol edi, 4
not bx
adc dh, cl
ror si, cl
sub bl, 0x74
rol si, cl
dec cx
sbb cl, 0x11
xchg dh, al
nop
rol ebx, cl
mov ecx, edi
xchg si, bx
mov edi, ecx
not ch
sbb dl, cl
shl si, cl
ror dl, 6
ror si, 6
and dx, 0x302b
xchg cl, dl
cmp bh, ah
adc ax, di
not cx
sub bh, al
add dx, bx
mov cx, 0x7466
not dx
add ebx, 0x7100900c
xor bl, cl
stc
shr dh, 7
shr edi, 6
or bl, 0x25
shr esi, 4
shl dl, cl
mov edx, 0x3c520790
cmp dx, 0x5ad3
or bh, dl
not ebx
inc bx
xor dl, 0x4e
stc
xchg bh, cl
dec ax
and ch, 0x1d
dec ebx
xor bl, bl
adc esi, 0x6ae88cfd
xor cl, bh
shr edi, 3
not al
mov edi, ecx
test ax, cx
xor esi, 0x4d0ffbb2
add esi, edi
not esi
not ax
pop esi
pop edi
pop eax
pop ebx
pop edx
pop ecx
jbe 0x5a8c72
jbe 0x5a8bdd
push edi
push ecx
rol di, cl
nop
pop ecx
pop edi
push eax
push ebx
adc eax, ebx
stc
pop ebx
pop eax
push edx
push ebx
test edx, ebx
push esi
shl esi, 4
or si, bx
push ecx
shr bh, cl
push edi
add edi, edx
push eax
mov ah, ah
not dx
ror dl, cl
inc bx
cmp edx, edi
cmp edi, 0x5a0a60a3
or ch, 0x46
sub esi, 0x4ce8fa39
sub esi, ecx
sub dl, 6
and cl, 0x19
rol cl, 6
xor esi, ebx
dec bl
pop eax
pop edi
pop ecx
pop esi
pop ebx
pop edx
stc
jo 0x5a8c28
jno 0x5a8c09
push ebx
xchg bh, bl
push edi
push esi
cmp edi, esi
shr ebx, 2
push ecx
adc edi, ecx
mov edi, 0x2e23261a
push eax
sbb al, 0x61
pop eax
pop ecx
pop esi
pop edi
pop ebx
push eax
push ecx
shr eax, cl
pop ecx
pop eax
push ebx
xor ebx, 0x6f7c4e38
push edx
not dx
push eax
test al, 0
push edi
push ecx
shl di, cl
pop ecx
pop edi
pop eax
pop edx
pop ebx
push edx
push esi
or dx, si
pop esi
pop edx
stc
nop
push edx
and dl, 0x72
push ecx
push ebx
adc ch, bl
mov ch, 2
push edi
ror edi, cl
push eax
shl ax, cl
not dh
sub ah, bl
pop eax
pop edi
pop ebx
pop ecx
pop edx
jl 0x5a8c72
push eax
cmp eax, 0xcfa8957
push ecx
push edx
add cl, dh
shr dh, cl
not dx
sbb ax, 0xdd2
pop edx
pop ecx
pop eax
push eax
push ecx
shr ah, cl
push esi
sbb esi, 0x65ecb6b0
pop esi
pop ecx
pop eax
push eax
inc al
pop eax
push ebx
dec bx
nop
push edx
sbb dl, 0x15
inc dh
push edi
xor edi, edx
adc bh, 0x1c
push eax
dec ax
and ebx, 0x3be04325
push esi
adc esi, 0x146ccb23
sbb si, 0x2212
stc
or edi, ebx
not bx
cmp dh, 0x47
push ecx
mov ecx, 0x38861000
add bh, 0x7e
mov di, 0x11a7
adc ch, 0x73
sub ecx, edi
or bh, dh
or di, 0x4008
rol eax, cl
nop
ror ecx, cl
xor edx, 0x14f4d06c
nop
test bl, 0x43
test dl, dh
adc ebx, ebx
xor edx, 0x91f14ee
sub cx, 0x7316
xchg bx, bx
shl ah, 2
nop
cmp bl, 0x7f
shr si, cl
dec al
ror dx, 4
shr dh, 4
ror bx, 8
rol bx, 6
nop
sbb al, 0x4c
inc dh
test si, cx
mov bx, di
shl dh, 7
add ax, si
cmp edi, ecx
nop
xor dl, 0x3f
shl ax, cl
mov eax, esi
ror al, cl
ror bx, cl
xchg cx, di
add edx, edi
mov si, si
add bl, 0x46
rol ecx, cl
pop ecx
pop esi
pop eax
pop edi
pop edx
pop ebx
push ebx
push ecx
xchg bl, ch
push edi
shl edi, 7
shr bx, cl
sbb bl, 0x4a
push eax
sbb al, 4
or ah, 0x54
shl di, 6
nop
push edx
ror edx, 6
xor edx, 0x7841f59b
sbb bl, 0x59
add ch, bh
xor dh, 0x21
dec ch
sbb edi, 0x943e481
stc
nop
and dl, bl
nop
push esi
xchg esi, edx
pop esi
pop edx
pop eax
pop edi
pop ecx
pop ebx
stc
push edi
sub edi, 0x30c3eb57
push eax
sbb al, ah
push ebx
sbb bx, 0x23e7
push ecx
add cl, 0x41
sbb eax, 0x320a9906
push edx
or dl, bh
adc ecx, 0x66d8c025
dec cl
nop
shl al, 1
ror dx, 8
not bl
nop
and cl, dl
not ah
stc
not cl
or edi, ebx
push esi
xchg si, ax
sbb ebx, 0x22988b1b
mov ch, 0x64
not cx
shl dx, cl
pop esi
pop edx
pop ecx
pop ebx
pop eax
pop edi
push esi
shr esi, 7
add esi, 0x172ee6ba
xchg esi, esi
push ebx
xchg bl, bh
push ecx
push edx
cmp cx, dx
cmp si, 0x7c3e
or ch, dh
push eax
mov ecx, eax
shr ebx, 7
cmp dx, 0x37e1
ror ebx, cl
shl esi, cl
pop eax
pop edx
pop ecx
pop ebx
pop esi
push ebx
dec ebx
push edx
sbb bl, dl
xor dl, 0x6a
push esi
test bx, si
pop esi
pop edx
pop ebx
pop ebp
ret