Function at 0x14013bcf0
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x270]
sub rsp, 0x370
mov rax, qword [0x1402c8b58]
xor rax, rsp
mov qword [rbp + 0x260], rax
mov byte [rsp + 0x60], r9b
movzx r15d, r8b
mov qword [rsp + 0x68], rdx
mov rsi, rcx
mov rax, qword [rbp + 0x2d0]
mov qword [rbp - 0x80], rax
mov rax, qword [rbp + 0x2d8]
mov qword [rsp + 0x70], rax
mov r14, qword [rbp + 0x2f0]
mov qword [rsp + 0x78], r14
mov rdi, qword [rbp + 0x2f8]
mov qword [rbp - 0x78], rdi
mov rbx, qword [rbp + 0x300]
mov qword [rbp - 0x70], rbx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], rax
lea r8, str.clientHello_buildMessage
mov rdx, rbx
lea rcx, [rbp + 0x110]
call fcn.1400531e0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x68], xmm0
movups xmmword [rbp + 0x78], xmm0
movups xmmword [rbp + 0x88], xmm0
lea rcx, [rbp + 0x68]
call fcn.14003e460
nop
movzx edx, byte [rsi + 0x48]
lea rcx, [rbp + 0x68]
call fcn.14003ed50
movzx edx, byte [rsi + 0x4c]
lea rcx, [rbp + 0x68]
call fcn.14003ed50
lea rdx, [rsi + 0x50]
lea rcx, [rbp + 0x68]
call fcn.14003ea70
cmp byte [rbx + 0x16a], 0
je 0x14013be57
mov r8d, dword [rsi + 0x48]
lea rdx, str.majorVersion
mov rcx, rbx
call fcn.140053ac0
mov r8d, dword [rsi + 0x4c]
lea rdx, str.minorVersion
mov rcx, rbx
call fcn.140053ac0
lea r8, [rsi + 0x50]
lea rdx, str.clientRandom
mov rcx, rbx
call fcn.140053930
lea rcx, [rsi + 0x50]
call fcn.140043080
mov r8d, eax
lea rdx, str.szClientRandom
mov rcx, rbx
call fcn.140053ac0
lea rdi, [rsi + 0x80]
mov rcx, rdi
call fcn.140043080
mov r8d, eax
lea rdx, str.sessionIdSize
mov rcx, rbx
call fcn.140053ac0
jmp 0x14013be5e
lea rdi, [rsi + 0x80]
cmp byte [rbx + 0x16b], 0
je 0x14013be7a
movzx r8d, r15b
lea rdx, str.bIsAfterHelloRetryRequest
mov rcx, rbx
call fcn.140053810
cmp dword [rsi + 0x48], 3
jne 0x14013beb9
mov eax, dword [rsi + 0x4c]
sub eax, 3
cmp eax, 1
ja 0x14013beb9
lea rcx, [rbx + 0x98]
lea rdx, str.MiddleBoxCompatibilityMode
call fcn.140033b20
test al, al
je 0x14013beb9
mov rcx, rdi
call fcn.140043080
test eax, eax
jne 0x14013beb9
mov rdx, rdi
lea ecx, [rax + 0x20]
call fcn.1400960e0
mov rcx, rdi
call fcn.140043080
mov edx, eax
lea rcx, [rbp + 0x68]
call fcn.14003ed50
mov rcx, rdi
call fcn.140043080
test eax, eax
je 0x14013bee4
mov rdx, rdi
lea rcx, [rbp + 0x68]
call fcn.14003ea70
xor r12d, r12d
mov dword [rsp + 0x64], r12d
call fcn.140052c40
mov rcx, rax
mov qword [rbp - 0x68], rax
cmp byte [rbp + 0x2e8], r12b
je 0x14013bff2
mov r14, qword [r14 + 0x38]
test r14, r14
je 0x14013bff2
mov rdx, qword [r14 + 0x18]
test rdx, rdx
je 0x14013bff2
mov rax, qword [rdx + 0x48]
cmp rcx, rax
jge 0x14013bf2d
mov r13d, r12d
jmp 0x14013bf63
sub rcx, rax
mov eax, dword [rdx + 0x50]
cmp rcx, rax
jle 0x14013bf3d
mov r13d, r12d
jmp 0x14013bf63
mov ecx, dword [r14 + 0xc4]
call fcn.140066dd0
mov r13d, eax
mov rcx, qword [r14 + 0x18]
add rcx, 0x160
call fcn.140043080
add r13d, 0xf
add r13d, eax
mov dword [rsp + 0x64], r13d
cmp byte [rbx + 0x16a], r12b
je 0x14013bf83
mov r8d, r13d
lea rdx, str.szPreSharedKeyExtension
mov rcx, rbx
call fcn.140054040
test r13d, r13d
je 0x14013bff2
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
movzx ecx, word [rax + 0xc0]
test cx, cx
je 0x14013bff2
movzx eax, cx
shr ax, 8
mov byte [rbp + 0x60], al
mov byte [rbp + 0x61], cl
xor edx, edx
lea rcx, [rbp + 0x68]
call fcn.14003ed50
mov dl, 2
lea rcx, [rbp + 0x68]
call fcn.14003ed50
mov r8d, 2
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x68]
call fcn.14003eae0
cmp byte [rbx + 0x16a], r12b
je 0x14013c07b
mov rax, qword [rbx]
lea rdx, str.Using_same_cipher_suite_ID_for_TLS_1.3_session_resumption.
mov rcx, rbx
call qword [rax + 0x30]
jmp 0x14013c054
lea rcx, [rsi + 0xb0]
call fcn.140043080
mov edi, eax
mov edx, eax
shr edx, 8
lea rcx, [rbp + 0x68]
call fcn.14003ed50
movzx edx, dil
lea rcx, [rbp + 0x68]
call fcn.14003ed50
lea rdx, [rsi + 0xb0]
lea rcx, [rbp + 0x68]
call fcn.14003ea70
cmp byte [rbx + 0x16a], r12b
je 0x14013c07b
lea rcx, [rsi + 0xb0]
call fcn.140043080
shr eax, 1
mov r8d, eax
lea rdx, str.numCipherSuites
mov rcx, rbx
call fcn.140053ac0
cmp byte [rbx + 0x16a], r12b
je 0x14013c07b
lea rcx, [rsi + 0xe0]
call fcn.140043080
mov r8d, eax
lea rdx, str.numCompressionMethods
mov rcx, rbx
call fcn.140053ac0
lea rcx, [rsi + 0xe0]
call fcn.140043080
mov edx, eax
lea rcx, [rbp + 0x68]
call fcn.14003ed50
lea rdx, [rsi + 0xe0]
lea rcx, [rbp + 0x68]
call fcn.14003ea70
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm0
lea rcx, [rbp + 0x30]
call fcn.14003e460
nop
lea rcx, [rbx + 0x98]
lea rdx, str.NO_TLS_EXT_RND
call fcn.140033af0
movzx r14d, al
mov edi, r12d
test r15b, r15b
jne 0x14013c12e
test al, al
jne 0x14013c0e8
mov edi, 1
mov dword [rbp - 0x60], edi
jmp 0x14013c12e
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 5
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 5
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 1
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea r8d, [rdx + 4]
lea rcx, [rbp + 0x30]
call fcn.14003ede0
movzx r13d, byte [rbp + 0x2e0]
test r13b, r13b
je 0x14013c15d
test r14b, r14b
jne 0x14013c14e
mov eax, edi
mov dword [rbp + rax*4 - 0x60], 2
inc edi
jmp 0x14013c15d
mov r8, rbx
lea rdx, [rbp + 0x30]
mov rcx, rsi
call fcn.14013bb40
test r15b, r15b
jne 0x14013c1bc
test r13b, r13b
je 0x14013c1bc
test r14b, r14b
jne 0x14013c17a
mov eax, edi
mov dword [rbp + rax*4 - 0x60], 3
inc edi
jmp 0x14013c1bc
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, reloc.WS2_32.dll_inet_addr
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 2
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 1
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
cmp dword [rsi + 0x48], 3
jne 0x14013c1f3
mov eax, dword [rsi + 0x4c]
sub eax, 3
cmp eax, 1
ja 0x14013c1f3
test r14b, r14b
jne 0x14013c1e0
mov eax, edi
mov dword [rbp + rax*4 - 0x60], 4
inc edi
jmp 0x14013c1f3
mov r9, rbx
lea r8, [rbp + 0x30]
movzx edx, r15b
mov rcx, rsi
call fcn.14013b9d0
test r15b, r15b
jne 0x14013c237
test r14b, r14b
jne 0x14013c20b
mov eax, edi
mov dword [rbp + rax*4 - 0x60], 5
inc edi
jmp 0x14013c237
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, reloc.WS2_32.dll_socket
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
movzx r13d, byte [rbp + 0x2e8]
test r13b, r13b
je 0x14013c40b
lea rcx, [rbx + 0x98]
lea rdx, str.SendZeroLenTicket
call fcn.140033af0
test al, al
je 0x14013c2c8
cmp dword [rsi + 0x48], 3
jne 0x14013c2c8
mov eax, dword [rsi + 0x4c]
sub eax, 3
cmp eax, 1
ja 0x14013c2c8
test r14b, r14b
jne 0x14013c283
mov eax, edi
mov dword [rbp + rax*4 - 0x60], 6
inc edi
jmp 0x14013c2c8
cmp byte [rbx + 0x16a], 0
je 0x14013c29c
mov rax, qword [rbx]
lea rdx, str.Adding_zero_length_session_ticket...
mov rcx, rbx
call qword [rax + 0x30]
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x23
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
lea rcx, [rbx + 0x98]
lea rdx, str.SendPostHandshakeAuth
call fcn.140033af0
test al, al
je 0x14013c3e6
cmp dword [rsi + 0x48], 3
jne 0x14013c3e6
mov eax, dword [rsi + 0x4c]
sub eax, 3
cmp eax, 1
ja 0x14013c3e6
test r14b, r14b
jne 0x14013c312
mov eax, edi
mov dword [rbp + rax*4 - 0x60], recv
inc edi
jmp 0x14013c3ef
cmp byte [rbx + 0x16a], 0
je 0x14013c32b
mov rax, qword [rbx]
lea rdx, str.Adding_post_handshake_auth_extension...
mov rcx, rbx
call qword [rax + 0x30]
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x31
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov qword [rsp + 0x28], rbx
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x70]
mov r8, qword [rsp + 0x68]
movzx edx, r15b
mov rcx, rsi
call fcn.14013b6f0
mov r9, rbx
lea r8, [rbp + 0x30]
movzx edx, r15b
mov rcx, rsi
call fcn.14013bc40
mov qword [rsp + 0x28], rbx
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x80]
movzx r8d, byte [rsp + 0x60]
movzx edx, r15b
mov rcx, rsi
call fcn.14013b7f0
mov r9, rbx
lea r8, [rbp + 0x30]
mov rdx, qword [rsp + 0x70]
mov rcx, rsi
call fcn.14013b8d0
test r13b, r13b
je 0x14013c4db
test r14b, r14b
jne 0x14013c430
movsxd rax, edi
mov dword [rbp + rax*4 - 0x60], reloc.WS2_32.dll_inet_addr
inc edi
jmp 0x14013c4e0
test r14b, r14b
jne 0x14013c357
movsxd rax, edi
mov dword [rbp + rax*4 - 0x60], 7
inc edi
movsxd rax, edi
mov dword [rbp + rax*4 - 0x60], 8
inc edi
jmp 0x14013c414
test r14b, r14b
jne 0x14013c38e
movsxd rax, edi
mov dword [rbp + rax*4 - 0x60], 9
inc edi
movsxd rax, edi
mov dword [rbp + rax*4 - 0x60], 0xa
inc edi
jmp 0x14013c3c6
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x2d
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 3
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 2
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 1
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x1c
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 2
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x40
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 1
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov r9, rbx
lea r8, [rbp + 0x30]
mov r13, qword [rsp + 0x68]
mov rdx, r13
mov rcx, rsi
call fcn.14013b5e0
jmp 0x14013c99a
test r14b, r14b
jne 0x14013c47d
movsxd rax, edi
mov dword [rbp + rax*4 - 0x60], reloc.WS2_32.dll_inet_ntoa
lea ebx, [rdi + 1]
movsxd rax, edi
mov dword [rbp + rax*4 - 0x5c], recv
lea r13d, [rdi + 2]
mov qword [rbp + 0x60], shutdown
cmp dword [0x1402cdc9c], 0
jne 0x14013c519
call sub.KERNEL32.dll_GetTickCount
mov dword [0x1402cdc9c], eax
call fcn.140052cd0
mov edi, eax
imul edi, dword [0x1402cdc9c]
call fcn.140052ce0
mov ecx, eax
xor edx, edx
mov eax, edi
div ecx
mov eax, edx
mov dword [0x1402cdc9c], edx
test edx, edx
jne 0x14013c54b
call sub.KERNEL32.dll_GetTickCount
mov dword [0x1402cdc9c], eax
mov r8d, ebx
xor edx, edx
mov ecx, eax
call fcn.140053040
movsxd r14, eax
cmp dword [0x1402cdc9c], 0
jne 0x14013c56e
call sub.KERNEL32.dll_GetTickCount
mov dword [0x1402cdc9c], eax
call fcn.140052cd0
mov edi, eax
imul edi, dword [0x1402cdc9c]
call fcn.140052ce0
mov ecx, eax
xor edx, edx
mov eax, edi
div ecx
mov eax, edx
mov dword [0x1402cdc9c], edx
test edx, edx
jne 0x14013c5a0
call sub.KERNEL32.dll_GetTickCount
mov dword [0x1402cdc9c], eax
mov r8d, ebx
xor edx, edx
mov ecx, eax
call fcn.140053040
movsxd rcx, eax
cmp r14d, ecx
je 0x14013c5e4
test eax, eax
js 0x14013c5e4
test r14d, r14d
js 0x14013c5e4
cmp r14d, r13d
jge 0x14013c5e4
cmp ecx, r13d
jge 0x14013c5e4
lea rdx, [rbp - 0x60]
lea rdx, [rdx + r14*4]
mov r8d, dword [rdx]
mov rax, rcx
lea rcx, [rbp - 0x60]
lea rcx, [rcx + rax*4]
mov eax, dword [rcx]
mov dword [rdx], eax
mov dword [rcx], r8d
sub qword [rbp + 0x60], 1
jne 0x14013c505
movsxd r14, r13d
test r13d, r13d
mov rbx, qword [rbp - 0x70]
jle 0x14013c995
nop
mov eax, dword [rbp + r12*4 - 0x60]
cmp eax, 1
jne 0x14013c655
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 5
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 5
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 1
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea r8d, [rdx + 4]
lea rcx, [rbp + 0x30]
call fcn.14003ede0
jmp 0x14013c989
cmp eax, 2
jne 0x14013c66e
mov r8, rbx
lea rdx, [rbp + 0x30]
mov rcx, rsi
call fcn.14013bb40
jmp 0x14013c989
cmp eax, 3
jne 0x14013c6ba
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, reloc.WS2_32.dll_inet_addr
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 2
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 1
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
jmp 0x14013c989
cmp eax, 4
jne 0x14013c6d7
mov r9, rbx
lea r8, [rbp + 0x30]
movzx edx, r15b
mov rcx, rsi
call fcn.14013b9d0
jmp 0x14013c989
cmp eax, 5
jne 0x14013c70d
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, reloc.WS2_32.dll_socket
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
jmp 0x14013c989
cmp eax, 6
jne 0x14013c75c
cmp byte [rbx + 0x16a], 0
je 0x14013c72b
mov rax, qword [rbx]
lea rdx, str.Adding_zero_length_session_ticket...
mov rcx, rbx
call qword [rax + 0x30]
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x23
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
jmp 0x14013c989
cmp eax, 0xe
jne 0x14013c7ab
cmp byte [rbx + 0x16a], 0
je 0x14013c77a
mov rax, qword [rbx]
lea rdx, str.Adding_post_handshake_auth_extension...
mov rcx, rbx
call qword [rax + 0x30]
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x31
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
jmp 0x14013c989
cmp eax, 7
jne 0x14013c7d9
mov qword [rsp + 0x28], rbx
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x70]
mov r8, qword [rsp + 0x68]
movzx edx, r15b
mov rcx, rsi
call fcn.14013b6f0
jmp 0x14013c989
cmp eax, 8
jne 0x14013c887
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x2b
lea rcx, [rbp + 0x30]
call fcn.14003ed50
test r15b, r15b
je 0x14013c804
mov dil, 4
xor dl, dl
jmp 0x14013c84b
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 9
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 8
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 3
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 4
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 3
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dil, 1
mov dl, 3
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 3
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 2
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 3
lea rcx, [rbp + 0x30]
call fcn.14003ed50
movzx edx, dil
lea rcx, [rbp + 0x30]
call fcn.14003ed50
jmp 0x14013c989
cmp eax, 9
jne 0x14013c8b5
mov qword [rsp + 0x28], rbx
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x80]
movzx r8d, byte [rsp + 0x60]
movzx edx, r15b
mov rcx, rsi
call fcn.14013b7f0
jmp 0x14013c989
cmp eax, 0xa
jne 0x14013c8d3
mov r9, rbx
lea r8, [rbp + 0x30]
mov rdx, qword [rsp + 0x70]
mov rcx, rsi
call fcn.14013b8d0
jmp 0x14013c989
cmp eax, 0xb
jne 0x14013c927
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x2d
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 3
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 2
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 1
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
jmp 0x14013c989
cmp eax, 0xc
jne 0x14013c970
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x1c
lea rcx, [rbp + 0x30]
call fcn.14003ed50
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 2
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x40
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 1
lea rcx, [rbp + 0x30]
call fcn.14003ed50
jmp 0x14013c989
cmp eax, 0xd
jne 0x14013c989
mov r9, rbx
lea r8, [rbp + 0x30]
mov rdx, qword [rsp + 0x68]
mov rcx, rsi
call fcn.14013b5e0
inc r12
cmp r12, r14
jl 0x14013c600
mov r13, qword [rsp + 0x68]
lea rcx, [rbp + 0x30]
call fcn.140043080
mov esi, eax
lea rcx, [rbp + 0x68]
call fcn.140043080
mov r14d, dword [rsp + 0x64]
add esi, 2
add esi, r14d
add esi, eax
mov edi, 0x1f8
cmp esi, edi
jae 0x14013ca5e
xorps xmm0, xmm0
movups xmmword [rbp + 0xc8], xmm0
movups xmmword [rbp + 0xd8], xmm0
movups xmmword [rbp + 0xe8], xmm0
lea rcx, [rbp + 0xc8]
call fcn.14003e460
nop
xor edx, edx
lea rcx, [rbp + 0xc8]
call fcn.14003ed50
mov dl, reloc.WS2_32.dll_setsockopt
lea rcx, [rbp + 0xc8]
call fcn.14003ed50
sub edi, esi
mov edx, edi
shr edx, 8
lea rcx, [rbp + 0xc8]
call fcn.14003ed50
movzx edx, dil
lea rcx, [rbp + 0xc8]
call fcn.14003ed50
test edi, edi
je 0x14013ca41
mov r8d, edi
xor edx, edx
lea rcx, [rbp + 0xc8]
call fcn.14003ede0
lea rdx, [rbp + 0xc8]
lea rcx, [rbp + 0x30]
call fcn.14003ea70
nop
lea rcx, [rbp + 0xc8]
call fcn.14003e610
xorps xmm0, xmm0
movups xmmword [rbp + 0x128], xmm0
movups xmmword [rbp + 0x138], xmm0
movups xmmword [rbp + 0x148], xmm0
lea rcx, [rbp + 0x128]
call fcn.14003e460
nop
test r14d, r14d
je 0x14013cb3c
xorps xmm0, xmm0
movups xmmword [rbp + 0x98], xmm0
movups xmmword [rbp + 0xa8], xmm0
movups xmmword [rbp + 0xb8], xmm0
lea rcx, [rbp + 0x98]
call fcn.14003e460
nop
mov qword [rsp + 0x28], rbx
lea rax, [rbp + 0x128]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x98]
mov r8, r13
mov rdx, qword [rbp - 0x68]
mov r15, qword [rsp + 0x78]
mov rcx, qword [r15 + 0x38]
call fcn.14013cee0
xor edx, edx
lea rcx, [rbp + 0x30]
call fcn.14003ed50
mov dl, 0x29
lea rcx, [rbp + 0x30]
call fcn.14003ed50
lea rcx, [rbp + 0x98]
call fcn.140043080
mov edi, eax
mov edx, eax
shr edx, 8
lea rcx, [rbp + 0x30]
call fcn.14003ed50
movzx edx, dil
lea rcx, [rbp + 0x30]
call fcn.14003ed50
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x30]
call fcn.14003ea70
nop
lea rcx, [rbp + 0x98]
call fcn.14003e610
jmp 0x14013cb41
mov r15, qword [rsp + 0x78]
lea rcx, [rbp + 0x30]
call fcn.140043080
mov edi, eax
mov edx, eax
shr edx, 8
lea rcx, [rbp + 0x68]
call fcn.14003ed50
movzx edx, dil
lea rcx, [rbp + 0x68]
call fcn.14003ed50
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x68]
call fcn.14003ea70
mov dl, 1
mov rsi, qword [rbp - 0x78]
mov rcx, rsi
call fcn.14003ed50
lea rcx, [rbp + 0x68]
call fcn.140043080
mov edi, eax
xor edx, edx
mov rcx, rsi
call fcn.14003ed50
mov edx, edi
shr edx, 8
mov rcx, rsi
call fcn.14003ed50
movzx edx, dil
mov rcx, rsi
call fcn.14003ed50
lea rdx, [rbp + 0x68]
mov rcx, rsi
call fcn.14003ea70
test r14d, r14d
je 0x14013ce7f
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xc8], xmm0
mov qword [rbp + 0xd8], rax
lea r8, str.computePskBinder
mov rdx, rbx
lea rcx, [rbp + 0xc8]
call fcn.1400531e0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x98], xmm0
movups xmmword [rbp + 0xa8], xmm0
movups xmmword [rbp + 0xb8], xmm0
lea rcx, [rbp + 0x98]
call fcn.14003e460
nop
lea rcx, [rbp + 0x98]
call fcn.1400409a0
lea rdx, [r13 + 0x4a8]
lea rcx, [rbp + 0x98]
call fcn.14003ea70
cmp qword [r15 + 0x38], 0
je 0x14013ce54
mov rcx, rsi
call fcn.140043080
cmp eax, 3
jbe 0x14013ce54
mov rax, qword [r15 + 0x38]
mov r15d, dword [rax + 0xc4]
mov ecx, r15d
call fcn.140066dd0
mov r12d, eax
mov rcx, rsi
call fcn.140043080
mov edi, 0xfffffffd
sub edi, r12d
add edi, eax
mov rcx, rsi
call fcn.140042d50
mov rdx, rax
mov r8d, edi
lea rcx, [rbp + 0x98]
call fcn.14003eae0
lea rcx, [rbp + 0x128]
call fcn.140043080
mov r14d, eax
lea rcx, [rbp + 0x128]
call fcn.140042d50
mov rsi, rax
mov ecx, r15d
call fcn.140066dd0
mov edi, eax
xor edx, edx
lea r8d, [rdx + 0x40]
lea rcx, [rbp + 0x160]
call fcn.140012bf0
mov qword [rsp + 0x30], rbx
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r15d
mov r9d, edi
lea r8, [rbp + 0x160]
mov edx, r14d
mov rcx, rsi
call fcn.14007e2e0
lea rcx, [r13 + 0xbb]
mov r8d, gethostbyname
lea rdx, [rbp + 0x1a0]
call fcn.140012bd0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xf8], xmm0
mov qword [rbp + 0x108], rax
lea r8, str.DeriveKeyMsg
mov rdx, rbx
lea rcx, [rbp + 0xf8]
call fcn.1400531e0
nop
lea r9, [rbp + 0x160]
mov r8d, r15d
xor edx, edx
xor ecx, ecx
call fcn.140065dd0
mov ecx, r15d
call fcn.140066dd0
mov edx, r12d
test r12d, r12d
cmovle edx, eax
mov qword [rsp + 0x58], rbx
mov dword [rsp + 0x50], r15d
mov dword [rsp + 0x48], eax
lea rcx, [rbp + 0x160]
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x38], 0xa
lea rcx, str.res_binder
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], 6
lea rcx, str.tls13
mov qword [rsp + 0x20], rcx
mov r9d, eax
lea r8, [rbp + 0x1a0]
lea rcx, [rbp + 0x1e0]
call fcn.140156bd0
nop
lea rcx, [rbp + 0xf8]
call fcn.140053390
mov qword [rsp + 0x28], rbx
lea rax, [rbp + 0x220]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x98]
mov r8d, r15d
lea rdx, [rbp + 0x1e0]
mov rcx, r13
call fcn.1401590e0
mov rcx, qword [rbp - 0x78]
call fcn.140043080
sub eax, r12d
mov edx, eax
mov rcx, qword [rbp - 0x78]
call fcn.140042d60
test rax, rax
je 0x14013ce65
cmp byte [rax], 0x96
jne 0x14013ce4b
cmp byte [rax + 1], 0x55
jne 0x14013ce4b
cmp byte [rax + 2], 9
jne 0x14013ce4b
cmp byte [rax + 3], 0xad
jne 0x14013ce4b
cmp byte [rax + 4], 0xc8
jne 0x14013ce4b
cmp byte [rax + 5], 0xf2
jne 0x14013ce4b
cmp byte [rax + 6], 0xd9
jne 0x14013ce4b
cmp byte [rax + 7], 0xc7
jne 0x14013ce4b
mov r8d, r12d
lea rdx, [rbp + 0x220]
mov rcx, rax
call fcn.140012bd0
jmp 0x14013ce65
lea rdx, str.This_is_not_the_psk_binder_memory_area..
jmp 0x14013ce5b
lea rdx, str.We_have_a_pre_shared_key_extension__but_no_session_info...
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x28]
nop
lea rcx, [rbp + 0x98]
call fcn.14003e610
nop
lea rcx, [rbp + 0xc8]
call fcn.140053390
nop
lea rcx, [rbp + 0x128]
call fcn.14003e610
nop
lea rcx, [rbp + 0x30]
call fcn.14003e610
nop
lea rcx, [rbp + 0x68]
call fcn.14003e610
nop
lea rcx, [rbp + 0x110]
call fcn.140053390
mov al, 1
mov rcx, qword [rbp + 0x260]
xor rcx, rsp
call fcn.1401e12d0
mov rbx, qword [rsp + 0x3c8]
add rsp, 0x370
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret