Function at 0x64028a
Capabilities:
Authenticate hmac
Encode data using base64
Parse pe header

Disassembly:
push eax
cmovne eax, eax
bswap eax
push 4
mov eax, 2
jmp 0x6fab9b
push dword [ebp - 0x6c]
jmp 0x54af00
je 0x53cbf1
push ebx
call fcn.00550ad6
add esp, 4
lea eax, [ebp - 0x1c]
jmp 0x6c90e2
call fcn.00550ae8
lea esp, [esp + 8]
cmp cl, 0x39
cmovp di, dx
mov dword [ebp - 0x1c], eax
not di
add di, 0x21c0
mov edi, eax
adc al, 0x1f
lea edi, [edi + 8]
bts eax, ebp
btc eax, esp
mov eax, dword [ebp - 0x70]
test cx, 0x4f11
cmp ebx, edi
shl eax, 2
add edi, eax
lahf
mov eax, esp
cmovae ax, sp
mov eax, dword [ebp - 0x68]
jmp 0x65e31e
je 0x6c2f3f
push ebx
jmp 0x6c2f37
push eax
lea eax, [ebp - 0x20]
jmp 0x614c2d
push 1
jmp 0x59770d
inc eax
mov dword [edi], eax
add edi, 4
jmp 0x5ba8fa
call fcn.006c754e
mov dword [ebp - 0x60], eax
movsx eax, si
not al
cmovge ax, bx
lea eax, [ebp - 0x60]
jmp 0x703c75
push dword [ebp - 0x70]
call fcn.00550ae8
add esp, 8
movzx edi, ax
rcl di, 0x14
mov dword [ebp - 0x1c], eax
xchg edi, edi
clc
mov edi, eax
lahf
bts ax, si
adc ah, cl
lea edi, [edi + 8]
shl ah, cl
stc
mov eax, dword [ebp - 0x74]
cmp dx, bp
test eax, esp
shl eax, 2
test bp, ax
add edi, eax
mov eax, dword [ebp - 0x6c]
jmp 0x5afbfe
push eax
setp ah
lea eax, [ebp - 0x20]
jmp 0x696a3f
push eax
jmp 0x6ddf0a
mov ebx, dword [ebp - 0x1c]
jmp 0x6bb8db
push edi
jmp 0x67209f
test ebx, ebx
jmp 0x6dac30
mov dword [ebp - 0x6c], eax
movsx ebx, di
bswap ebx
jmp 0x5ad226
cmp edi, ebx
jmp 0x5c1d21
je 0x6a5ac4
push ebx
jmp 0x6a5ab7
mov dword [ebp - 0x6c], ebx
jmp 0x6eebf9
call fcn.00550ad6
add esp, 4
cmove eax, ebx
movsx ax, al
movzx ax, bh
lea eax, [ebp - 0x1c]
jmp 0x537e7e
je 0x5c1d2f
mov esi, ebx
lahf
rep movsd dword es:[edi], dword [esi]
bswap ax
mov eax, dword [ebp - 0x70]
inc eax
stc
shl eax, 2
cmp bp, sp
cmp bh, 0x16
add eax, 8
jmp 0x64b09f
je 0x69c617
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
jmp 0x69c617
call fcn.00535a4d
mov dword [ebp - 0x74], ecx
rcr edi, 0x80
shl eax, cl
sar di, 0x5a
mov edi, dword [ebp - 0x70]
shrd eax, ecx, 0xa7
cwde
btc ax, dx
mov dword [edi], 1
add edi, 4
movsx eax, si
mov ah, 0xa4
inc al
mov eax, ecx
jmp 0x5daad1
pop ebx
call fcn.00550ad6
add esp, 4
push 0xa
jmp 0x5900eb
stosd dword es:[edi], eax
cmovnp eax, esp
lahf
lodsd eax, dword [esi]
cmc
push esi
cmp bp, dx
jmp 0x6320a7
inc eax
clc
jmp 0x5db713
mov dword [edi], eax
stc
test edi, ebp
test bp, 0x727e
add edi, 4
jmp 0x6d7980
call fcn.006c754e
mov dword [ebp - 0x60], eax
movsx cx, cl
push 0x575bae
movzx ecx, cx
mov ecx, ecx
push dword [ebp - 0x60]
mov ecx, 2
jmp 0x68e9d2
push 0xa
jmp 0x5fb9cb
stosd dword es:[edi], eax
lodsd eax, dword [esi]
test ax, si
jmp 0x623d5b
push 1
jmp 0x5dc637
call fcn.006ee289
mov dword [ebp - 0x68], eax
not bh
bt bx, 0x64
shrd bx, cx, 0xf6
mov ebx, dword [ebp - 0x64]
stc
test ebx, ebx
je 0x69a8ef
push ebx
jmp 0x69a8e7
push eax
jmp 0x64cf0d
call fcn.00550ea0
add esp, 8
mov eax, dword [ebp - 0x68]
cmovl bx, dx
jmp 0x5b93f3
call fcn.00550adc
pop ecx
movzx ebx, cx
mov di, 0xd1a
pop esi
bswap edi
xchg bx, di
mov edi, eax
bswap bx
rep movsb byte es:[edi], byte [esi]
mov ebx, 0x61c7a00
movsx ebx, bp
pop edi
mov si, 0x1dd8
pop esi
bswap cx
stosd dword es:[edi], eax
cbw
mov ecx, 3
mov ebx, 0x576d0bfc
rep movsd dword es:[edi], dword [esi]
or ax, si
pop eax
pop edi
shr bl, 0x1d
sub bx, 0x55d4
mov dword [edi], eax
btc ebx, ebx
and bl, 0x72
mov ebx, dword [ebp - 0x64]
clc
push ebx
cmp ah, dh
lea ebx, [ebx + 4]
push ebx
clc
stc
mov ebx, dword [ebx]
test ebx, ebx
jmp 0x630dea
push esi
test si, dx
push edi
test esi, edi
stc
clc
test eax, eax
je 0x61883d
push eax
test dx, 0x1036
clc
mov eax, dword [eax + 4]
test di, ax
add eax, 8
jmp 0x62a967
push eax
jmp 0x61881b
je 0x69eb88
push ebx
jmp 0x69eb75
push edi
test eax, eax
je 0x6de9d8
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00550adc
pop ecx
mov edi, 0x4258652e
jmp 0x6de9c6
mov dword [esp + 8], 0xfd091814
add dword [esp], 0x1361a0
push edx
call fcn.00663791
call fcn.00539f3c
add esp, 8
bsf ebx, edx
mov dword [ebp - 0x64], eax
rcl ebx, 0x47
mov ebx, dword [ebp - 0x60]
cmc
stc
test ebx, ebx
jmp 0x5886dd
push eax
jmp 0x53c56b
call fcn.006ee289
mov dword [ebp - 0x68], eax
mov ebx, dword [ebp - 0x64]
test dl, bh
cmc
clc
test ebx, ebx
jmp 0x53cbe2
push eax
jmp 0x59cd74
push edi
jmp 0x5a5f75
push eax
jmp 0x69d1e8
call fcn.00539f3c
add esp, 8
cmc
mov dword [ebp - 0x64], eax
bsf bx, bp
shld ebx, ebp, 0x9d
adc ebx, 0x82b7d16
mov ebx, dword [ebp - 0x60]
test ebx, ebx
jmp 0x5bb2c5
push eax
mov ax, sp
cwde
lodsd eax, dword [esi]
jmp 0x5e8a9e
push eax
jmp 0x5ff07c
call fcn.00550ad6
add esp, 4
lea eax, [ebp - 0x1c]
push eax
push 4
seto al
lahf
jmp 0x70a1ff
push eax
jmp 0x7017e9
mov eax, dword [ebp - 0x74]
inc eax
cmp esp, eax
shl eax, 2
jmp 0x6f7f14
push 0x14
jmp 0x6fcc2e
call fcn.00550ad6
add esp, 4
mov ebx, 0x2b1d2688
bswap bx
not bx
pop ebx
call fcn.00550ad6
add esp, 4
jmp 0x5e629f
call fcn.00550ad6
add esp, 4
setno ah
cbw
lea eax, [ebp - 0x64]
jmp 0x5a3562
mov dword [ebp - 0x70], ebx
jmp 0x5c9f7f
mov dword [ebp - 0x70], ebx
jmp 0x6eb485
call fcn.00550ad6
add esp, 4
lea eax, [ebp - 0x64]
jmp 0x58d2d2
push eax
bswap ax
push 4
cbw
mov eax, 2
jmp 0x617bbb
cmp edi, ebx
jmp 0x5c76d5
je 0x5bc676
push ebx
jmp 0x5bc663
push 0x14
jmp 0x70a708
pop esi
mov ebx, eax
cmovge ebx, eax
mov edi, eax
movzx ebx, cx
mov ebx, 0x204820f7
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
xchg ebx, ecx
bswap cx
mov ecx, 3
cwde
movzx ebx, bp
rep movsd dword es:[edi], dword [esi]
ror bl, 0x98
shr bx, 0xf1
xor di, bp
pop eax
bts ebx, edi
add ebx, 0x247628ed
bt ebx, eax
pop edi
bt bx, cx
mov dword [edi], eax
test eax, ebx
rcr ebx, 0x4d
mov ebx, dword [ebp - 0x68]
test ecx, edi
push ebx
test eax, ebx
lea ebx, [ebx + 4]
cmp si, cx
push ebx
cmp dx, 0x455a
cmp cx, di
test esp, ecx
mov ebx, dword [ebx]
test ah, 0x9f
cmp edx, edi
test ebx, ebx
jmp 0x6ffa19
call fcn.00535a4d
mov dword [ebp - 0x70], ecx
neg al
mov edi, dword [ebp - 0x6c]
movzx eax, sp
btr eax, 0x50
xor ax, bp
mov dword [edi], 1
rcl ah, 0x7f
sbb ah, 0xf2
cmp ax, bx
add edi, 4
lahf
mov eax, ebp
mov eax, ecx
jmp 0x595265
add eax, 8
jmp 0x65cbe4
call fcn.00550ea0
add esp, 8
mov bl, 0x5f
movzx ax, bl
mov eax, dword [ebp - 0x64]
mov bx, sp
mov dword [ebp - 0x68], eax
mov ebx, dword [ebp - 0x1c]
jmp 0x5bc4b3
call fcn.00550adc
add esp, 4
mov si, si
movzx edi, dx
pop esi
cmovae edi, ecx
mov edi, eax
push eax
cmovae eax, ebx
lahf
lodsd eax, dword [esi]
jmp 0x5d77b4
je 0x5cdf7a
push ebx
call fcn.00550ad6
add esp, 4
jmp 0x5cdf7a
call fcn.006ee289
mov dword [ebp - 0x64], eax
mov ebx, dword [ebp - 0x60]
jmp 0x5b5f01
push eax
cwde
cmovb eax, ebp
lea eax, [ebp - 0x20]
jmp 0x69ae0e
mov eax, 2
call fcn.00550ea0
add esp, 8
cbw
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x6c], eax
mov ebx, 0x54273b0a
mov ebx, dword [ebp - 0x1c]
jmp 0x6bceca
call fcn.00550adc
add esp, 4
mov si, 0x1f01
xchg edi, edi
pop esi
mov edi, eax
jmp 0x69623d