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

Disassembly:
mov eax, 0x90
call fcn.004dbc70
mov eax, dword [0x6d45e0]
xor eax, esp
mov dword [esp + 0x8c], eax
push ebx
xor eax, eax
mov dword [esp + 0xc], 0
push ebp
push esi
mov dword [esp + 0x30], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x34], eax
lea eax, [esp + 0x38]
push edi
mov edi, dword [esp + 0xa4]
push eax
call fcn.00516260
add esp, 4
cmp dword [edi + 0x34], 0x2150
jne 0x578c7e
mov eax, dword [edi + 0x58]
xor ebx, ebx
mov edx, dword [edi + 0x3c]
mov esi, dword [edi + 0x98]
mov dword [esp + 0x28], edx
mov eax, dword [eax + 0x344]
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 0
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x58], 0
mov dword [esp + 0x1c], ebx
test cl, 1
je 0x5784d9
mov ebp, dword [esi + 0x18]
test ebp, ebp
jne 0x5784a5
mov edx, dword [esi + 0x1c]
test edx, edx
je 0x5784c5
mov ecx, dword [eax + 0x20]
mov ebp, 0x200
test cl, 8
mov eax, 0x400
cmovne eax, ebp
and ecx, 2
push eax
push ecx
push edi
call edx
mov ebp, eax
add esp, 0xc
test ebp, ebp
jne 0x578499
push 0x697
push str.._ssl_s3_srvr.c
push 0x11a
jmp 0x578e33
push ebp
call fcn.005376f0
add esp, 4
mov dword [esi + 0x18], ebp
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x5c], eax
mov eax, dword [edi + 0x58]
mov dword [eax + 0x370], 1
jmp 0x5788c8
push 0x6a0
push str.._ssl_s3_srvr.c
push 0xac
jmp 0x578e33
test cl, 8
je 0x5785b9
mov ecx, dword [esi + 0x20]
test ecx, ecx
jne 0x578528
mov edx, dword [esi + 0x24]
test edx, edx
je 0x578514
mov ecx, dword [eax + 0x20]
mov esi, 0x200
test cl, 8
mov eax, 0x400
cmovne eax, esi
and ecx, 2
push eax
push ecx
push edi
call edx
mov ecx, eax
add esp, 0xc
test ecx, ecx
jne 0x578528
push 0x6b4
push str.._ssl_s3_srvr.c
push 0xab
jmp 0x578e33
mov eax, dword [edi + 0x58]
cmp dword [eax + 0x348], ebx
je 0x578553
push 0x6ba
push str.._ssl_s3_srvr.c
push 0x44
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e64
push ecx
call fcn.0053ffd0
mov esi, eax
add esp, 4
test esi, esi
jne 0x578582
push 0x6bf
push str.._ssl_s3_srvr.c
push 5
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e64
mov eax, dword [edi + 0x58]
push esi
mov dword [eax + 0x348], esi
call fcn.005392f0
add esp, 4
test eax, eax
jne 0x57859f
push 0x6c5
jmp 0x578567
mov eax, dword [esi + 8]
mov dword [esp + 0x58], eax
mov eax, dword [esi + 0xc]
mov dword [esp + 0x5c], eax
mov eax, dword [esi + 0x14]
mov dword [esp + 0x60], eax
jmp 0x5788c8
test cl, cl
jns 0x57884b
mov ecx, dword [esi + 0x28]
test ecx, ecx
jne 0x578607
mov edx, dword [esi + 0x2c]
test edx, edx
je 0x5785f3
mov ecx, dword [eax + 0x20]
mov esi, 0x200
test cl, 8
mov eax, 0x400
cmovne eax, esi
and ecx, 2
push eax
push ecx
push edi
call edx
mov ecx, eax
add esp, 0xc
test ecx, ecx
jne 0x578607
push 0x6dc
push str.._ssl_s3_srvr.c
push 0x137
jmp 0x578e33
mov eax, dword [edi + 0x58]
cmp dword [eax + 0x34c], ebx
je 0x57861c
push 0x6e2
jmp 0x578538
push ecx
call fcn.0053b480
mov esi, eax
add esp, 4
test esi, esi
jne 0x57864b
push 0x6ec
push str.._ssl_s3_srvr.c
push 0x2b
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e64
mov eax, dword [edi + 0x58]
push esi
mov dword [eax + 0x34c], esi
call fcn.0053b650
add esp, 4
test eax, eax
je 0x57867a
push esi
call fcn.00546430
add esp, 4
test eax, eax
je 0x57867a
test dword [edi + 0x100], 0x80000
je 0x5786a7
push esi
call fcn.0053b520
add esp, 4
test eax, eax
jne 0x5786a7
push 0x6f6
push str.._ssl_s3_srvr.c
push 0x2b
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e64
push esi
call fcn.004fd990
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x57882b
push esi
call fcn.0053b650
add esp, 4
test eax, eax
je 0x57882b
push esi
call fcn.00546430
add esp, 4
test eax, eax
je 0x57882b
mov eax, dword [edi + 0x58]
mov eax, dword [eax + 0x344]
test byte [eax + 0x20], 2
je 0x57871e
push ebx
call fcn.0053a3a0
add esp, 4
cmp eax, 0xa3
jle 0x57871e
push 0x705
push str.._ssl_s3_srvr.c
push 0x136
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e64
push ebx
call fcn.0056ec60
push eax
call fcn.005860a0
add esp, 8
mov dword [esp + 0x20], eax
test eax, eax
jne 0x578758
push 0x712
push str.._ssl_s3_srvr.c
push 0x13b
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e64
push 0
push 0
push 0
push 4
push esi
call fcn.0053b650
add esp, 4
push eax
push ebx
call fcn.00555020
push 0x720
mov ebp, eax
push str.._ssl_s3_srvr.c
push ebp
call fcn.00502ce0
add esp, 0x24
mov dword [esp + 0x18], eax
call fcn.0053e920
mov ecx, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x24], ecx
test eax, eax
je 0x57880b
test ecx, ecx
je 0x57880b
push ecx
push ebp
push eax
push 4
push esi
call fcn.0053b650
add esp, 4
push eax
push ebx
call fcn.00555020
mov ebx, eax
add esp, 0x18
mov dword [esp + 0x34], ebx
test ebx, ebx
jne 0x5787e2
push 0x72e
push str.._ssl_s3_srvr.c
push 0x2b
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e53
push dword [esp + 0x24]
call fcn.0053e890
add esp, 4
mov dword [esp + 0x24], 0
add ebx, 4
xorps xmm0, xmm0
mov dword [esp + 0x1c], ebx
movdqu xmmword [esp + 0x58], xmm0
jmp 0x5788c8
push 0x724
push str.._ssl_s3_srvr.c
push 0x41
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e53
push 0x6fe
push str.._ssl_s3_srvr.c
push 0x2b
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e64
test ecx, 0x100
je 0x578874
mov eax, dword [edi + 0xe4]
mov ebx, dword [eax + 0x14c]
lea ecx, [ebx + 1]
mov al, byte [ebx]
inc ebx
test al, al
jne 0x578862
sub ebx, ecx
add ebx, 2
mov dword [esp + 0x1c], ebx
jmp 0x5788c8
test ecx, 0x400
je 0x578e24
mov eax, dword [edi + 0x1a8]
test eax, eax
je 0x578e04
mov ecx, dword [edi + 0x1ac]
test ecx, ecx
je 0x578e04
mov edx, dword [edi + 0x1b0]
test edx, edx
je 0x578e04
mov esi, dword [edi + 0x1b4]
test esi, esi
je 0x578e04
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], esi
mov ebp, dword [esp + 0x14]
xor eax, eax
mov dword [esp + 0x10], eax
mov eax, dword [esp + eax*4 + 0x58]
test eax, eax
je 0x578917
push eax
call fcn.00510650
add eax, 7
add esp, 4
cdq
and edx, 7
lea ecx, [edx + eax]
mov eax, dword [esp + 0x10]
sar ecx, 3
mov dword [esp + eax*4 + 0x68], ecx
cmp eax, 2
jne 0x578908
test ebp, 0x400
je 0x578908
inc ebx
jmp 0x57890b
add ebx, 2
inc eax
add ebx, ecx
mov dword [esp + 0x10], eax
cmp eax, 4
jl 0x5788d2
mov eax, dword [edi + 0x58]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x1c], ebx
mov eax, dword [eax + 0x344]
test dword [eax + 0x10], 0x404
jne 0x578966
test dword [eax + 0xc], 0x100
jne 0x578966
lea ecx, [esp + 0x38]
push ecx
push eax
push edi
call fcn.0056fa80
mov esi, eax
add esp, 0xc
mov dword [esp + 0x30], esi
test esi, esi
jne 0x57895b
lea esi, [eax + 0x32]
jmp 0x578e47
push esi
call fcn.0052e5f0
add esp, 4
jmp 0x57896c
xor eax, eax
mov dword [esp + 0x30], eax
add eax, 4
add eax, ebx
push eax
push dword [esp + 0x2c]
call fcn.00502fa0
add esp, 8
test eax, eax
jne 0x5789a2
push 0x77c
push str.._ssl_s3_srvr.c
push 7
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e53
mov eax, dword [edi + 0x3c]
mov bl, byte [esp + 0x70]
mov eax, dword [eax + 4]
mov dword [esp + 0x54], eax
add eax, 4
mov dword [esp + 0x28], eax
mov esi, eax
xor eax, eax
mov dword [esp + 0x10], eax
nop
cmp dword [esp + eax*4 + 0x58], 0
je 0x578a13
cmp eax, 2
jne 0x5789d9
test ebp, 0x400
je 0x5789d9
mov byte [esi], bl
inc esi
jmp 0x5789f0
mov eax, dword [esp + eax*4 + 0x68]
sar eax, 8
mov byte [esi], al
mov eax, dword [esp + 0x10]
mov al, byte [esp + eax*4 + 0x68]
mov byte [esi + 1], al
add esi, 2
mov eax, dword [esp + 0x10]
push esi
push dword [esp + eax*4 + 0x5c]
call fcn.005100d0
mov eax, dword [esp + 0x18]
add esp, 8
add esi, dword [esp + eax*4 + 0x68]
inc eax
mov dword [esp + 0x10], eax
cmp eax, 4
jl 0x5789c0
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
test al, al
jns 0x578a5a
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x18]
mov word [esi], 3
mov byte [esi + 2], al
mov eax, dword [esp + 0x34]
push eax
mov byte [esi + 3], al
add esi, 4
push ebp
push esi
call fcn.004cf380
push ebp
call fcn.00502c60
mov eax, dword [esp + 0x24]
add esp, 0x10
add esi, dword [esp + 0x34]
mov dword [esp + 0x18], 0
test eax, 0x100
je 0x578adf
mov eax, dword [edi + 0xe4]
mov ecx, dword [eax + 0x14c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x578a74
sub ecx, edx
shr ecx, 8
mov byte [esi], cl
mov eax, dword [edi + 0xe4]
mov ecx, dword [eax + 0x14c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x578a91
sub ecx, edx
mov byte [esi + 1], cl
add esi, 2
mov eax, dword [edi + 0xe4]
mov edx, dword [eax + 0x14c]
mov ecx, edx
lea ebp, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x578ab1
sub ecx, ebp
push ecx
push edx
push esi
call fcn.00614ef0
mov eax, dword [edi + 0xe4]
add esp, 0xc
mov ecx, dword [eax + 0x14c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x578ad4
sub ecx, edx
add esi, ecx
mov ebp, dword [esp + 0x30]
test ebp, ebp
je 0x578c57
cmp dword [ebp], 6
jne 0x578cd5
mov ecx, dword [edi]
mov eax, ecx
and eax, 0xffffff00
cmp eax, 0x300
jne 0x578b11
cmp ecx, 0x303
jge 0x578cd5
lea eax, [esp + 0x78]
mov dword [esp + 0x20], 0
mov dword [esp + 0x14], eax
mov ebp, 2
lea eax, [esp + 0x3c]
push 8
push eax
call fcn.00507fe0
mov eax, dword [edi + 0xe4]
add esp, 8
cmp ebp, 2
jne 0x578b48
mov eax, dword [eax + 0x8c]
jmp 0x578b4e
mov eax, dword [eax + 0x90]
push 0
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00515e40
add esp, 0xc
test eax, eax
jle 0x578cb3
mov eax, dword [edi + 0x58]
add eax, 0xc0
push 0x20
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00515ff0
add esp, 0xc
test eax, eax
jle 0x578cb3
mov eax, dword [edi + 0x58]
add eax, 0xa0
push 0x20
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00515ff0
add esp, 0xc
test eax, eax
jle 0x578cb3
push ebx
push dword [esp + 0x2c]
lea eax, [esp + 0x44]
push eax
call fcn.00515ff0
add esp, 0xc
test eax, eax
jle 0x578cb3
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x18]
lea eax, [esp + 0x44]
push eax
call fcn.00515da0
add esp, 0xc
test eax, eax
jle 0x578cb3
mov ecx, dword [esp + 0x20]
dec ebp
mov eax, dword [esp + 0x10]
add ecx, eax
add dword [esp + 0x14], eax
mov dword [esp + 0x20], ecx
test ebp, ebp
jg 0x578b26
mov eax, dword [esp + 0x30]
push dword [eax + 0x14]
lea eax, [esp + 0x30]
push eax
lea eax, [esi + 2]
push eax
push ecx
lea eax, [esp + 0x88]
push eax
push 0x72
call fcn.005218c0
add esp, 0x18
test eax, eax
jg 0x578c40
push 0x7d3
push str.._ssl_s3_srvr.c
push 4
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e53
mov eax, dword [esp + 0x2c]
add ebx, 2
shr eax, 8
mov byte [esi], al
mov al, byte [esp + 0x2c]
mov byte [esi + 1], al
add ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x54]
mov eax, ebx
sar eax, 0x10
mov byte [ecx], 0xc
mov byte [ecx + 1], al
mov eax, ebx
sar eax, 8
mov byte [ecx + 2], al
lea eax, [ebx + 4]
mov byte [ecx + 3], bl
mov dword [edi + 0x44], eax
mov dword [edi + 0x48], 0
lea eax, [esp + 0x3c]
mov dword [edi + 0x34], 0x2151
push eax
call fcn.00516000
push 0x16
push edi
call fcn.005818b0
add esp, 0xc
mov ecx, dword [esp + 0x9c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004c392d
add esp, 0x90
ret
push 0x7ca
push str.._ssl_s3_srvr.c
push 6
push 0x9b
push 0x14
call fcn.004fef10
mov esi, 0x50
jmp 0x578e44
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x578df3
mov edx, dword [edi]
mov eax, edx
and eax, 0xffffff00
cmp eax, 0x300
jne 0x578d23
cmp edx, 0x303
jl 0x578d23
push ecx
push ebp
push esi
call fcn.00585fc0
add esp, 0xc
test eax, eax
jne 0x578d1c
push 0x7e3
push str.._ssl_s3_srvr.c
lea esi, [eax + 0x50]
push 0x44
jmp 0x578e38
mov ecx, dword [esp + 0x38]
add esi, 2
push 0
push ecx
lea eax, [esp + 0x44]
push eax
call fcn.00515e40
add esp, 0xc
test eax, eax
jle 0x578de9
mov eax, dword [edi + 0x58]
add eax, 0xc0
push 0x20
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00515ff0
add esp, 0xc
test eax, eax
jle 0x578de9
mov eax, dword [edi + 0x58]
add eax, 0xa0
push 0x20
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00515ff0
add esp, 0xc
test eax, eax
jle 0x578de9
push ebx
push dword [esp + 0x2c]
lea eax, [esp + 0x44]
push eax
call fcn.00515ff0
add esp, 0xc
test eax, eax
jle 0x578de9
push ebp
lea eax, [esp + 0x14]
push eax
lea eax, [esi + 2]
push eax
lea eax, [esp + 0x48]
push eax
call fcn.00551c40
add esp, 0x10
test eax, eax
jle 0x578de9
mov eax, dword [esp + 0x10]
sar eax, 8
mov byte [esi], al
mov al, byte [esp + 0x10]
mov byte [esi + 1], al
mov eax, dword [esp + 0x10]
mov ecx, dword [edi]
add eax, 2
add ebx, eax
mov eax, ecx
and eax, 0xffffff00
cmp eax, 0x300
jne 0x578c57
cmp ecx, 0x303
jl 0x578c57
add ebx, 2
jmp 0x578c57
push 0x7f3
jmp 0x578cb8
push 0x7ff
push str.._ssl_s3_srvr.c
push 0xfb
jmp 0x578e33
push 0x755
push str.._ssl_s3_srvr.c
push 0x166
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
jmp 0x578e64
push 0x761
push str.._ssl_s3_srvr.c
push 0xfa
mov esi, 0x28
push 0x9b
push 0x14
call fcn.004fef10
add esp, 0x14
push esi
push 2
push edi
call fcn.0057f990
add esp, 0xc
mov eax, dword [esp + 0x18]
test eax, eax
je 0x578e64
push eax
call fcn.00502c60
add esp, 4
push dword [esp + 0x24]
call fcn.0053e890
lea eax, [esp + 0x40]
push eax
call fcn.00516000
add esp, 8
mov dword [edi + 0x34], 5
or eax, 0xffffffff
jmp 0x578c9a