Function at 0x43ca11
Capabilities:
Encode data using base64
Encrypt data using aes
Reference aes constants

Disassembly:
jmp 0x43ca2d
lea esp, [esp + 4]
jmp 0x43cbd1
jmp 0x43ca65
jmp 0x43ca81
push ebp
jmp 0x43ca9d
jmp 0x43cab9
mov ebp, esp
jmp 0x43cad5
jmp 0x43caf1
push ecx
jmp 0x43cb0d
jmp 0x43cb29
push ecx
jmp 0x43cb45
jmp 0x43cb61
push ebx
jmp 0x43cb7d
jmp 0x43cb99
push edi
jmp 0x43cbb5
jmp 0x472641
jmp 0x43ca49
mov edi, eax
mov al, byte [ecx]
cmp al, 0x41
jmp 0x472750
jb 0x47276d
jae 0x472796
cdq
adc dword [ecx - 0x510cec20], eax
sub edi, dword [ebx + 0x4e8c2dde]
invalid
cmp al, 0x61
jb 0x4727a6
cmp al, 0x7a
jbe 0x472b27
jmp 0x4727a6
cmp al, 0x5a
jbe 0x472b27
jmp 0x47276d
cmp al, 0x30
jb 0x472af9
jae 0x472a50
invalid
mov dl, byte [ecx + 2]
cmp dl, 0x41
jb 0x4728e9
jae 0x47291d
or al, 0x9b
or ebp, dword [esi - 0x63]
and al, 0x2d
mov cl, 0x21
inc eax
mov bl, 0x18
pop esi
invalid
cmp bl, 0x30
jb 0x472906
cmp bl, 0x39
jmp 0x4728e5
cmp bl, 0x61
jb 0x4728b3
cmp bl, 0x7a
jbe 0x472890
jmp 0x4728b3
jbe 0x472890
jmp 0x472906
cmp dl, 0x61
jmp 0x472993
cmp bl, 0x2b
je 0x472890
cmp bl, 0x2f
jne 0x4729b8
jmp 0x472890
cmp dl, 0x5a
jbe 0x47293c
jmp 0x4728e9
mov cl, byte [ecx + 3]
cmp cl, 0x41
jb 0x4729e8
cmp cl, 0x5a
jbe 0x472a2b
jmp 0x4729e8
cmp cl, 0x30
jmp 0x472a61
cmp dl, 0x30
jb 0x472a07
jae 0x4729dd
into
inc esp
fidivr dword [ebp - 0x48151b4]
imul ecx, dword [esi], 0xfffffffd
pop esp
cmp byte [eax + 0x7bb04126], dh
or byte [ebx], ah
in al, dx
jb 0x472973
cmp dl, 0x7a
jbe 0x47293c
jmp 0x472973
mov eax, 0x403
jmp 0x472b4d
jmp 0x4729e6
cmp dl, 0x39
jbe 0x47293c
jmp 0x472a07
cmp cl, 0x61
jb 0x472956
jae 0x472ab7
cmp al, 0xb3
and eax, dword [esi - 0x4b]
jo 0x4729c7
pop ebp
int 0x94
xchg dword [bx + di - 0x63], esp
inc esp
das
cmp dl, 0x2b
je 0x47293c
cmp dl, 0x2f
je 0x47293c
cmp dl, 0x3d
jne 0x4729b8
jmp 0x47293c
cmp dl, 0x3d
jne 0x472c18
mov dword [edi], 1
jmp 0x472ba7
cmp al, 0x39
jbe 0x472b27
jmp 0x472af9
jb 0x472a7e
jae 0x472a9a
dec ebx
xlatb
inc edi
and dl, cl
sub eax, 0xbe4324b6
or byte [edx], dh
stosb byte es:[edi], al
cmp byte [edi - 0x56], bl
add ebp, dword [edi + 0x3ec3a436]
add dword [eax + eax*4 - 7], 0xb559eb2b
sub dword [ecx + 0x33802bd8], edi
lodsb al, byte [esi]
and al, byte [ebp - 0x4c]
add ebp, dword [edx + 0x3ec3a436]
xchg edi, eax
push eax
mov byte [0x80075329], al
stc
cmp ebx, ebp
xor ebx, dword [esi]
adc dword [ecx], 0xe2368370
inc eax
salc
mov cl, 0x40
mov dword [ebx + 0x20d1b620], 0x2e7a07a7
push ss
ror dword [eax - 0x80], 0xf9
jp 0x472aca
cmp cl, 0x2b
jmp 0x472adc
cmp cl, 0x39
jmp 0x472ad2
cmp cl, 0x7a
jbe 0x472a2b
xchg byte [ebx - 1], ch
invalid
jmp 0x472956
inc eax
fstp qword [esi - 0x34]
stosd dword es:[edi], eax
add byte [eax - 0xac79f1], 0xff
invalid
jbe 0x472a2b
jmp 0x472a7e
je 0x472a2b
jne 0x472b0a
outsb dx, byte [esi]
out dx, al
jl 0x472b03
not byte [edi]
movsb byte es:[edi], byte [esi]
sub edi, dword [ebx + 0x65c92dde]
loope 0x472b64
adc bl, ah
or al, ch
popal
cmp dword [eax + 0x29742bf8], eax
cmp al, 0x2b
je 0x472b27
cmp al, 0x2f
jne 0x4729b8
mov cl, 0xfe
invalid
jmp 0x472b27
cmp cl, 0x2f
jmp 0x472b92
mov bl, byte [ecx + 1]
mov byte [ebp - 1], bl
cmp bl, 0x41
jb 0x4728d4
cmp bl, 0x5a
jbe 0x472890
jmp 0x4728d4
pop edi
jmp 0x4731e4
mov bl, 0x5e
sub eax, 0x272a
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
ror dword [edx - 0x28], 0xbf
dec edx
in eax, dx
xchg byte [esi], cl
pushfd
sti
push ss
fnstsw word [edi + ecx - 0x16c7c]
inc dword [eax - 0x7bf0c207]
mov bh, dh
invalid
je 0x472a2b
cmp cl, 0x3d
je 0x472a2b
jmp 0x4729b8
cmp al, 0x2b
jmp 0x472c3c
cmp al, 0x2f
jne 0x472e63
push 0x3f
jmp 0x472ea3
xor ebx, ebx
cmp cl, 0x3d
setne bl
inc ebx
inc ebx
mov dword [edi], ebx
mov bl, byte [ebp - 1]
jmp 0x472ba7
jne 0x472bf1
push 0x3e
jmp 0x472ea3
sub eax, 0x47
jmp 0x472e02
cmp al, 0x5a
movzx eax, al
ja 0x472c95
sub eax, 0x41
jmp 0x472e02
cmp bl, 0x2f
jne 0x472dc6
push 0x3f
jmp 0x472d4d
mov edi, dword [edi]
cmp edi, 2
jmp 0x472ed0
pop esi
jmp 0x472d2f
movzx esi, bl
cmp bl, 0x39
jmp 0x472e13
cmp bl, 0x5a
jmp 0x472f77
push esi
cmp bl, 0x2b
jne 0x472d21
push 0x3e
jmp 0x472d4d
ja 0x472de5
add esi, 4
jmp 0x472d2f
cmp al, 0x39
ja 0x472d08
movzx eax, al
add eax, 4
jmp 0x472e02
sub esi, 0x47
jmp 0x472d2f
mov edx, dword [ebp - 8]
jmp 0x472f8e
pop eax
jmp 0x472e02
cmp dl, 0x2f
jmp 0x472fe3
jb 0x472e7f
cmp dl, 0x2b
jne 0x472eb2
push 0x3e
jmp 0x472efd
pop edx
jmp 0x472f8e
cmp dl, 0x39
ja 0x472fc6
movzx edx, dl
add edx, 4
jmp 0x472f8e
ja 0x472e76
sub esi, 0x41
jmp 0x472d2f
cmp edi, 3
jne 0x47365e
cmp cl, 0x2b
jne 0x4731a4
push 0x3e
jmp 0x473107
push 0x3f
jmp 0x472efd
cmp dl, 0x5a
jmp 0x476f98
jne 0x472f44
je 0x472fbf
loop 0x47306b
in al, dx
mov eax, dword [esi - 0x64f467d1]
dec byte [0x7e8571bc]
cmp cl, 0x39
jmp 0x4730ac
shl eax, 6
jmp 0x473111
cmp cl, 0x5a
movzx ecx, cl
ja 0x4730be
sub ecx, 0x41
jmp 0x473016
outsd dx, dword [esi]
out 0x74, al
adc ebp, esi
add cl, bh
scasb al, byte es:[edi]
dec esi
retf
ja 0x473058
movzx ecx, cl
add ecx, 4
jmp 0x473016
sub ecx, 0x47
jmp 0x473016
pop ecx
jmp 0x473016
or eax, esi
shl eax, 0xc
pop esi
cmp edi, 2
jb 0x473157
shl edx, 6
or eax, edx
jmp 0x473157
mov ecx, dword [ebp + 8]
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
cmp edi, 2
jb 0x473502
jae 0x4732e4
invalid
cmp edi, 3
jne 0x47312b
or eax, ecx
jmp 0x47312b
cmp cl, 0x2f
jne 0x472ffa
push 0x3f
jmp 0x473107
pop ebx
leave
ret
xor eax, eax
jmp 0x472b4d
mov edx, eax
shr edx, 8
mov byte [ecx + 1], dl
jmp 0x473502
cmp edi, 3
jne 0x473203
mov byte [ecx + 2], al
jmp 0x473203
mov ecx, dword [ebp - 8]
jmp 0x473016
sub edx, 0x47
jmp 0x472f8e
movzx edx, dl
ja 0x4752f6
sub edx, 0x41
jmp 0x472f8e