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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, pe_nt_image_headers64
call fcn.1401ef830
sub rsp, rax
mov rax, qword [0x140310170]
xor rax, rsp
mov qword [rsp + 0x140], rax
mov r13, qword [rsp + 0x1f0]
mov rax, r9
xor r9d, r9d
mov qword [rsp + 0x90], rdx
xor edx, edx
mov qword [rsp + 0x60], rax
mov r12, r8
mov qword [rsp + 0xa0], rcx
shr r12, 3
mov ebx, r9d
mov qword [rsp + 0x48], rbx
mov esi, r9d
mov qword [rsp + 0x68], r9
mov ebp, r9d
mov dword [rsp + 0x3c], 0xffffffff
mov r15d, r9d
mov qword [rsp + 0x78], r9
mov qword [rsp + 0x58], r9
mov dword [rsp + 0x38], r9d
mov qword [rsp + 0xe8], r12
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rdx
mov qword [rsp + 0xd0], rdx
test rax, rax
jne 0x14016e302
cmp r8, 0xa0
jne 0x14016e2e4
lea rax, [0x14028fed0]
jmp 0x14016e2fd
cmp r8, 0xe0
lea rax, [0x14028ff40]
lea rdx, [0x14028ffb0]
cmovne rax, rdx
mov qword [rsp + 0x60], rax
movsxd rdi, dword [rax + 8]
mov dword [rsp + 0x40], edi
cmp qword [rcx + 0x10], rbx
je 0x14016e31a
cmp qword [rcx + 0x18], rbx
jne 0x14016e3c5
mov qword [rsp + 0x68], rdi
mov rsi, rdi
test edi, edi
jg 0x14016e32d
mov qword [rsp + 0x48], rbx
jmp 0x14016e397
mov rax, qword [0x14036bc78]
mov dword [reloc.WS2_32.dll_accept], r9d
test rax, rax
je 0x14016e35f
mov dword [reloc.WS2_32.dll_accept], r9d
lea r8, [0x14035ed98]
mov dword [rsp + 0x20], r9d
mov edx, edi
mov r9d, 0x1be
xor ecx, ecx
call rax
mov rcx, rdi
call fcn.14021a348
mov rbx, rax
mov qword [rsp + 0x48], rax
mov rax, qword [0x14036bc78]
test rax, rax
je 0x14016e397
mov r9d, 0x1be
mov dword [rsp + 0x20], 1
lea r8, [0x14035ed98]
mov edx, edi
mov rcx, rbx
call rax
mov r8d, 0x1c3
lea rdx, [0x14035edc8]
mov ecx, edi
call fcn.1400b3ae0
mov qword [rsp + 0x78], rax
mov r14, rax
test rbx, rbx
je 0x14016eecc
test rax, rax
je 0x14016ee3a
call fcn.1400f55d0
mov qword [rsp + 0x30], rax
mov r15, rax
test rax, rax
je 0x14016ee3a
call fcn.140131310
mov qword [rsp + 0x58], rax
test rax, rax
je 0x14016ee3a
mov rcx, r15
call fcn.1400f5750
mov rcx, r15
call fcn.1400f5840
mov rcx, r15
mov rbp, rax
call fcn.1400f5840
mov rcx, r15
mov qword [rsp + 0xf0], rax
call fcn.1400f5840
mov rcx, r15
mov r14, rax
call fcn.1400f5840
mov rcx, r15
mov qword [rsp + 0xd8], rax
call fcn.1400f5840
mov rcx, r15
mov qword [rsp + 0xe0], rax
call fcn.1400f5840
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x70], rax
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x88], rax
test rax, rax
je 0x14016e47d
mov rax, qword [rcx + 0x18]
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14016e47d
mov rsi, qword [rsp + 0x88]
jmp 0x14016e8bf
mov rcx, r15
call fcn.1400f5840
mov rcx, r15
mov qword [rsp + 0x88], rax
call fcn.1400f5840
mov rcx, qword [rsp + 0x70]
lea rdx, [0x14027e828]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x90]
dec eax
mov r8d, eax
mov dword [rsp + 0x80], eax
call fcn.14010d0a0
test eax, eax
je 0x14016ee3a
movsxd rax, r12d
mov qword [rsp + 0x98], rax
test r13, r13
je 0x14016e50d
mov ecx, dword [r13]
sub ecx, 1
je 0x14016e4f8
cmp ecx, 1
je 0x14016e4e9
xor eax, eax
jmp 0x14016e512
mov edx, dword [rsp + 0x38]
mov r8, r13
xor ecx, ecx
call qword [r13 + reloc.WS2_32.dll_recv]
jmp 0x14016e512
mov rax, qword [r13 + 0x10]
test rax, rax
je 0x14016e50d
mov r8, qword [r13 + 8]
xor ecx, ecx
mov edx, dword [rsp + 0x38]
call rax
mov eax, 1
inc dword [rsp + 0x38]
test eax, eax
je 0x14016ee3a
mov edx, esi
mov rcx, rbx
call fcn.1400a4430
test eax, eax
jle 0x14016ee3a
mov rax, qword [rsp + 0x60]
lea r8, [rsp + 0x100]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov rdx, rsi
mov rcx, rbx
call fcn.1400c84b0
test eax, eax
je 0x14016ee3a
lea rbx, [rsp + 0x100]
cmp edi, r12d
jle 0x14016e576
movsxd rax, edi
sub rax, qword [rsp + 0x98]
add rbx, rax
cmp edi, r12d
jge 0x14016e595
mov eax, r12d
lea rcx, [rsp + 0x100]
sub eax, edi
xor edx, edx
movsxd r8, eax
movsxd rax, edi
add rcx, rax
call fcn.14020fde0
mov rax, qword [rsp + 0x98]
mov edx, r12d
or byte [rbx], 0x80
mov rcx, rbx
mov r8, qword [rsp + 0x50]
or byte [rax + rbx - 1], 1
call fcn.14009b580
test rax, rax
je 0x14016ee3a
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
mov r8, r15
mov qword [rsp + 0x20], r13
lea edx, [r9 + 0x32]
call fcn.140166b60
test eax, eax
jg 0x14016e5eb
jne 0x14016ee3a
mov rbx, qword [rsp + 0x48]
jmp 0x14016e4d2
xor r8d, r8d
mov rcx, r13
lea edx, [r8 + 2]
call fcn.1401667b0
test eax, eax
je 0x14016ee3a
xor r8d, r8d
mov rcx, r13
lea edx, [r8 + 3]
call fcn.1401667b0
test eax, eax
je 0x14016ee3a
mov rax, qword [rsp + 0x90]
lea ecx, [rdi*8]
xor esi, esi
movsxd rcx, ecx
dec rax
xor edx, edx
div rcx
mov r12d, esi
mov r15, rax
jmp 0x14016e642
xor esi, esi
test r12d, r12d
je 0x14016e65c
mov r8d, r12d
xor edx, edx
mov rcx, r13
call fcn.1401667b0
test eax, eax
je 0x14016ee35
cmp dword [r14 + 0xc], 1
jge 0x14016e690
mov edx, 1
mov rcx, r14
call fcn.14009b1e0
mov rbx, rax
test rax, rax
je 0x14016e69e
mov rcx, qword [r14]
test rcx, rcx
je 0x14016e685
call fcn.1400b3dd0
mov qword [r14], rbx
mov dword [r14 + 0xc], 1
mov rax, qword [r14]
mov dword [r14 + 0x10], esi
mov qword [rax], rsi
mov dword [r14 + 8], esi
mov edi, esi
test r15d, r15d
js 0x14016e771
mov r10, qword [rsp + 0x68]
xor ebx, ebx
lea eax, [r10 - 1]
movsxd rsi, eax
test rsi, rsi
js 0x14016e6e1
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
neg rdx
lea rax, [rsi + rcx]
nop dword [rax + rax]
add byte [rax], 1
jne 0x14016e6e1
dec rax
lea rcx, [rdx + rax]
test rcx, rcx
jns 0x14016e6d0
mov rax, qword [rsp + 0x60]
lea r8, [rsp + 0x100]
mov rcx, qword [rsp + 0x48]
xor r9d, r9d
mov rdx, r10
mov qword [rsp + 0x20], rax
call fcn.1400c84b0
test eax, eax
je 0x14016ee35
mov edx, dword [rsp + 0x40]
lea rcx, [rsp + 0x100]
mov r8, rbp
call fcn.14009b580
test rax, rax
je 0x14016ee35
mov r8d, ebx
mov rdx, rbp
mov rcx, rbp
call fcn.14010d0a0
test eax, eax
je 0x14016ee35
mov r8, rbp
mov rdx, r14
mov rcx, r14
call fcn.14011e340
test eax, eax
je 0x14016ee35
mov ecx, dword [rsp + 0x40]
inc edi
mov r10, qword [rsp + 0x68]
lea eax, [rcx*8]
add ebx, eax
cmp edi, r15d
jle 0x14016e6b7
mov edx, dword [rsp + 0x80]
mov rcx, r14
call fcn.14009b920
test eax, eax
je 0x14016ee35
mov rdi, qword [rsp + 0xd8]
mov rdx, r14
mov rcx, rdi
call fcn.14009b410
test rax, rax
je 0x14016ee35
mov r8, qword [rsp + 0x70]
mov rdx, rdi
mov rcx, rdi
call fcn.14011e340
test eax, eax
je 0x14016ee35
mov rdx, qword [rsp + 0x50]
mov rcx, rbp
call fcn.14010ce90
test eax, eax
je 0x14016ee35
mov rsi, qword [rsp + 0xe0]
mov r9, rbp
mov rbx, qword [rsp + 0x30]
mov rdx, rsi
mov r8, rdi
mov qword [rsp + 0x20], rbx
xor ecx, ecx
call fcn.140157b30
test eax, eax
je 0x14016ee30
lea r8, [0x14027e828]
mov rdx, rsi
mov rcx, rbp
call fcn.14011e6f0
test eax, eax
je 0x14016ee30
mov rsi, qword [rsp + 0x88]
mov r8, rbp
mov rcx, rsi
mov rdx, rdi
call fcn.14011e6f0
test eax, eax
je 0x14016ee30
mov rdx, qword [rsp + 0x70]
mov rcx, rsi
call fcn.14009b7a0
test eax, eax
js 0x14016e868
mov r9d, 1
mov qword [rsp + 0x20], r13
mov r8, rbx
mov rcx, rsi
lea edx, [r9 + 0x31]
call fcn.140166b60
test eax, eax
jg 0x14016e8a3
jne 0x14016ee30
mov rax, qword [rsp + 0x90]
inc r12d
lea eax, [rax*4]
cmp r12d, eax
jl 0x14016e640
mov rbx, qword [rsp + 0x48]
mov edi, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x30]
mov r12, qword [rsp + 0xe8]
jmp 0x14016e4d2
mov edx, 2
mov rcx, r13
lea r8d, [rdx - 1]
call fcn.1401667b0
mov r15, rbx
test eax, eax
je 0x14016ee3a
mov rbx, qword [rsp + 0x70]
lea r8, [0x14027e828]
mov rcx, rbx
mov rdx, rsi
call fcn.14011e6f0
test eax, eax
je 0x14016ee3a
mov r14, qword [rsp + 0x50]
mov r8, rbx
mov r9, r14
mov qword [rsp + 0x20], r15
xor edx, edx
mov rcx, rbp
call fcn.140157b30
test eax, eax
je 0x14016ee3a
mov edx, 2
mov rcx, rbx
call fcn.14009b4f0
test eax, eax
je 0x14016ee3a
mov rdi, qword [rsp + 0x58]
mov r8, r15
mov rcx, rdi
mov rdx, rsi
call fcn.140131450
test eax, eax
je 0x14016ee3a
mov r12, qword [rsp + 0xf0]
nop dword [rax + rax]
mov qword [rsp + 0x28], rdi
mov r9, rsi
mov r8, rbp
mov qword [rsp + 0x20], r15
mov rdx, rbx
mov rcx, r12
call fcn.140138dd0
test eax, eax
je 0x14016ee3a
cmp dword [r12 + 8], 1
jne 0x14016e998
mov rax, qword [r12]
cmp qword [rax], 1
jne 0x14016e998
cmp dword [r12 + 0x10], 0
jne 0x14016e998
lea r8, [0x14027e828]
mov rdx, rbx
mov rcx, rbx
call fcn.14011e340
test eax, eax
jne 0x14016e940
jmp 0x14016ee3a
mov edx, 3
mov rcx, r13
lea r8d, [rdx - 2]
call fcn.1401667b0
test eax, eax
je 0x14016ee3a
mov dword [rsp + 0x3c], 1
nop dword [rax]
mov rbp, qword [rsp + 0xa0]
mov rbx, qword [rbp + 0x10]
cmp rsi, rbx
je 0x14016eb3f
test rbx, rbx
je 0x14016ea50
mov rdi, qword [rbx]
test rdi, rdi
je 0x14016ea18
test byte [rbx + 0x14], 2
jne 0x14016ea18
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016e9fb
xor edx, edx
mov rcx, rdi
call rax
mov rcx, rdi
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ea1f
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
mov ecx, dword [rbx + 0x14]
test cl, 1
je 0x14016ea67
test rax, rax
je 0x14016ea33
xor edx, edx
mov rcx, rbx
call rax
mov rcx, rbx
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ea57
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
test rsi, rsi
jne 0x14016ea77
xor ebx, ebx
mov qword [rbp + 0x10], rbx
jmp 0x14016eb46
bts ecx, 0xf
mov qword [rbx], 0
mov dword [rbx + 0x14], ecx
jmp 0x14016ea57
call fcn.14009b110
mov rbx, rax
test rax, rax
jne 0x14016ea94
mov rax, qword [0x14036bc68]
mov qword [rbp + 0x10], rbx
jmp 0x14016eb46
mov rdx, rsi
mov rcx, rbx
call fcn.14009b410
test rax, rax
jne 0x14016ea84
mov rdi, qword [rbx]
test rdi, rdi
je 0x14016eae2
test byte [rbx + 0x14], 2
jne 0x14016eae2
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016eac5
xor edx, edx
mov rcx, rdi
call rax
mov rcx, rdi
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016eae9
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
mov ecx, dword [rbx + 0x14]
test cl, 1
je 0x14016eb29
test rax, rax
je 0x14016eafd
xor edx, edx
mov rcx, rbx
call rax
mov rcx, rbx
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016eb37
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
xor ebx, ebx
mov qword [rbp + 0x10], rbx
jmp 0x14016eb46
bts ecx, 0xf
mov qword [rbx], 0
mov dword [rbx + 0x14], ecx
xor ebx, ebx
mov qword [rbp + 0x10], rbx
jmp 0x14016eb46
mov rax, qword [0x14036bc68]
mov rbx, qword [rbp + 0x18]
cmp r14, rbx
je 0x14016ec07
test rbx, rbx
je 0x14016ebe2
mov rdi, qword [rbx]
test rdi, rdi
je 0x14016eb9a
test byte [rbx + 0x14], 2
jne 0x14016eb9a
test rax, rax
je 0x14016eb76
xor edx, edx
mov rcx, rdi
call rax
mov rcx, rdi
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016eb9a
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
mov ecx, dword [rbx + 0x14]
test cl, 1
je 0x14016ebd4
test rax, rax
je 0x14016ebae
xor edx, edx
mov rcx, rbx
call rax
mov rcx, rbx
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ebe2
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
jmp 0x14016ebe2
bts ecx, 0xf
mov qword [rbx], 0
mov dword [rbx + 0x14], ecx
test r14, r14
jne 0x14016ebeb
xor ebx, ebx
jmp 0x14016ec03
call fcn.14009b110
mov rbx, rax
test rax, rax
jne 0x14016ec90
mov rax, qword [0x14036bc68]
mov qword [rbp + 0x18], rbx
mov rbx, qword [rbp + 0x20]
test rbx, rbx
je 0x14016ed4b
mov rdi, qword [rbx]
test rdi, rdi
je 0x14016ec52
test byte [rbx + 0x14], 2
jne 0x14016ec52
test rax, rax
je 0x14016ec2e
xor edx, edx
mov rcx, rdi
call rax
mov rcx, rdi
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ec52
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
mov ecx, dword [rbx + 0x14]
test cl, 1
je 0x14016ed3d
test rax, rax
je 0x14016ec6a
xor edx, edx
mov rcx, rbx
call rax
mov rcx, rbx
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ed4b
mov edx, 1
xor ecx, ecx
call rax
jmp 0x14016ed4b
mov rdx, r14
mov rcx, rbx
call fcn.14009b410
test rax, rax
jne 0x14016ebfc
mov rdi, qword [rbx]
test rdi, rdi
je 0x14016ece2
test byte [rbx + 0x14], 2
jne 0x14016ece2
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ecc5
xor edx, edx
mov rcx, rdi
call rax
mov rcx, rdi
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ece9
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
mov ecx, dword [rbx + 0x14]
test cl, 1
je 0x14016ed28
test rax, rax
je 0x14016ecfd
xor edx, edx
mov rcx, rbx
call rax
mov rcx, rbx
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ed36
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
xor ebx, ebx
jmp 0x14016ec03
bts ecx, 0xf
mov qword [rbx], 0
mov dword [rbx + 0x14], ecx
xor ebx, ebx
jmp 0x14016ec03
bts ecx, 0xf
mov qword [rbx], 0
mov dword [rbx + 0x14], ecx
call fcn.14009b110
mov rbx, rax
test rax, rax
jne 0x14016ed87
mov rax, qword [0x14036bc68]
cmp qword [rbp + 0x10], 0
mov qword [rbp + 0x20], rbx
je 0x14016ed7a
cmp qword [rbp + 0x18], 0
je 0x14016ed7a
test rbx, rbx
jne 0x14016ee41
mov dword [rsp + 0x3c], 0xffffffff
jmp 0x14016ee41
mov rdx, r12
mov rcx, rbx
call fcn.14009b410
test rax, rax
jne 0x14016ed58
mov rdi, qword [rbx]
test rdi, rdi
je 0x14016edd5
test byte [rbx + 0x14], 2
jne 0x14016edd5
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016edb8
xor edx, edx
mov rcx, rdi
call rax
mov rcx, rdi
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016eddc
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
mov ecx, dword [rbx + 0x14]
test cl, 1
je 0x14016ee1b
test rax, rax
je 0x14016edf0
xor edx, edx
mov rcx, rbx
call rax
mov rcx, rbx
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ee29
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
xor ebx, ebx
jmp 0x14016ed5f
bts ecx, 0xf
mov qword [rbx], 0
mov dword [rbx + 0x14], ecx
xor ebx, ebx
jmp 0x14016ed5f
mov r15, rbx
jmp 0x14016ee3a
mov r15, qword [rsp + 0x30]
mov rax, qword [0x14036bc68]
mov rbx, qword [rsp + 0x48]
test rbx, rbx
je 0x14016ee7b
test rax, rax
je 0x14016ee57
xor edx, edx
mov rcx, rbx
call rax
mov rcx, rbx
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ee7b
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [0x14036bc68]
mov rbp, qword [rsp + 0x58]
mov r14, qword [rsp + 0x78]
test r14, r14
je 0x14016eeb3
test rax, rax
je 0x14016ee96
xor edx, edx
mov rcx, r14
call rax
mov rcx, r14
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016eeb3
mov edx, 1
xor ecx, ecx
call rax
test r15, r15
je 0x14016ef3f
mov eax, dword [r15 + 0x34]
test eax, eax
je 0x14016eed5
dec eax
mov dword [r15 + 0x34], eax
jmp 0x14016ef37
mov rax, qword [0x14036bc68]
jmp 0x14016ee85
dec dword [r15 + 0x28]
mov ecx, dword [r15 + 0x28]
mov rax, qword [r15 + 0x20]
mov r8d, dword [r15 + 0x30]
mov r9d, dword [rax + rcx*4]
cmp r9d, r8d
jae 0x14016ef2b
mov eax, dword [r15 + 0x18]
sub r8d, r9d
lea edx, [rax - 1]
sub eax, r8d
and edx, 0xf
mov dword [r15 + 0x18], eax
test r8d, r8d
je 0x14016ef2b
dec r8d
test edx, edx
jne 0x14016ef24
mov rax, qword [r15 + 8]
mov edx, reloc.WS2_32.dll_ntohs
mov rcx, qword [rax + 0x180]
mov qword [r15 + 8], rcx
jmp 0x14016ef26
dec edx
test r8d, r8d
jne 0x14016ef07
mov dword [r15 + 0x30], r9d
mov dword [r15 + 0x38], 0
mov rcx, r15
call fcn.1400f56b0
test rbp, rbp
je 0x14016ef95
lea rcx, [rbp + 8]
call fcn.14009aff0
lea rcx, [rbp + 0x20]
call fcn.14009aff0
lea rcx, [rbp + 0x38]
call fcn.14009aff0
test byte [rbp + 0x60], 1
je 0x14016ef95
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ef78
xor edx, edx
mov rcx, rbp
call rax
mov rcx, rbp
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016ef95
mov edx, 1
xor ecx, ecx
call rax
mov rax, qword [rsp + 0xa8]
test rax, rax
je 0x14016f02c
mov rdx, qword [rax + 0x30]
test rdx, rdx
je 0x14016efcb
test byte [rsp + 0xb8], 2
jne 0x14016efcb
lea rcx, [rsp + 0xa8]
call rdx
mov rax, qword [rsp + 0xa8]
test rax, rax
je 0x14016f02c
movsxd rdx, dword [rax + 0x60]
test edx, edx
je 0x14016f02c
mov rcx, qword [rsp + 0xc0]
test rcx, rcx
je 0x14016f02c
test byte [rsp + 0xb8], 4
jne 0x14016f02c
call fcn.1400011e0
mov rax, qword [0x14036bc68]
mov rbx, qword [rsp + 0xc0]
test rax, rax
je 0x14016f00f
xor edx, edx
mov rcx, rbx
call rax
mov rcx, rbx
call fcn.1402196e8
mov rax, qword [0x14036bc68]
test rax, rax
je 0x14016f02c
mov edx, 1
xor ecx, ecx
call rax
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
je 0x14016f03e
call fcn.1400f7380
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
je 0x14016f050
call fcn.1400c1e20
mov eax, dword [rsp + 0x3c]
mov rcx, qword [rsp + 0x140]
xor rcx, rsp
call fcn.1401ef4e0
add rsp, 0x158
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret