Function at 0x5a702c
Capabilities:
Authenticate hmac

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffef4
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x10c], edx
mov dword [ebp - 0x104], edx
mov dword [ebp - 0x100], edx
mov dword [ebp - 0xfc], edx
mov dword [ebp - 4], edx
mov dword [ebp - 8], edx
mov dword [ebp - 0xc], edx
mov edi, eax
xor eax, eax
push ebp
push 0x5a72c0
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [edi + 0xd4], 0
je 0x5a7087
mov dx, word [edi + 0xd4]
mov eax, edi
mov ecx, dword [eax]
call dword [ecx + 0x3c]
jmp 0x5a728a
mov eax, dword [edi + 0xc0]
call fcn.0069abb4
cmp eax, 5
jge 0x5a70c4
mov ecx, dword [edi + 0xc0]
lea eax, [edi + 0xc0]
mov edx, 0x5a72d8
call fcn.0069ac00
mov eax, edi
call sym.MassSender.exe__Smtpprot_TCustomSmtpClient_SetErrorMessage_qqrv
mov dx, 0x1f4
mov eax, edi
mov ecx, dword [eax]
call dword [ecx + 0x3c]
jmp 0x5a728a
lea eax, [ebp - 4]
push eax
mov eax, dword [edi + 0xc0]
call fcn.0069abb4
mov ecx, eax
sub ecx, 4
mov eax, dword [edi + 0xc0]
mov edx, 5
call fcn.0069adbc
lea edx, [ebp - 0xfc]
mov eax, dword [ebp - 4]
call fcn.005a5a8c
mov edx, dword [ebp - 0xfc]
lea eax, [ebp - 4]
call fcn.0069a9cc
xor esi, esi
lea ebx, [ebp - 0xb8]
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x10], eax
mov eax, dword [edi + 0x3c]
call fcn.0069abb4
lea edx, [esi + 1]
cmp eax, edx
jl 0x5a713d
mov eax, dword [edi + 0x3c]
mov al, byte [eax + esi]
xor al, 0x36
mov byte [ebx], al
mov eax, dword [edi + 0x3c]
mov al, byte [eax + esi]
xor al, 0x5c
mov edx, dword [ebp - 0x10]
mov byte [edx], al
jmp 0x5a7146
mov byte [ebx], 0x36
mov eax, dword [ebp - 0x10]
mov byte [eax], 0x5c
inc esi
inc dword [ebp - 0x10]
inc ebx
cmp esi, 0x40
jne 0x5a7115
lea eax, [ebp - 0x78]
call sym.MassSender.exe__Md5_MD5Init_qqrr15Md5_TMD5Context
lea edx, [ebp - 0xb8]
lea eax, [ebp - 0x78]
mov ecx, 0x40
call sym.MassSender.exe__Md5_MD5Update_qqrr15Md5_TMD5Contextpxvi
mov eax, dword [ebp - 4]
call fcn.0069abb4
push eax
lea eax, [ebp - 4]
call fcn.0069ad84
mov edx, eax
lea eax, [ebp - 0x78]
pop ecx
call sym.MassSender.exe__Md5_MD5UpdateBuffer_qqrr15Md5_TMD5Contextpvi
lea edx, [ebp - 0x78]
lea eax, [ebp - 0x20]
call sym.MassSender.exe__Md5_MD5Final_qqrpcr15Md5_TMD5Context
lea eax, [ebp - 0x78]
call sym.MassSender.exe__Md5_MD5Init_qqrr15Md5_TMD5Context
lea edx, [ebp - 0xf8]
lea eax, [ebp - 0x78]
mov ecx, 0x40
call sym.MassSender.exe__Md5_MD5Update_qqrr15Md5_TMD5Contextpxvi
lea edx, [ebp - 0x20]
lea eax, [ebp - 0x78]
mov ecx, 0x10
call sym.MassSender.exe__Md5_MD5Update_qqrr15Md5_TMD5Contextpxvi
lea edx, [ebp - 0x78]
lea eax, [ebp - 0x20]
call sym.MassSender.exe__Md5_MD5Final_qqrpcr15Md5_TMD5Context
lea eax, [ebp - 0xc]
mov edx, 0x5a7300
call fcn.0069a9cc
lea eax, [ebp - 8]
mov edx, dword [edi + 0x38]
call fcn.0069a9cc
lea eax, [ebp - 8]
mov edx, 0x5a731c
call fcn.0069abbc
mov esi, 0x10
lea ebx, [ebp - 0x20]
lea eax, [ebp - 0x100]
mov dl, byte [ebx]
and dl, 0xf0
and edx, 0xff
shr edx, 4
mov ecx, dword [ebp - 0xc]
mov dl, byte [ecx + edx]
call fcn.0069aadc
mov edx, dword [ebp - 0x100]
lea eax, [ebp - 8]
call fcn.0069abbc
lea eax, [ebp - 0x104]
mov dl, byte [ebx]
and dl, 0xf
and edx, 0xff
mov ecx, dword [ebp - 0xc]
mov dl, byte [ecx + edx]
call fcn.0069aadc
mov edx, dword [ebp - 0x104]
lea eax, [ebp - 8]
call fcn.0069abbc
inc ebx
dec esi
jne 0x5a71f5
mov byte [edi + 0xb0], 4
mov word [ebp - 0x108], 0xeb
lea eax, [ebp - 0x108]
push eax
push 0
push 0
push 0
lea edx, [ebp - 0x10c]
mov eax, dword [ebp - 8]
call fcn.005a588c
mov ecx, dword [ebp - 0x10c]
mov dl, 0xb
mov eax, edi
call sym.MassSender.exe__Smtpprot_TCustomSmtpClient_ExecAsync_qqr21Smtpprot_TSmtpRequest17System_AnsiStringpxusxiynpqqrv_v
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5a72c7
lea eax, [ebp - 0x10c]
call fcn.0069a934
lea eax, [ebp - 0x104]
mov edx, 3
call fcn.0069a958
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.0069a958
ret