Function at 0x5a7a30
Capabilities:
Contain obfuscated stackstrings
Encode data using base64

Disassembly:
sub esp, 0x28
mov eax, dword [0x83e264]
xor eax, esp
mov dword [esp + 0x24], eax
push ebx
push ebp
mov ebp, dword [esp + 0x38]
xor ebx, ebx
mov dword [esp + 0x10], ebx
push edi
test ebp, ebp
jne 0x5a7a54
lea eax, [ebx + 1]
jmp 0x5a7a67
lea ecx, [ebp - 1]
mov eax, 0xaaaaaaab
mul ecx
shr edx, 1
lea eax, [edx*4 + 5]
push eax
mov dword [esp + 0x10], eax
call fcn.0053dc5a
mov edi, eax
add esp, 4
mov dword [esp + 0x1c], edi
test edi, edi
jne 0x5a7ab7
call fcn.004f4dc0
test eax, eax
je 0x5a7aa3
push str.Azure_Base64_Encode::_Allocation_failed.
push 1
push 0xfe
push str._Base64_Encode_Internal
push str.C:Userslaurence_liuDesktop_vcpkg_2023.02.24_buildtrees_azure_c_shared_utility_src10753faee5_044a82ff07.clean_src_azure_base64.c
push edi
call eax
add esp, 0x18
pop edi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x24]
xor ecx, esp
call fcn.0051deb6
add esp, 0x28
ret
push esi
xor esi, esi
cmp ebp, 3
jb 0x5a7be6
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x14], 4
add ebp, 2
mov al, byte [ebp - 2]
mov bl, al
shr bl, 2
cmp bl, 0x1a
jae 0x5a7ae4
add bl, 0x41
jmp 0x5a7b02
cmp bl, 0x34
jae 0x5a7aee
add bl, 0x47
jmp 0x5a7b02
cmp bl, 0x3e
jae 0x5a7af8
sub bl, 4
jmp 0x5a7b02
setne bl
lea ebx, [ebx*4 + 0x2b]
mov dl, byte [ebp - 1]
and al, 3
mov cl, dl
shl al, 4
shr cl, 4
or al, cl
cmp al, 0x1a
jae 0x5a7b19
add al, 0x41
jmp 0x5a7b33
cmp al, 0x34
jae 0x5a7b21
add al, 0x47
jmp 0x5a7b33
cmp al, 0x3e
jae 0x5a7b29
sub al, 4
jmp 0x5a7b33
setne al
lea eax, [eax*4 + 0x2b]
mov cl, byte [ebp]
and dl, 0xf
mov dword [esp + 0x1c], ecx
shl dl, 2
shr cl, 6
or dl, cl
cmp dl, 0x1a
jae 0x5a7b4f
add dl, 0x41
jmp 0x5a7b6d
cmp dl, 0x34
jae 0x5a7b59
add dl, 0x47
jmp 0x5a7b6d
cmp dl, 0x3e
jae 0x5a7b63
sub dl, 4
jmp 0x5a7b6d
setne dl
lea edx, [edx*4 + 0x2b]
mov ecx, dword [esp + 0x1c]
and cl, 0x3f
cmp cl, 0x1a
jae 0x5a7b7e
add cl, 0x41
jmp 0x5a7b9c
cmp cl, 0x34
jae 0x5a7b88
add cl, 0x47
jmp 0x5a7b9c
cmp cl, 0x3e
jae 0x5a7b92
sub cl, 4
jmp 0x5a7b9c
setne cl
lea ecx, [ecx*4 + 0x2b]
mov edi, dword [esp + 0x14]
add ebp, 3
add dword [esp + 0x18], 3
cmp edi, dword [esp + 0x10]
mov edi, dword [esp + 0x20]
ja 0x5a7c18
mov byte [esi + edi], bl
mov ebx, dword [esp + 0x18]
mov byte [esi + edi + 1], al
mov eax, dword [esp + 0x40]
mov byte [esi + edi + 2], dl
sub eax, ebx
mov byte [esi + edi + 3], cl
add esi, 4
mov ecx, dword [esp + 0x14]
add ecx, 4
mov dword [esp + 0x14], ecx
cmp eax, 3
jae 0x5a7ad2
mov ebp, dword [esp + 0x40]
sub ebp, ebx
cmp ebp, 2
jne 0x5a7cb1
lea eax, [esi + 4]
cmp eax, dword [esp + 0x10]
jbe 0x5a7c36
call fcn.004f4dc0
test eax, eax
je 0x5a7d3d
push str.Azure_Base64_Encode::_Invalid_buffer_size.
push 1
push 0x129
jmp 0x5a7d2c
call fcn.004f4dc0
test eax, eax
je 0x5a7d3d
push str.Azure_Base64_Encode::_Invalid_buffer_size.
push 1
push 0x11a
jmp 0x5a7d2c
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x24], 0x4d494541
mov dword [esp + 0x28], 0x63595551
mov dword [esp + 0x2c], 0x736f6b67
mov cl, byte [ebx + eax]
mov dl, byte [ebx + eax + 1]
mov al, cl
shr al, 2
movzx eax, al
push eax
mov dword [esp + 0x34], 0x38343077
call fcn.005a8020
mov byte [esi + edi], al
and cl, 3
mov al, dl
shl cl, 4
shr al, 4
or cl, al
movzx eax, cl
push eax
call fcn.005a8020
mov byte [esi + edi + 1], al
add esp, 8
movzx ecx, dl
and ecx, 0xf
mov eax, ecx
and ecx, 3
shr eax, 2
shl ecx, 3
mov eax, dword [esp + eax*4 + 0x24]
shr eax, cl
mov byte [esi + edi + 2], al
mov byte [esi + edi + 3], 0x3d
jmp 0x5a7d0b
cmp ebp, 1
jne 0x5a7d0e
lea eax, [esi + 4]
cmp eax, dword [esp + 0x10]
jbe 0x5a7cd5
call fcn.004f4dc0
test eax, eax
je 0x5a7d3d
push str.Azure_Base64_Encode::_Invalid_buffer_size.
push ebp
push 0x13e
jmp 0x5a7d2c
mov eax, dword [esp + 0x3c]
mov cl, byte [ebx + eax]
mov al, cl
shr al, 2
movzx eax, al
push eax
call fcn.005a8020
movzx ecx, cl
add esp, 4
mov byte [esi + edi], al
and ecx, 3
shl ecx, 3
mov eax, 0x77675141
shr eax, cl
mov byte [esi + edi + 1], al
mov word [esi + edi + 2], 0x3d3d
add esi, 4
lea eax, [esi + 1]
cmp eax, dword [esp + 0x10]
jbe 0x5a7d5b
call fcn.004f4dc0
test eax, eax
je 0x5a7d3d
push str.Azure_Base64_Encode::_Invalid_buffer_size.
push 1
push 0x151
push str._Base64_Encode_Internal
push str.C:Userslaurence_liuDesktop_vcpkg_2023.02.24_buildtrees_azure_c_shared_utility_src10753faee5_044a82ff07.clean_src_azure_base64.c
push 0
call eax
add esp, 0x18
push edi
call fcn.00531f15
add esp, 4
xor eax, eax
pop esi
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 0x24]
xor ecx, esp
call fcn.0051deb6
add esp, 0x28
ret
push edi
mov byte [esi + edi], 0
call fcn.005a5110
mov esi, eax
add esp, 4
test esi, esi
jne 0x5a7d9c
push edi
call fcn.00531f15
add esp, 4
call fcn.004f4dc0
test eax, eax
je 0x5a7d9c
push str.Azure_Base64_Encode::_Allocation_failed_for_return_value.
push 1
push 0x166
push str._Base64_Encode_Internal
push str.C:Userslaurence_liuDesktop_vcpkg_2023.02.24_buildtrees_azure_c_shared_utility_src10753faee5_044a82ff07.clean_src_azure_base64.c
push esi
call eax
add esp, 0x18
mov ecx, dword [esp + 0x34]
mov eax, esi
pop esi
pop edi
pop ebp
pop ebx
xor ecx, esp
call fcn.0051deb6
add esp, 0x28
ret