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

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
mov eax, 0x78
call fcn.14037c5f0
sub rsp, rax
mov rcx, qword [rsp + 0x80]
call fcn.1401bb720
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x80]
call fcn.1401bbbe0
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x88], 0
je 0x1402c8d15
cmp dword [rsp + 0x90], 0
jl 0x1402c8d15
cmp qword [rsp + 0x30], 0
je 0x1402c8d15
cmp qword [rsp + 0x58], 0
jne 0x1402c8d1c
xor eax, eax
jmp 0x1402c9058
mov dword [rsp + 0x3c], 0
mov dword [rsp + 0x38], 0xffffffff
mov rax, qword [rsp + 0x30]
mov eax, dword [rax]
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 6
ja case.default.0x1402c8d58
movsxd rax, dword [rsp + 0x40]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0x2c9060]
add rax, rcx
jmp rax
mov dword [rsp + 0x20], 2
mov r9d, 1
mov rax, qword [rsp + 0x30]
mov r8, qword [rax + 0x28]
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x80]
call fcn.1402c9840
test eax, eax
jne 0x1402c8d8e
xor eax, eax
jmp 0x1402c9058
jmp case.default.0x1402c8d58
mov r9d, 2
mov rax, qword [rsp + 0x30]
mov r8, qword [rax + 0x30]
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x80]
call fcn.1402c9680
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0
jg 0x1402c8dc4
jmp 0x1402c901c
jmp case.default.0x1402c8d58
mov rax, qword [rsp + 0x30]
mov r8d, dword [rax + 0x24]
mov edx, dword [rsp + 0x90]
xor ecx, ecx
call fcn.1401cdff0
sub eax, dword [rsp + 0x90]
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0x18], eax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x10]
cmp dword [rax + 0x18], ecx
jg 0x1402c8e0b
mov dword [rsp + 0x44], 1
jmp 0x1402c8e13
mov dword [rsp + 0x44], 0
cmp dword [rsp + 0x44], 0
je 0x1402c8e24
mov dword [rsp + 0x48], 1
jmp 0x1402c8e2c
mov dword [rsp + 0x48], 0
mov r9d, 0xbf
lea r8, str.crypto_asn1_bio_asn1.c
lea rdx, str.Assertion_failed:_ctx__buflen___ctx__bufsize
mov ecx, dword [rsp + 0x48]
call fcn.1402c98e0
test eax, eax
jne 0x1402c8e54
xor eax, eax
jmp 0x1402c9058
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 8]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x20]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x30]
mov r9d, dword [rax + 0x24]
mov r8d, dword [rsp + 0x90]
xor edx, edx
lea rcx, [rsp + 0x60]
call fcn.1401ce110
mov rax, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x90]
mov dword [rax + 0x1c], ecx
mov rax, qword [rsp + 0x30]
mov dword [rax], 3
jmp case.default.0x1402c8d58
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0x14]
mov rcx, qword [rsp + 0x30]
add rax, qword [rcx + 8]
mov rcx, qword [rsp + 0x30]
mov r8d, dword [rcx + 0x18]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1401bc0e0
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0
jg 0x1402c8ee2
jmp 0x1402c901c
mov rax, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x38]
mov eax, dword [rax + 0x18]
sub eax, ecx
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0x18], eax
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x18], 0
je 0x1402c8f19
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x14]
add eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0x14], eax
jmp 0x1402c8f30
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x14], 0
mov rax, qword [rsp + 0x30]
mov dword [rax], 4
jmp case.default.0x1402c8d58
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x1c]
cmp dword [rsp + 0x90], eax
jle 0x1402c8f54
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x1c]
mov dword [rsp + 0x4c], eax
jmp 0x1402c8f5f
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x4c], eax
mov r8d, dword [rsp + 0x4c]
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x58]
call fcn.1401bc0e0
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0
jg 0x1402c8f86
jmp 0x1402c901c
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x38]
mov eax, dword [rax + 0x1c]
sub eax, ecx
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0x1c], eax
movsxd rax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x90]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x90], eax
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x1c], 0
jne 0x1402c8ff3
mov rax, qword [rsp + 0x30]
mov dword [rax], 2
cmp dword [rsp + 0x90], 0
jne 0x1402c8fff
jmp 0x1402c901c
jmp case.default.0x1402c8d58
mov edx, reloc.WS2_32.dll_ntohs
mov rcx, qword [rsp + 0x80]
call fcn.1401bb2a0
xor eax, eax
jmp 0x1402c9058
jmp 0x1402c8d2c
mov edx, reloc.WS2_32.dll_ntohs
mov rcx, qword [rsp + 0x80]
call fcn.1401bb2a0
mov rcx, qword [rsp + 0x80]
call fcn.1401bb2d0
cmp dword [rsp + 0x3c], 0
jle 0x1402c904c
mov eax, dword [rsp + 0x3c]
mov dword [rsp + 0x50], eax
jmp 0x1402c9054
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
add rsp, 0x78
ret