Function at 0x632eb273
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4c
mov dword [ebp - 0x1c], 0xffff8f80
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
movzx eax, byte [eax + 0xcc]
shr al, 2
and eax, 3
movzx eax, al
mov dword [ebp - 0x24], eax
mov dword [esp + 0x10], 0x633e9af0
mov dword [esp + 0xc], 0x1063
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 2
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x10]
cmp eax, 5
je 0x632eb2fd
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x10]
cmp eax, 6
je 0x632eb2fd
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x10]
cmp eax, 8
je 0x632eb2fd
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x10]
cmp eax, 0xb
jne 0x632eb341
mov dword [esp + 0x10], str.__skip_parse_certificate
mov dword [esp + 0xc], 0x106a
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 2
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
lea edx, [eax + 1]
mov eax, dword [ebp + 8]
mov dword [eax + 4], edx
mov eax, 0
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov eax, dword [eax]
movzx eax, byte [eax + 0xcc]
and eax, 1
test al, al
je 0x632eb3a3
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x10]
cmp eax, 7
jne 0x632eb3a3
mov dword [esp + 0x10], str.__skip_parse_certificate
mov dword [esp + 0xc], 0x1073
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 2
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
lea edx, [eax + 1]
mov eax, dword [ebp + 8]
mov dword [eax + 4], edx
mov eax, 0
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + 0x1cc]
cmp eax, 3
je 0x632eb3c3
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + 0x1cc]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
movzx eax, byte [eax + 0xcc]
and eax, 1
test al, al
je 0x632eb42d
cmp dword [ebp - 0x24], 0
jne 0x632eb42d
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov dword [eax + 0x64], pe_nt_image_headers32
mov dword [esp + 0x10], str.__skip_parse_certificate
mov dword [esp + 0xc], 0x1081
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 2
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
lea edx, [eax + 1]
mov eax, dword [ebp + 8]
mov dword [eax + 4], edx
mov eax, 0
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.632ea5a1
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x632eb47b
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0x633e9b1f
mov dword [esp + 0xc], 0x1089
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b645
mov eax, dword [ebp - 0x1c]
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
lea edx, [eax + 1]
mov eax, dword [ebp + 8]
mov dword [eax + 4], edx
mov eax, dword [ebp + 8]
mov eax, dword [eax]
movzx eax, byte [eax + 0xcc]
and eax, 1
test al, al
je 0x632eb534
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x632eb534
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x7c]
cmp eax, 2
jne 0x632eb534
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x78]
cmp eax, 0x15
jne 0x632eb534
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x70]
movzx eax, byte [eax]
cmp al, 1
jne 0x632eb534
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x70]
add eax, 1
movzx eax, byte [eax]
cmp al, 0x29
jne 0x632eb534
mov dword [esp + 0x10], str.SSLv3_client_has_no_certificate
mov dword [esp + 0xc], 0x109c
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov dword [eax + 0x64], 0x40
cmp dword [ebp - 0x24], 1
jne 0x632eb52a
mov eax, 0
jmp 0x632ebce4
mov eax, 0xffff8b80
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov eax, dword [eax]
movzx eax, byte [eax + 0xcc]
and eax, 1
test al, al
je 0x632eb619
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x14]
test eax, eax
je 0x632eb619
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0xa0]
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.632e2eaa
add eax, 3
cmp ebx, eax
jne 0x632eb619
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x78]
cmp eax, 0x16
jne 0x632eb619
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x70]
movzx eax, byte [eax]
cmp al, 0xb
jne 0x632eb619
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0x70]
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.632e2eaa
add eax, ebx
mov dword [esp + 8], 3
mov dword [esp + 4], 0x633e967a
mov dword [esp], eax
call sub.msvcr100.dll_memcmp
test eax, eax
jne 0x632eb619
mov dword [esp + 0x10], str.TLSv1_client_has_no_certificate
mov dword [esp + 0xc], 0x10b1
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov dword [eax + 0x64], 0x40
cmp dword [ebp - 0x24], 1
jne 0x632eb60f
mov eax, 0
jmp 0x632ebce4
mov eax, 0xffff8b80
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x78]
cmp eax, 0x16
je 0x632eb659
mov dword [esp + 0x10], str.bad_certificate_message
mov dword [esp + 0xc], 0x10c0
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, 0xffff8900
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x70]
movzx eax, byte [eax]
cmp al, 0xb
jne 0x632eb681
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0xa0]
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.632e2eaa
add eax, 6
cmp ebx, eax
jae 0x632eb6b6
mov dword [esp + 0x10], str.bad_certificate_message
mov dword [esp + 0xc], 0x10c7
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, 0xffff8600
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.632e2eaa
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x70]
mov eax, dword [ebp - 0x20]
add eax, 1
add eax, edx
movzx eax, byte [eax]
movzx eax, al
shl eax, 8
mov edx, eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x70]
mov eax, dword [ebp - 0x20]
add eax, 2
add eax, ecx
movzx eax, byte [eax]
movzx eax, al
or eax, edx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x70]
mov eax, dword [ebp - 0x20]
add eax, edx
movzx eax, byte [eax]
test al, al
jne 0x632eb72a
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0xa0]
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.632e2eaa
mov edx, eax
mov eax, dword [ebp - 0x34]
add eax, edx
add eax, 3
cmp ebx, eax
je 0x632eb75f
mov dword [esp + 0x10], str.bad_certificate_message
mov dword [esp + 0xc], 0x10d5
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, 0xffff8600
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x60]
test eax, eax
je 0x632eb78e
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x60]
mov dword [esp], eax
call fcn.632f4493
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x60]
mov dword [esp], eax
call sub.msvcr100.dll_free
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0x38]
mov dword [esp + 4], 0x138
mov dword [esp], 1
call sub.msvcr100.dll_calloc
mov dword [ebx + 0x60], eax
mov eax, dword [ebx + 0x60]
test eax, eax
jne 0x632eb7ef
mov dword [esp + 0x14], 0x138
mov dword [esp + 0x10], str.alloc__d_bytes__failed
mov dword [esp + 0xc], 0x10e4
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, 0xffff8100
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x60]
mov dword [esp], eax
call fcn.632f446f
add dword [ebp - 0x20], 3
jmp 0x632eb946
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x70]
mov eax, dword [ebp - 0x20]
add eax, edx
movzx eax, byte [eax]
test al, al
je 0x632eb850
mov dword [esp + 0x10], str.bad_certificate_message
mov dword [esp + 0xc], 0x10f0
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, 0xffff8600
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x70]
mov eax, dword [ebp - 0x20]
add eax, 1
add eax, edx
movzx eax, byte [eax]
movzx eax, al
shl eax, 8
mov edx, eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x70]
mov eax, dword [ebp - 0x20]
add eax, 2
add eax, ecx
movzx eax, byte [eax]
movzx eax, al
or eax, edx
mov dword [ebp - 0x34], eax
add dword [ebp - 0x20], 3
cmp dword [ebp - 0x34], 0x7f
jbe 0x632eb8a1
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
add edx, eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xa0]
cmp edx, eax
jbe 0x632eb8d6
mov dword [esp + 0x10], str.bad_certificate_message
mov dword [esp + 0xc], 0x10fa
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, 0xffff8600
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x70]
mov eax, dword [ebp - 0x20]
add edx, eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x60]
mov ecx, dword [ebp - 0x34]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.632f1822
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x632eb940
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], str._mbedtls_x509_crt_parse_der
mov dword [esp + 0xc], 0x1102
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b645
mov eax, dword [ebp - 0x1c]
jmp 0x632ebce4
mov eax, dword [ebp - 0x34]
add dword [ebp - 0x20], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xa0]
cmp dword [ebp - 0x20], eax
jb 0x632eb809
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x60]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], str.peer_certificate
mov dword [esp + 0xc], 0x1109
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 3
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331c060
mov eax, dword [ebp + 8]
mov eax, dword [eax]
movzx eax, byte [eax + 0xcc]
and eax, 1
test al, al
jne 0x632eba81
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
cmp eax, 1
jne 0x632eba81
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x34]
mov eax, dword [eax + 0x60]
test eax, eax
jne 0x632eb9f8
mov dword [esp + 0x10], str.new_server_cert_during_renegotiation
mov dword [esp + 0xc], 0x1115
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, 0xffff8600
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x34]
mov eax, dword [eax + 0x60]
mov edx, dword [eax + 4]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + 4]
cmp edx, eax
jne 0x632eba4c
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x34]
mov eax, dword [eax + 0x60]
mov ecx, dword [eax + 4]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x60]
mov edx, dword [eax + 8]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x34]
mov eax, dword [eax + 0x60]
mov eax, dword [eax + 8]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.msvcr100.dll_memcmp
test eax, eax
je 0x632eba81
mov dword [esp + 0x10], str.server_cert_changed_during_renegotiation
mov dword [esp + 0xc], 0x111f
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, 0xffff8600
jmp 0x632ebce4
cmp dword [ebp - 0x24], 0
je 0x632ebcb6
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + 0x1d4]
test eax, eax
je 0x632ebabb
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + 0x1d4]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + 0x1d8]
mov dword [ebp - 0x2c], eax
jmp 0x632ebad1
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov eax, dword [eax + 0x6c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov eax, dword [eax + 0x70]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x28], 0
jne 0x632ebb0c
mov dword [esp + 0x10], str.got_no_CA_chain
mov dword [esp + 0xc], 0x1139
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, 0xffff8980
jmp 0x632ebce4
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov edi, dword [eax + 0x38]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov esi, dword [eax + 0x34]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
lea ebx, [eax + 0x64]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd8]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov edx, dword [eax + 0x64]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x60]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], edx
mov edx, dword [ebp - 0x2c]
mov dword [esp + 8], edx
mov edx, dword [ebp - 0x28]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.632f4053
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x632ebba4
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], str.x509_verify_cert
mov dword [esp + 0xc], 0x114a
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b645
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0x60]
add eax, 0xbc
mov dword [ebp - 0x38], eax
mov dword [esp + 4], 2
mov eax, dword [ebp - 0x38]
mov dword [esp], eax
call fcn.6330f3c5
test eax, eax
je 0x632ebc2d
mov eax, dword [ebp - 0x38]
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.632e2de8
mov eax, dword [eax]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.632f0485
test eax, eax
je 0x632ebc2d
mov dword [esp + 0x10], str.bad_certificate__EC_key_curve_
mov dword [esp + 0xc], 0x1159
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
cmp dword [ebp - 0x1c], 0
jne 0x632ebc2d
mov dword [ebp - 0x1c], 0xffff8600
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
lea ecx, [eax + 0x64]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
movzx eax, byte [eax + 0xcc]
and eax, 1
test al, al
sete al
movzx eax, al
mov edx, dword [ebp + 8]
mov edx, dword [edx + 0x38]
mov edx, dword [edx + 0x60]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x30]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.632f051d
test eax, eax
je 0x632ebca9
mov dword [esp + 0x10], str.bad_certificate__usage_extensions_
mov dword [esp + 0xc], 0x1165
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
cmp dword [ebp - 0x1c], 0
jne 0x632ebca9
mov dword [ebp - 0x1c], 0xffff8600
cmp dword [ebp - 0x24], 1
jne 0x632ebcb6
mov dword [ebp - 0x1c], 0
mov dword [esp + 0x10], str.__parse_certificate
mov dword [esp + 0xc], 0x116e
mov dword [esp + 8], str.ssl_tls.c
mov dword [esp + 4], 2
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6331b580
mov eax, dword [ebp - 0x1c]
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret