Function at 0x487270
Capabilities:
Hash data using sha1
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
push esi
mov esi, ecx
push edi
push 0x592ce0
push 0x560
mov eax, dword [esi]
push str.c:projectswiperinstallerlibsmbedtls_2.7.0library_ssl_cli.c
push 2
push esi
mov edx, dword [eax + 0xcc]
mov eax, dword [esi + 0x70]
and edx, 2
or edx, 1
lea edi, [eax + edx*4]
call fcn.00475430
add esp, 0x14
mov edx, 3
mov ecx, esi
push 2
push edi
push str.server_version
push 0x568
push str.c:projectswiperinstallerlibsmbedtls_2.7.0library_ssl_cli.c
call fcn.00475580
mov eax, dword [esi]
add esp, 0x14
movzx edx, byte [edi]
movzx ebx, byte [edi + 1]
test byte [eax + 0xcc], 2
je 0x4872f8
mov eax, 0x100
mov ecx, 0x101
sub eax, ebx
sub ecx, edx
cmp ebx, 0xff
lea edx, [eax + 1]
cmovne edx, eax
mov eax, dword [esi]
jmp 0x4872fc
mov ecx, edx
mov edx, ebx
cmp ecx, 3
jl 0x48750a
cmp edx, 2
jl 0x48750a
movzx eax, byte [eax + 0xc8]
cmp ecx, eax
jg 0x48750a
mov eax, dword [esi]
movzx eax, byte [eax + 0xc9]
cmp edx, eax
jg 0x48750a
mov al, byte [edi + 2]
mov edx, 3
movzx ebx, al
add edi, 3
push ebx
push edi
push str.cookie
push 0x57e
push str.c:projectswiperinstallerlibsmbedtls_2.7.0library_ssl_cli.c
mov ecx, esi
mov byte [ebp - 1], al
call fcn.00475580
mov eax, dword [esi + 0x7c]
add esp, 0x14
sub eax, edi
add eax, dword [esi + 0x70]
cmp eax, ebx
jge 0x48739a
push str.cookie_length_does_not_match_incoming_message_size
push 0x583
push str.c:projectswiperinstallerlibsmbedtls_2.7.0library_ssl_cli.c
push 1
push esi
call fcn.00475430
add esp, 0x14
mov dl, 2
mov ecx, esi
push 0x32
call fcn.0046a220
mov eax, 0xffff8680
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x3c]
push dword [eax + 0x1e0]
call fcn.00529d29
add esp, 4
push ebx
push 1
call fcn.0052fab7
mov ecx, dword [esi + 0x3c]
add esp, 8
mov dword [ecx + 0x1e0], eax
mov eax, dword [esi + 0x3c]
push ebx
mov eax, dword [eax + 0x1e0]
test eax, eax
jne 0x4873f3
push str.alloc_failed___d_bytes_
push 0x58e
push str.c:projectswiperinstallerlibsmbedtls_2.7.0library_ssl_cli.c
push 1
push esi
call fcn.00475430
add esp, 0x18
mov eax, 0xffff8100
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push edi
push eax
call fcn.00524840
mov eax, dword [esi + 0x3c]
add esp, 0xc
mov cl, byte [ebp - 1]
mov edx, 1
mov byte [eax + 0x1e4], cl
mov eax, dword [esi + 0x3c]
mov dword [esi + 4], 1
add eax, 0x20c
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0x67452301
mov dword [eax + 0xc], 0xefcdab89
mov dword [eax + 0x10], 0x98badcfe
mov dword [eax + 0x14], 0x10325476
mov eax, dword [esi + 0x3c]
add eax, 0x264
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0x67452301
mov dword [eax + 0xc], 0xefcdab89
mov dword [eax + 0x10], 0x98badcfe
mov dword [eax + 0x14], 0x10325476
mov dword [eax + 0x18], 0xc3d2e1f0
mov eax, dword [esi + 0x3c]
add eax, 0x2c0
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0x6a09e667
mov dword [eax + 0xc], 0xbb67ae85
mov dword [eax + 0x10], 0x3c6ef372
mov dword [eax + 0x14], 0xa54ff53a
mov dword [eax + 0x18], 0x510e527f
mov dword [eax + 0x1c], 0x9b05688c
mov dword [eax + 0x20], 0x1f83d9ab
mov dword [eax + 0x24], 0x5be0cd19
mov dword [eax + 0x68], 0
mov ecx, dword [esi + 0x3c]
add ecx, 0x330
call fcn.00476850
mov ecx, esi
call fcn.004687b0
push str.__parse_hello_verify_request
push 0x59b
push str.c:projectswiperinstallerlibsmbedtls_2.7.0library_ssl_cli.c
push 2
push esi
call fcn.00475430
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.bad_server_version
push 0x575
push str.c:projectswiperinstallerlibsmbedtls_2.7.0library_ssl_cli.c
push 1
push esi
call fcn.00475430
add esp, 0x14
mov dl, 2
mov ecx, esi
push 0x46
call fcn.0046a220
add esp, 4
mov eax, 0xffff9180
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret