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

Disassembly:
mov eax, 0x98
call fcn.004ae7f0
mov eax, dword [0x5f7448]
xor eax, esp
mov dword [esp + 0x94], eax
push ebx
xor eax, eax
push ebp
push esi
mov dword [esp + 0x48], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x44], eax
push edi
mov edi, dword [esp + 0xac]
lea eax, [esp + 0x54]
push eax
mov dword [esp + 0x1c], 0
call fcn.004f60a0
add esp, 4
cmp dword [edi + 0x34], 0x2150
jne 0x4d2003
mov eax, dword [edi + 0x58]
mov ecx, dword [edi + 0x3c]
mov eax, dword [eax + 0x344]
mov esi, dword [edi + 0x98]
mov edx, dword [eax + 0xc]
mov dword [esp + 0x40], ecx
xor ecx, ecx
xor ebx, ebx
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x14], ebx
test dl, 1
je 0x4d17fb
mov ebp, dword [esi + 0x18]
test ebp, ebp
jne 0x4d17c7
mov edx, dword [esi + 0x1c]
test edx, edx
je 0x4d17e7
mov ecx, dword [eax + 0x20]
test cl, 8
mov eax, 0x400
mov ebp, 0x200
cmovne eax, ebp
push eax
and ecx, 2
push ecx
push edi
call edx
mov ebp, eax
add esp, 0xc
test ebp, ebp
jne 0x4d17bb
push 0x64a
push str.._ssl_s3_srvr.c
push 0x11a
jmp 0x4d218e
push ebp
call fcn.004f3070
add esp, 4
mov dword [esi + 0x18], ebp
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x58]
mov dword [esp + 0x1c], ecx
mov dword [eax + 0x370], 1
jmp 0x4d1c56
push 0x653
push str.._ssl_s3_srvr.c
push 0xac
jmp 0x4d218e
test dl, 8
je 0x4d191a
mov ebp, dword [esi + 0x20]
test ebp, ebp
jne 0x4d184a
mov edx, dword [esi + 0x24]
test edx, edx
je 0x4d1836
mov ecx, dword [eax + 0x20]
test cl, 8
mov eax, 0x400
mov esi, 0x200
cmovne eax, esi
push eax
and ecx, 2
push ecx
push edi
call edx
mov ebp, eax
add esp, 0xc
test ebp, ebp
jne 0x4d184a
push 0x667
push str.._ssl_s3_srvr.c
push 0xab
jmp 0x4d218e
mov eax, dword [edi + 0x58]
cmp dword [eax + 0x348], ebx
je 0x4d1875
push 0x66d
push str.._ssl_s3_srvr.c
push 0x44
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21bf
push ebp
call fcn.004fe3f0
mov esi, eax
add esp, 4
test esi, esi
jne 0x4d18a4
push 0x673
push str.._ssl_s3_srvr.c
push 5
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21bf
mov eax, dword [edi + 0x58]
mov dword [eax + 0x348], esi
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x4d18ec
cmp dword [ebp + 0x18], ebx
je 0x4d18ec
test dword [edi + 0x100], 0x100000
jne 0x4d18ec
push eax
call fcn.004f2760
mov dword [esi + 0x14], eax
push dword [ebp + 0x18]
call fcn.004f2760
add esp, 8
mov dword [esi + 0x18], eax
cmp dword [esi + 0x14], ebx
je 0x4d18e5
test eax, eax
jne 0x4d1900
push 0x68a
jmp 0x4d1889
push esi
call fcn.004ff4e0
add esp, 4
test eax, eax
jne 0x4d1900
push 0x67f
jmp 0x4d1889
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], eax
mov eax, dword [esi + 0x14]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x2c], eax
jmp 0x4d1c56
test dl, dl
jns 0x4d1bd9
mov ecx, dword [esi + 0x28]
test ecx, ecx
jne 0x4d1968
mov edx, dword [esi + 0x2c]
test edx, edx
je 0x4d1954
mov ecx, dword [eax + 0x20]
test cl, 8
mov eax, 0x400
mov esi, 0x200
cmovne eax, esi
push eax
and ecx, 2
push ecx
push edi
call edx
mov ecx, eax
add esp, 0xc
test ecx, ecx
jne 0x4d1968
push 0x6a3
push str.._ssl_s3_srvr.c
push 0x137
jmp 0x4d218e
mov eax, dword [edi + 0x58]
cmp dword [eax + 0x34c], ebx
je 0x4d197d
push 0x6a9
jmp 0x4d185a
test ecx, ecx
jne 0x4d19a1
push 0x6b0
push str.._ssl_s3_srvr.c
push 0x2b
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21bf
push ecx
call fcn.004fdfc0
mov esi, eax
add esp, 4
test esi, esi
jne 0x4d19d0
push 0x6b5
push str.._ssl_s3_srvr.c
push 0x2b
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21bf
mov eax, dword [edi + 0x58]
push esi
mov dword [eax + 0x34c], esi
call fcn.00501a60
add esp, 4
test eax, eax
je 0x4d19ff
push esi
call fcn.004feb10
add esp, 4
test eax, eax
je 0x4d19ff
test dword [edi + 0x100], 0x80000
je 0x4d1a2c
push esi
call fcn.004fe060
add esp, 4
test eax, eax
jne 0x4d1a2c
push 0x6c0
push str.._ssl_s3_srvr.c
push 0x2b
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21bf
push esi
call fcn.004ffc00
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4d1bb9
push esi
call fcn.00501a60
add esp, 4
test eax, eax
je 0x4d1bb9
push esi
call fcn.004feb10
add esp, 4
test eax, eax
je 0x4d1bb9
mov eax, dword [edi + 0x58]
mov eax, dword [eax + 0x344]
test byte [eax + 0x20], 2
je 0x4d1aa3
push ebx
call fcn.004ffce0
add esp, 4
cmp eax, 0xa3
jle 0x4d1aa3
push 0x6d0
push str.._ssl_s3_srvr.c
push 0x136
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21bf
push ebx
call fcn.004ffcd0
push eax
call fcn.004d9a20
add esp, 8
mov dword [esp + 0x20], eax
test eax, eax
jne 0x4d1add
push 0x6dc
push str.._ssl_s3_srvr.c
push 0x13b
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21bf
push 0
push 0
push 0
push 4
push esi
call fcn.00501a60
add esp, 4
push eax
push ebx
call fcn.005024a0
push 0x6ea
mov ebp, eax
push str.._ssl_s3_srvr.c
push ebp
call fcn.004e5740
add esp, 0x24
mov dword [esp + 0x18], eax
call fcn.00500950
mov ecx, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x38], ecx
test eax, eax
je 0x4d1b99
test ecx, ecx
je 0x4d1b99
push ecx
push ebp
push eax
push 4
push esi
call fcn.00501a60
add esp, 4
push eax
push ebx
call fcn.005024a0
mov ebx, eax
add esp, 0x18
mov dword [esp + 0x4c], ebx
test ebx, ebx
jne 0x4d1b67
push 0x6fa
push str.._ssl_s3_srvr.c
push 0x2b
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21ae
push dword [esp + 0x38]
call fcn.005008c0
add ebx, 4
add esp, 4
xor ecx, ecx
mov dword [esp + 0x38], 0
mov dword [esp + 0x14], ebx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], ecx
jmp 0x4d1c56
push 0x6ee
push str.._ssl_s3_srvr.c
push 0x41
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21ae
push 0x6c9
push str.._ssl_s3_srvr.c
push 0x2b
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21bf
test edx, 0x100
je 0x4d1c02
mov eax, dword [edi + 0xe4]
mov ebx, dword [eax + 0x14c]
lea edx, [ebx + 1]
mov al, byte [ebx]
inc ebx
test al, al
jne 0x4d1bf0
sub ebx, edx
add ebx, 2
mov dword [esp + 0x14], ebx
jmp 0x4d1c5a
test edx, 0x400
je 0x4d217f
mov ecx, dword [edi + 0x1a8]
mov dword [esp + 0x1c], ecx
test ecx, ecx
je 0x4d215f
mov eax, dword [edi + 0x1ac]
test eax, eax
je 0x4d215f
mov edx, dword [edi + 0x1b0]
test edx, edx
je 0x4d215f
mov esi, dword [edi + 0x1b4]
test esi, esi
je 0x4d215f
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], esi
mov dword [esp + 0x24], ecx
mov ebp, dword [esp + 0x34]
xor eax, eax
mov dword [esp + 0x10], eax
test ecx, ecx
je 0x4d1cb7
cmp eax, 4
jge 0x4d1caf
push dword [esp + eax*4 + 0x24]
call fcn.004f2920
add eax, 7
cdq
and edx, 7
add esp, 4
lea ecx, [edx + eax]
mov eax, dword [esp + 0x10]
sar ecx, 3
mov dword [esp + eax*4 + 0x70], ecx
cmp eax, 2
jne 0x4d1c9e
test ebp, 0x400
je 0x4d1c9e
inc ebx
jmp 0x4d1ca1
add ebx, 2
inc eax
add ebx, ecx
cmp dword [esp + eax*4 + 0x24], 0
mov dword [esp + 0x10], eax
jne 0x4d1c68
mov dword [esp + 0x14], ebx
mov dword [esp + 0x14], ebx
mov eax, dword [edi + 0x58]
mov eax, dword [eax + 0x344]
test byte [eax + 0x10], 4
jne 0x4d1cfb
test dword [eax + 0xc], 0x100
jne 0x4d1cfb
lea ecx, [esp + 0x48]
push ecx
push eax
push edi
call fcn.004c4d40
mov esi, eax
add esp, 0xc
mov dword [esp + 0x44], esi
test esi, esi
jne 0x4d1cf0
lea esi, [eax + 0x32]
jmp 0x4d21a2
push esi
call fcn.004e7420
add esp, 4
jmp 0x4d1d01
xor eax, eax
mov dword [esp + 0x44], eax
add eax, 4
add eax, ebx
push eax
push dword [esp + 0x44]
call fcn.004ed9c0
add esp, 8
test eax, eax
jne 0x4d1d37
push 0x74f
push str.._ssl_s3_srvr.c
push 7
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21ae
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + 4]
mov dword [esp + 0x6c], eax
add eax, 4
mov esi, eax
mov dword [esp + 0x40], eax
xor eax, eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x10], eax
cmp dword [esp + 0x1c], eax
je 0x4d1dbb
mov bl, byte [esp + 0x78]
mov edi, edi
cmp eax, 4
jge 0x4d1db3
cmp eax, 2
jne 0x4d1d77
test ebp, 0x400
je 0x4d1d77
mov byte [esi], bl
inc esi
jmp 0x4d1d8e
mov eax, dword [esp + eax*4 + 0x70]
sar eax, 8
mov byte [esi], al
mov eax, dword [esp + 0x10]
add esi, 2
mov al, byte [esp + eax*4 + 0x70]
mov byte [esi - 1], al
mov eax, dword [esp + 0x10]
push esi
push dword [esp + eax*4 + 0x28]
call fcn.004f2540
mov eax, dword [esp + 0x18]
inc eax
add esi, dword [esp + eax*4 + 0x74]
add esp, 8
cmp dword [esp + eax*4 + 0x24], 0
mov dword [esp + 0x10], eax
jne 0x4d1d60
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x3c], esi
mov eax, dword [esp + 0x34]
test al, al
jns 0x4d1e02
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x18]
mov word [esi], 3
mov byte [esi + 2], al
mov eax, dword [esp + 0x4c]
push eax
mov byte [esi + 3], al
add esi, 4
push ebp
push esi
call fcn.004ae030
push ebp
call fcn.004e56c0
mov eax, dword [esp + 0x44]
add esp, 0x10
add esi, dword [esp + 0x4c]
mov dword [esp + 0x18], 0
mov dword [esp + 0x3c], esi
test eax, 0x100
je 0x4d1e92
mov eax, dword [edi + 0xe4]
mov ecx, dword [eax + 0x14c]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d1e20
sub ecx, edx
shr ecx, 8
mov byte [esi], cl
mov eax, dword [edi + 0xe4]
mov ecx, dword [eax + 0x14c]
lea edx, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d1e40
sub ecx, edx
mov byte [esi + 1], cl
mov eax, dword [edi + 0xe4]
add esi, 2
mov edx, dword [eax + 0x14c]
mov ecx, edx
lea ebp, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d1e60
sub ecx, ebp
push ecx
push edx
push esi
call fcn.0055de10
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 0x4d1e83
sub ecx, edx
add esi, ecx
mov dword [esp + 0x3c], esi
mov ebp, dword [esp + 0x44]
test ebp, ebp
je 0x4d1fdc
cmp dword [ebp], 6
jne 0x4d2038
mov ecx, dword [edi]
mov eax, ecx
and eax, 0xffffff00
cmp eax, 0x300
jne 0x4d1ec4
cmp ecx, 0x303
jge 0x4d2038
lea esi, [esp + 0x80]
mov dword [esp + 0x20], 0
mov ebp, 2
lea eax, [esp + 0x54]
push 8
push eax
call fcn.004fee20
mov eax, dword [edi + 0xe4]
add esp, 8
cmp ebp, 2
jne 0x4d1efa
mov eax, dword [eax + 0x8c]
jmp 0x4d1f00
mov eax, dword [eax + 0x90]
push 0
push eax
lea eax, [esp + 0x5c]
push eax
call fcn.004f5c90
mov eax, dword [edi + 0x58]
add eax, 0xc0
push 0x20
push eax
lea eax, [esp + 0x68]
push eax
call fcn.004f5e30
mov eax, dword [edi + 0x58]
add eax, 0xa0
push 0x20
push eax
lea eax, [esp + 0x74]
push eax
call fcn.004f5e30
push ebx
push dword [esp + 0x68]
lea eax, [esp + 0x80]
push eax
call fcn.004f5e30
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x88]
push esi
push eax
call fcn.004f5be0
mov ecx, dword [esp + 0x5c]
add ecx, dword [esp + 0x4c]
add esi, dword [esp + 0x4c]
dec ebp
add esp, 0x3c
mov dword [esp + 0x20], ecx
test ebp, ebp
jg 0x4d1ed8
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x3c]
push dword [eax + 0x14]
lea eax, [esp + 0x54]
push eax
lea eax, [esi + 2]
push eax
push ecx
lea eax, [esp + 0x90]
push eax
push 0x72
call fcn.00500c00
add esp, 0x18
test eax, eax
jg 0x4d1fc3
push 0x7a4
push str.._ssl_s3_srvr.c
push 4
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21ae
mov eax, dword [esp + 0x50]
shr eax, 8
mov byte [esi], al
mov al, byte [esp + 0x50]
mov byte [esi + 1], al
mov eax, dword [esp + 0x50]
add eax, 2
add ebx, eax
mov ecx, dword [esp + 0x6c]
mov eax, ebx
mov byte [ecx], 0xc
sar eax, 0x10
mov byte [ecx + 1], al
mov eax, ebx
sar eax, 8
mov byte [ecx + 2], al
mov byte [ecx + 3], bl
lea eax, [ebx + 4]
mov dword [edi + 0x44], eax
mov dword [edi + 0x48], 0
lea eax, [esp + 0x54]
push eax
mov dword [edi + 0x34], 0x2151
call fcn.004f5e40
push 0x16
push edi
call fcn.004cb930
add esp, 0xc
mov ecx, dword [esp + 0xa4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004adbd4
add esp, 0x98
ret
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x4d214e
mov edx, dword [edi]
mov eax, edx
and eax, 0xffffff00
cmp eax, 0x300
jne 0x4d2086
cmp edx, 0x303
jl 0x4d2086
push ecx
push ebp
push esi
call fcn.004d9940
add esp, 0xc
test eax, eax
jne 0x4d207f
push 0x7b6
push str.._ssl_s3_srvr.c
lea esi, [eax + 0x50]
push 0x44
jmp 0x4d2193
mov ecx, dword [esp + 0x48]
add esi, 2
push 0
push ecx
lea eax, [esp + 0x5c]
push eax
call fcn.004f5c90
mov eax, dword [edi + 0x58]
add eax, 0xc0
push 0x20
push eax
lea eax, [esp + 0x68]
push eax
call fcn.004f5e30
mov eax, dword [edi + 0x58]
add eax, 0xa0
push 0x20
push eax
lea eax, [esp + 0x74]
push eax
call fcn.004f5e30
push ebx
push dword [esp + 0x68]
lea eax, [esp + 0x80]
push eax
call fcn.004f5e30
push ebp
lea eax, [esp + 0x44]
push eax
lea eax, [esi + 2]
push eax
lea eax, [esp + 0x90]
push eax
call fcn.00501490
add esp, 0x40
test eax, eax
jne 0x4d210d
push 0x7c6
push str.._ssl_s3_srvr.c
push 6
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21ae
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 0x4d1fdc
cmp ecx, 0x303
jl 0x4d1fdc
add ebx, 2
jmp 0x4d1fdc
push 0x7d2
push str.._ssl_s3_srvr.c
push 0xfb
jmp 0x4d218e
push 0x722
push str.._ssl_s3_srvr.c
push 0x166
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
jmp 0x4d21bf
push 0x72e
push str.._ssl_s3_srvr.c
push 0xfa
mov esi, 0x28
push 0x9b
push 0x14
call fcn.004e8b90
add esp, 0x14
push esi
push 2
push edi
call fcn.004cafc0
add esp, 0xc
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4d21bf
push eax
call fcn.004e56c0
add esp, 4
push dword [esp + 0x38]
call fcn.005008c0
lea eax, [esp + 0x58]
push eax
call fcn.004f5e40
add esp, 8
or eax, 0xffffffff
jmp 0x4d201f