Function at 0xcba959
Capabilities:
Encode data using base64
Encrypt data using speck

Disassembly:
jae 0xcbd616
mov edi, dword [ebp + 8]
xchg bl, bh
movzx ebx, byte [edi]
shl esi, 8
clc
jmp 0x111dac2
movzx ecx, word [ebx + ecx*2]
cmp eax, eax
cmp dx, 0x4e8a
mov dword [ebp - 0x10], ecx
stc
test sp, bp
test ecx, 0x390d08fb
cmp edx, 0x1000000
jmp 0x110d642
jae 0xcbd616
movzx ecx, byte [eax]
shl esi, 8
jmp 0xca76c7
ret
mov edi, dword [ebp - 0xc]
clc
stc
sub edx, ecx
stc
clc
sub esi, ecx
test cx, 0x5afe
mov ecx, dword [ebp - 8]
jmp 0xcc37cf
inc eax
cmc
mov dword [ebp + 8], eax
mov eax, edx
clc
shr eax, 0xb
test esi, edx
clc
imul eax, ecx
cmp si, si
jmp 0x110aba1
jb 0xbc6cbd
mov edi, 3
bt bx, 0x3a
adc ah, 0xfb
mov eax, dword [ebp - 8]
inc bl
shl edi, 7
lea ebx, [edi + eax + 0x360]
mov eax, dword [ebp + 8]
cmovnp edi, ebp
mov edi, 1
jmp 0xcb3982
inc eax
stc
test bh, 0x3f
mov dword [ebp + 8], eax
mov eax, edx
stc
test ch, ah
shr eax, 0xb
test cl, 0xee
imul eax, edi
stc
cmp cl, 0x2c
cmp esi, eax
jae 0xca7ce0
mov edx, eax
cmc
test si, 0x442f
test dx, bp
add ecx, ecx
jmp 0xca7ce8
and eax, 1
or eax, 2
shr ecx, 0x85
bswap ecx
mov ecx, ebx
jmp 0xca8276
mov dword [ebp - 0xc], eax
jmp 0xcb9ce5
ret
mov edi, dword [ebp - 0xc]
cmp bp, bx
jmp 0x1111d24
jmp 0xcc6654
and dword [ebp - 8], eax
cmp ecx, esi
cmc
test dl, 0x72
cmp edi, 0x100
jmp 0x1108c59
jae 0xbc60cc
mov eax, dword [ebp + 8]
stc
cmp eax, dword [ebp - 4]
jmp 0xbc9649
jae 0xcbd616
movzx edi, byte [eax]
cmp ecx, esp
shl esi, 8
stc
shl edx, 8
or esi, edi
jmp 0xbc60c7
jae 0xca284e
cmp eax, dword [ebp - 4]
jae 0xcbd616
movzx ecx, byte [eax]
cmc
test ax, 0x8bb
shl esi, 8
stc
clc
shl edx, 8
test esi, 0x505d7417
or esi, ecx
inc eax
adc ch, 0x25
movzx ecx, cx
mov dword [ebp + 8], eax
mov ecx, edx
cmp cl, al
cmc
shr ecx, 0xb
test si, 0x26cc
imul ecx, edi
test ax, di
cmp esi, ecx
jmp 0x110a8b2
mov dword [ebp - 0xc], eax
jmp 0xcbe951
cmp esi, eax
jmp 0x1109633
jmp 0xcc6654
jae 0xcbd616
movzx ecx, byte [eax]
shl esi, 8
test ecx, 0x6d73031e
test ah, dl
cmp ebx, esp
shl edx, 8
test bx, di
or esi, ecx
movzx ecx, cx
xchg cl, cl
inc ecx
inc eax
cmp ax, di
mov ecx, edx
shr ecx, 0xb
jmp 0xcb3d25
shl edx, 8
cmp dl, 0x1a
or esi, ecx
jmp 0x110cf41
sub edx, eax
sub esi, eax
lea ecx, [ecx + ecx + 1]
cmp ecx, 0x100
jb 0xcb2140
mov eax, 1
jmp 0xcad692
je 0x1111dd8
mov ecx, dword [edi + 0x24]
cmc
cmp dx, bx
jmp 0xcc5c8b
shl eax, cl
xchg cx, cx
jmp 0xcab0aa
sub eax, eax
mov edi, dword [edi + 0x14]
test dh, 0x39
stc
cmp ebx, 0x44230856
sub edi, ebx
mov bl, 0x9c
sal bh, cl
add edi, ecx
btc ebx, ebx
movzx ecx, byte [edi + eax]
mov dword [ebp - 8], 0x100
cwde
sbb ebx, ecx
cmc
mov edi, 1
mov edi, edi
shl ebx, cl
sar ah, 0xc9
mov ebx, dword [ebp - 8]
lea ecx, [ecx + ecx]
btc eax, edi
sar ah, 0x7f
shr al, 0x90
mov eax, ebx
and eax, ecx
test bh, 0x9d
mov dword [ebp - 0x18], ecx
rcr ch, cl
rol cl, cl
clc
lea ecx, [eax + edi]
cmp ebp, ebx
cmp ecx, 0x3b722644
lea ecx, [ecx + ebx]
adc ebx, eax
and bh, 2
mov ebx, dword [ebp - 0xc]
stc
jmp 0xbc4ef1
inc eax
mov dword [ebp + 8], eax
stc
setae al
xor al, 0xfd
movzx eax, word [ebx + edi*2]
shr ch, cl
shr ecx, 0x25
btc ecx, 0x2d
mov ecx, edx
cmp si, 0x2935
shr ecx, 0xb
cmp esi, 0x4b532714
cmc
test edx, 0x18d83b1c
imul ecx, eax
cmp sp, cx
cmp ebp, 0x75c04b3e
test ebp, 0x6d290e71
cmp esi, ecx
jmp 0xcb3873
sub edx, ecx
sub esi, ecx
cmc
lea edi, [edi + edi + 1]
test ebp, 0x2d5f471f
stc
cmc
cmp edi, 0x40
jmp 0x1112a61
mov ecx, dword [ebp - 8]
sub eax, edi
jmp 0x1116469
jae 0xcbd616
movzx ecx, byte [eax]
stc
test esp, ebx
cmp bp, 0x6d38
shl esi, 8
cmc
shl edx, 8
jmp 0xcc1bc7
jmp 0x11124fe
cmp esi, ecx
jmp 0x111a808
jne 0xcc40ad
mov ecx, dword [ebp - 8]
add ecx, 0x644
bts ebx, edi
shl bl, 0x3f
sar bh, cl
mov ebx, 4
test edx, 0x6e311818
stc
mov dword [ebp + 8], eax
mov dword [ebp - 0xc], ecx
cmp si, 0x486c
rol cx, cl
mov dword [ebp - 0x14], ebx
xchg ah, al
mov eax, 1
not ch
mov edi, edi
bsr cx, sp
bswap cx
mov ecx, dword [ebp - 0xc]
clc
cmp dh, 0xba
movzx ecx, word [ecx + eax*2]
clc
cmp edx, 0x1000000
jae 0xcb0d28
mov edi, dword [ebp - 4]
test bl, 0x87
cmp dword [ebp + 8], edi
jmp 0xbc3b33
and ebx, dword [edi + 0x2c]
test ebx, edi
test ecx, 0x6fe42b92
add ecx, ebx
cmp ax, 0x8d0
movzx eax, word [eax + ecx*2]
mov dword [ebp - 0x10], eax
cmp edx, 0x1000000
jae 0x110cf49
mov eax, dword [ebp + 8]
test dl, cl
cmp eax, dword [ebp - 4]
jmp 0xbc523e
inc edi
mov dword [ebp + 8], edi
or edi, 0x1a55304a
and di, bx
mov edi, edx
test bl, ch
shr edi, 0xb
imul edi, ecx
cmp di, 0x1ca2
cmc
cmp esi, edi
jmp 0x111668f
mov ecx, dword [edi + 0x24]
add bl, 0x92
mov ebx, dword [edi + 0x38]
cmp ecx, ebx
jmp 0xcc558b
mov ecx, dword [ebp - 8]
sub edx, eax
sub esi, eax
sar eax, 0xcd
bswap di
mov eax, dword [ebp - 0xc]
cmp al, 0xe7
movzx edi, sp
movzx edi, word [ecx + eax*2 + 0x198]
inc eax
mov eax, dword [ebp + 8]
stc
clc
mov dword [ebp - 0x18], 3
test bp, 0x3af2
cmp al, bh
test bh, bl
cmp edx, 0x1000000
jmp 0xca281d
mov eax, dword [ebp - 0xc]
movsx edi, ax
neg di
shld di, dx, 8
movzx edi, word [eax + ecx*2]
cmp di, 0x115b
test cx, 0x67de
cmp edx, 0x1000000
jmp 0xcb3205
sub edx, ecx
test esi, ebx
sub esi, ecx
test bh, 0xef
cmp edx, 0x1000000
jmp 0x1113758
dec edi
test bp, 0x2198
and edi, edx
cmc
sub esi, edi
stc
jmp 0xcbbd0c
lea ebx, [ebx + edi + 0x104]
mov dword [ebp - 0x14], eax
jmp 0x110a337
jae 0xbc70f4
mov eax, dword [ebp + 8]
cmc
clc
cmp bx, bp
cmp eax, dword [ebp - 4]
jmp 0x1114a2a
jmp 0xbc9034
jae 0xcc659f
mov edx, ecx
jmp 0xcc751e
jmp 0x110d575
imul ecx, dword [ebp - 0x10]
jmp 0xcaebf6
jae 0xcbd616
movzx ecx, byte [eax]
test dx, bp
shl esi, 8
test di, dx
shl edx, 8
clc
or esi, ecx
jmp 0x1113ad3
jmp 0xcb0649
push ebp
bts ebp, esp
mov ebp, esp
inc dl
btr dx, ax
lea esp, [esp - 0x18]
movsx edx, dx
push ebx
movsx bx, cl
push esi
sbb dx, 0xe11
test di, si
push edi
clc
sub dx, di
mov edi, ecx
cmp ebx, 0x4aca4f83
shl dx, cl
or dl, 0x6c
mov ecx, dword [ebp + 8]
dec si
sal edx, 0xa6
sar dx, 0x99
mov edx, dword [edi + 0x1c]
mov esi, dword [edi + 0x20]
cmovnp bx, sp
and bx, sp
inc bl
add ecx, eax
mov eax, dword [edi + 0x10]
sal ebx, cl
btc ebx, 0x84
sbb bx, 0x11e7
mov dword [ebp - 4], ecx
mov ecx, dword [edi + 0x34]
shl ebx, cl
bts bx, si
shrd bx, sp, 0xa3
mov dword [ebp - 0xc], ecx
or bx, 0x3a3f
add ecx, esp
mov ecx, dword [edi + 8]
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0xc]
cmc
cmp sp, bp
clc
shl ecx, 4
jmp 0x110d7b1
sub ebx, 1
jmp 0xcb0613
jb 0xcbd61b
xor eax, eax
movzx ebx, dx
pop edi
mov bx, di
pop esi
movsx ebx, sp
not bl
pop ebx
jmp 0x110be0c
jne 0xca805b
cmp dword [edi + 0x2c], 0
jmp 0xca8055
jae 0xcbd61b
mov edx, dword [ebp - 4]
cmp dword [ebp + 8], edx
jmp 0xcbd610
sub edx, edi
cmp di, dx
test ebp, eax
sub esi, edi
lea eax, [eax + eax + 1]
sub ebx, 1
mov dword [ebp - 0x14], ebx
jmp 0x11124ef
jae 0x11124f5
cmp edi, 4
jmp 0xbc6caa
jb 0xcc6660
mov eax, dword [ebp - 0x14]
test esp, ebx
test di, 0x6783
sub eax, ecx
add edi, eax
cmc
clc
cmp dword [ebp - 0xc], 4
jmp 0xcc0cbc
shr ecx, 0xb
cmc
imul ecx, dword [ebp - 0x10]
stc
cmp cx, si
cmp esi, ecx
jmp 0x11111fb
or esi, ecx
cmovs cx, bp
dec ecx
movzx ecx, si
inc eax
clc
bts cx, cx
mov dword [ebp + 8], eax
and ecx, 0x2f620b14
mov ecx, edx
shr ecx, 0xb
imul ecx, edi
cmp esp, 0x31594da2
clc
cmp ebx, ebp
cmp esi, ecx
jae 0xbc8694
mov edx, ecx
jmp 0x1106d4b
cmp edx, 0x1000000
jae 0x1113adf
cmp eax, dword [ebp - 4]
jmp 0xcb4413
cmp eax, dword [ebp - 4]
jmp 0x1114a57
jae 0xcbd616
shl ecx, 8
mov edx, ecx
movzx ecx, byte [eax]
shl esi, 8
stc
test dh, 0xcb
or esi, ecx
inc eax
btr ecx, ebp
mov dword [ebp + 8], eax
sar ecx, 0x3a
ror cx, 0x17
mov ecx, edx
test ch, cl
stc
shr ecx, 0xb
imul ecx, edi
jmp 0x1105db3
sub edx, ecx
sub esi, ecx
mov edi, dword [ebp - 8]
clc
test dl, al
cmp bl, 7
mov dword [ebp - 0xc], 0xc
cmc
lea edi, [edi + 0xa68]
jmp 0xcc1c0c
movzx edi, word [ecx + edi*2 + 0x1b0]
cmp edx, 0x1000000
jmp 0x1118ef5
dec eax
jmp 0x110ae62
mov ecx, dword [ebp - 4]
stc
sub ebx, 4
cmp edx, 0x1000000
jmp 0xcc60c3
jmp 0xcc1c0c
jae 0xca88e6
mov eax, dword [edi + 0x28]
jmp 0x1111e79
mov ecx, dword [ebp - 0xc]
test dx, 0x25ba
sub edx, eax
sub esi, eax
or ax, sp
rcr eax, 0xfb
mov eax, dword [ebp - 8]
stc
movzx ecx, word [eax + ecx*2 + 0x180]
cmp di, 0x62ca
stc
cmp edx, 0x1000000
jmp 0xbc9637
jmp 0xcc2b12
test ecx, ecx
jmp 0x110bdf3
jae 0xcc60f1
cmp eax, ecx
jae 0xcbd616
movzx edi, byte [eax]
cmp cx, si
shl esi, 8
stc
test cl, 0x3d
shl edx, 8
cmc
or esi, edi
cmovs di, bx
movzx edi, ax
inc eax
test dx, 0x4ce1
shr edx, 1
bt edi, ecx
adc edi, ecx
mov di, 0x79bd
mov edi, esi
stc
test ch, 0xaf
sub edi, edx
stc
shr edi, 0x1f
jmp 0xcb2d55
sub edx, ecx
cmp si, 0x2b
cmc
sub esi, ecx
stc
shr ecx, 0xca
lea edi, [edi + edi + 1]
adc ecx, 0x156612d7
mov ecx, dword [ebp - 0x10]
clc
cmc
cmp edi, ecx
jmp 0xcc0dc3
sub edx, ecx
sub esi, ecx
lea ebx, [edi + 0x204]
movzx eax, bx
add di, dx
inc ah
mov dword [ebp - 0x14], 0x10
mov dword [ebp - 0x10], 0x100
sbb ax, 0x20ae
cmp si, dx
btc ax, si
mov edi, 1
or eax, esi
adc ah, ah
add ax, si
mov eax, dword [ebp + 8]
stc
cmp dx, ax
cmp edx, 0x1000000
jae 0xca92eb
cmp eax, dword [ebp - 4]
jae 0xcbd616
movzx ecx, byte [eax]
cmp edi, 0x4df71a15
shl esi, 8
shl edx, 8
test eax, 0x516c1b47
or esi, ecx
bswap ecx
jmp 0xca92e1
add edi, edi
jmp 0xcc65b7
cmp esi, ecx
jmp 0x1109656
shr ecx, 0xb
clc
test bp, 0x41ef
test si, si
imul ecx, eax
cmc
cmp esi, ecx
jmp 0x1114931
jae 0xcbd616
movzx ecx, byte [eax]
cmp di, 0x7420
shl esi, 8
clc
test bx, 0x7804
shl edx, 8
cmp ax, si
or esi, ecx
movzx ecx, bp
dec ecx
mov ecx, 0x11fe6917
inc eax
mov dword [ebp + 8], eax
bt ecx, 0xdb
xchg cx, cx
mov ecx, edx
cmc
shr ecx, 0xb
cmp ebx, 0x80b0e30
clc
imul ecx, edi
cmp ah, 0x62
cmp esi, ecx
jae 0xcc2b0e
mov edx, ecx
jmp 0xcc5adc
jmp 0xcc2b12
jae 0xcbd616
movzx ebx, byte [ecx]
clc
shl esi, 8
cmc
cmp bp, si
shl edx, 8
clc
or esi, ebx
inc ecx
stc
cmp bl, 0xb2
mov dword [ebp + 8], ecx
not ch
rcl ch, 0x99
mov ecx, edx
jmp 0xcc1956
jae 0xca7cf4
mov ecx, dword [ebp - 0x18]
jmp 0xca891b
cmp esi, ecx
jae 0xcb2ca2
shl ebx, 4
mov edx, ecx
lea ebx, [ebx + edi + 4]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 8
jmp 0xca5c59
jae 0xcc593c
mov edx, eax
shl ax, cl
rcl al, cl
mov eax, dword [ebp - 8]
stc
lea eax, [eax + 0xe6c]
cmp di, sp
cmp dword [edi + 0x30], 0
jmp 0xca476b
jae 0xcc2b0e
cmp ecx, 0x1000000
jmp 0x111703c
mov dword [ebp - 0x10], eax
jmp 0xbc8bfc
mov dword [ebp - 0x10], ecx
clc
cmp edx, 0x1000000
jmp 0x111c704
jae 0xbc5717
mov eax, dword [ebp - 0xc]
sub edx, 0x56891618
xadd dl, dh
sal dl, cl
mov edi, dword [ebp - 8]
and dx, 0x559f
lea eax, [eax + 0xf]
rol edx, cl
shrd dx, sp, 0x59
shl eax, 4
add dx, 0x25b
inc edx
and dh, 0x5e
add eax, ebx
rcr dh, cl
movzx edi, word [edi + eax*2]
adc al, bl
adc edx, 0x4ba25b46
mov eax, dword [ebp + 8]
movzx edx, bx
sbb dh, 0x64
dec dx
mov edx, ecx
cmp ax, 0x696d
cmp ecx, 0x1000000
jmp 0x110d223
jae 0xcb1821
mov ecx, 1
jmp 0xcb2140
or esi, ecx
mov ch, 0x2a
movsx ecx, dx
mov ecx, esi
inc eax
cmp dl, 0xfd
mov dword [ebp + 8], eax
or cl, 0x5f
btr ax, dx
shr ch, cl
movzx eax, word [edi + 2]
mov ecx, edx
test ax, dx
jmp 0x110645c
cmp esi, eax
jae 0xcb1d3a
mov edi, dword [ebp - 8]
cmc
sar dx, 0x36
mov edx, eax
xor ax, sp
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], 0
add edi, 0x664
mov dword [ebp - 0x18], 2
jmp 0xcc4429
and eax, dword [edi + 0x2c]
cmc
shl eax, cl
lea ebx, [ebx + eax]
imul ebx, ebx, 0x600
cmp di, 0x3e6d
add dword [ebp - 0xc], ebx
jmp 0x1111dd8
jae 0xcbd616
pop edi
pop esi
movzx ebx, cx
bswap ax
mov eax, 3
cmovs bx, bp
pop ebx
mov esp, ebp
bswap ebp
pop ebp
jmp 0xbc84f3
jne 0x110bdfc
mov ecx, dword [edi + 0x28]
mov ebx, dword [edi + 0x14]
shl ax, cl
movzx ebx, byte [ebx + ecx - 1]
jmp 0x110eb03
mov esp, ebp
mov bp, 0x2775
pop ebp
jmp 0xbc54d7
inc eax
mov dword [ebp + 8], eax
cmovo ax, cx
mov eax, edx
test bx, di
test ebp, 0x2ccc68a1
shr eax, 0xb
imul eax, dword [ebp - 0x10]
clc
cmc
jmp 0xca4879
sub edx, ecx
cmp bl, 0x6b
sub esi, ecx
cmp bh, ch
lea edi, [edi + edi + 1]
test ebx, edi
jmp 0xbc9034
jae 0xcc2ab0
cmp eax, dword [ebp - 4]
jmp 0xcc2a8b
movzx ecx, word [ebx + edi*2]
cmp bh, ah
clc
jmp 0x110a41f
jae 0x1108c52
mov ecx, dword [ebp + 8]
test esi, 0x3b9c6f4c
cmp ecx, dword [ebp - 4]
jmp 0x1108c2e
mov dword [ebp - 8], eax
dec ebx
cmp edi, 0x45bb6f53
jmp 0xcb08a5
mov eax, dword [edi]
mov ecx, 8
cmc
cmp ebx, esp
sub cl, al
sub ah, ah
shr ebx, cl
shr ax, cl
mov ecx, dword [edi + 4]
btc ax, 0x55
mov eax, 1
test si, cx
shl eax, cl
inc cx
seta ch
mov ecx, dword [edi]
jmp 0xcc39bd
jae 0x110d112
mov edx, ecx
cmp di, 0x1032
add edi, edi
jmp 0x111f8f7
sub edx, ecx
sub esi, ecx
inc cx
mov ecx, dword [ebp - 8]
cmp edi, edx
test bh, 0x11
movzx edi, word [ecx + edi*2 + 0x1c8]
stc
cmp edx, 0x1000000
jae 0x1106bf7
cmp eax, dword [ebp - 4]
jmp 0x1106bc4
cmp dword [edi + 0x34], 7
jmp 0x110ab5a
jmp 0xca88e8
jne 0xcb0659
mov eax, dword [ebp - 0x18]
stc
test sp, 0xf6b
cmp edx, 0x1000000
jmp 0xcbf8ce
jmp 0xca95f6
jb 0x110d575
lea edi, [edi - 0x40]
cmc
test dl, bl
mov dword [ebp + 8], eax
cmp edi, 4
jb 0x11124f5
mov ebx, edi
cmp sp, 0x43f6
shr ebx, 1
jmp 0x111a969
jae 0x110ab8a
mov eax, dword [ebp + 8]
cmc
jmp 0xcc29bc
inc eax
sbb ch, 0xb5
bts ecx, ebp
inc cl
mov dword [ebp + 8], eax
movzx eax, word [edi]
sbb ecx, 0x38534ed7
mov ecx, edx
shr ecx, 0xb
imul ecx, eax
jmp 0x110960f
jae 0xcc6629
mov eax, 8
cmova dx, bp
shl ebx, 4
mov edx, ecx
jmp 0xcb2ff8
jae 0xcbd616
movzx ebx, byte [eax]
clc
shl esi, 8
cmc
shl edx, 8
cmp eax, edi
or esi, ebx
jmp 0xbc70ec
jae 0xcbd616
movzx ecx, byte [eax]
cmp esi, 0x13d20ce3
shl esi, 8
stc
shl edx, 8
cmc
jmp 0x110ab70
jae 0xcc40a6
mov eax, edi
jmp 0xbc713e
lea eax, [ecx + eax*2 + 0x55e]
jmp 0xbc7b05
jae 0xcc092c
mov edx, edi
test bx, cx
cmc
add eax, eax
jmp 0xcc0939
jae 0x110bae0
cmp eax, dword [ebp - 4]
jmp 0x110bada
jae 0xcc1be0
cmp eax, dword [ebp - 4]
jmp 0xcab188
jae 0xca95e5
mov edx, ecx
add edi, edi
jmp 0x111278c
dec ebx
test bx, di
mov dword [ebp - 0x14], ebx
cmp edi, 0xe
jmp 0x1115b2c
jae 0xca6585
cmp eax, dword [ebp - 4]
jmp 0xca655d
or esi, ebx
cmova ebx, esp
stc
rol bl, 0xfe
mov ebx, dword [ebp - 0x14]
stc
shl edx, 8
jmp 0xcb0d1b
not eax
jmp 0xcb35fc