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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rdi
sub rsp, 0x110
mov r10, qword [rcx + 0x10]
xor r11d, r11d
mov qword [rax - 0x10], rbx
mov r9, r8
mov rbx, qword [rsp + 0x140]
mov rdi, rcx
mov qword [rax - 0x18], rbp
movsxd r8, dword [r10 + 0x90]
mov qword [rax - 0x20], rsi
xor sil, sil
mov qword [rax - 0x28], r12
mov r12d, r11d
mov qword [rax - 0x38], r14
mov r14, rdx
mov qword [rax - 0x40], r15
mov byte [rsp + 0x40], sil
mov qword [rsp + 0x78], r11
mov dword [rsp + 0x80], r11d
mov dword [rsp + 0x70], r11d
mov qword [rsp + 0x98], r10
mov dword [rsp + 0x84], r8d
cmp dword [r10 + 0x94], r8d
jg 0x1400ba303
xor r9d, r9d
mov dword [rsp + 0x20], r11d
xor r8d, r8d
lea edx, [r11 + 0xf]
mov rcx, r10
call fcn.1400ca310
mov r9, qword [rsp + 0x130]
xor r11d, r11d
mov dword [rsp + 0x84], eax
jmp 0x1400ba32b
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
mov dword [r10 + 0x90], eax
mov rax, qword [r10 + 0x88]
mov qword [rax + rcx*8], send
mov qword [rax + rcx*8 + 8], r11
mov qword [rax + rcx*8 + 0x10], r11
mov r15, qword [r14 + 0x20]
mov ebp, r11d
movsxd rax, dword [r14 + 0x14]
mov r10, r11
mov rcx, qword [r9 + 0x20]
movabs r8, 0x8000000000000000
mov rdx, qword [rbx + 0x60]
imul rax, rax, 0x38
mov qword [rsp + 0xe8], r13
add rax, r15
mov dword [rsp + 0x50], r11d
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], r11
cmp r15, rax
jae 0x1400ba801
lea r14, [r9 + 0x44]
mov r13, r14
lea r8, [0x14011a3e0]
nop dword [rax]
test byte [r15 + 0x12], 2
lea rdx, [fcn.1400c18d0]
mov rbx, qword [r15]
jne 0x1400ba688
movzx ecx, byte [r9 + 0x3c]
test cl, 0x40
jne 0x1400ba688
mov eax, dword [rbx + 4]
and eax, 1
test cl, 8
je 0x1400ba3d7
test eax, eax
je 0x1400ba683
mov eax, dword [r13]
cmp dword [rbx + 0x34], eax
je 0x1400ba3e3
mov r14, r13
jmp 0x1400ba683
test eax, eax
jne 0x1400ba683
mov eax, dword [r13]
mov qword [rsp + 0xa8], rdx
mov ecx, 3
mov word [rsp + 0xc4], cx
mov qword [rsp + 0xb0], r8
mov dword [rsp + 0xc8], eax
test rbx, rbx
je 0x1400ba427
mov rdx, rbx
lea rcx, [rsp + 0xa0]
call fcn.1401480d0
movzx ecx, word [rsp + 0xc4]
xor r11d, r11d
mov r14, r13
test cx, cx
je 0x1400ba683
test rbx, rbx
je 0x1400ba44e
mov rcx, qword [rdi]
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
call fcn.1400c0d30
mov rsi, rax
jmp 0x1400ba451
mov rsi, r11
mov rbp, qword [rdi]
test r12, r12
jne 0x1400ba466
mov r12, rsi
mov qword [rsp + 0x78], rsi
jmp 0x1400ba67a
test rsi, rsi
je 0x1400ba67a
mov eax, dword [r12 + 4]
lea r14, [rsi + 4]
and eax, 0x20000001
cmp eax, 0x20000000
je 0x1400ba497
mov eax, dword [r14]
and eax, 0x20000001
cmp eax, 0x20000000
jne 0x1400ba5bf
cmp byte [rdi + 0x12c], 2
jae 0x1400ba5bf
test rbp, rbp
je 0x1400ba4b8
mov edx, 0x18
mov rcx, rbp
call fcn.1400f2950
jmp 0x1400ba4c2
mov ecx, 0x18
call fcn.140108690
mov rcx, rax
test rax, rax
je 0x1400ba4ec
mov rax, qword [rdi + 0xc0]
mov qword [rcx], rax
lea rax, [0x1400fa1f0]
mov qword [rdi + 0xc0], rcx
mov qword [rcx + 0x10], rax
mov qword [rcx + 8], r12
jmp 0x1400ba4f7
mov rcx, qword [rdi]
mov rdx, r12
call fcn.1400fa200
mov rdx, rsi
mov rcx, rdi
call fcn.1400fa170
xor ebx, ebx
lea rdx, [rsp + 0x68]
lea rcx, [0x1401c9c9c]
mov dword [rsp + 0x68], ebx
call fcn.140102d40
test eax, eax
mov rcx, rbp
mov eax, 2
cmove ebx, eax
mov edx, ebx
add rdx, 0x48
call fcn.1400f2950
mov qword [rsp + 0x78], rax
mov r12, rax
test rax, rax
je 0x1400ba677
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r12], xmm0
movups xmmword [r12 + 0x10], xmm0
movups xmmword [r12 + 0x20], xmm0
movups xmmword [r12 + 0x30], xmm0
mov qword [r12 + 0x40], rax
mov eax, 0xffffffff
mov word [r12 + 0x32], ax
mov byte [r12], 0x9b
test ebx, ebx
jne 0x1400ba5a2
mov eax, dword [rsp + 0x68]
mov ecx, 0x20800800
test eax, eax
mov dword [r12 + 8], eax
mov edx, 0x10800800
mov dword [r12 + 0x28], 1
cmovne ecx, edx
or dword [r12 + 4], ecx
jmp 0x1400ba677
lea rax, [r12 + 0x48]
mov qword [r12 + 8], rax
mov word [rax], 0x30
mov dword [r12 + 0x28], 1
jmp 0x1400ba677
mov edx, 0x48
mov rcx, rbp
call fcn.1400f2950
mov rbx, rax
test rax, rax
je 0x1400ba659
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
mov qword [rbx + 0x40], rax
mov eax, 0xffffffff
mov word [rbx + 0x32], ax
mov byte [rbx], 0x2c
mov qword [rbx + 0x18], rsi
mov edx, dword [r14]
and edx, 0x400208
or edx, dword [rbx + 4]
mov dword [rbx + 4], edx
mov ecx, dword [rsi + 0x28]
inc ecx
mov dword [rbx + 0x28], ecx
mov qword [rbx + 0x10], r12
mov eax, dword [r12 + 4]
and eax, 0x400208
or eax, edx
mov dword [rbx + 4], eax
mov eax, dword [r12 + 0x28]
cmp eax, ecx
jl 0x1400ba638
inc eax
mov dword [rbx + 0x28], eax
mov rax, qword [rdi]
mov r8d, dword [rax + 0x94]
cmp dword [rbx + 0x28], r8d
jle 0x1400ba66f
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, rdi
call fcn.1400f54a0
jmp 0x1400ba66f
mov rcx, qword [rdi]
mov rdx, r12
call fcn.1400fa200
mov rcx, qword [rdi]
mov rdx, rsi
call fcn.1400fa200
mov r12, rbx
mov qword [rsp + 0x78], rbx
mov r14, r13
mov ebp, dword [rsp + 0x50]
movzx esi, byte [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov r8d, dword [r14]
mov r9, qword [rsp + 0x130]
cmp dword [r15 + 0x1c], r8d
jne 0x1400ba83d
test byte [r15 + 0x14], 0x82
je 0x1400ba83d
movzx ecx, byte [r9 + 0x3c]
test cl, 0x58
je 0x1400ba6d9
mov rax, qword [r15]
mov edx, dword [rax + 4]
test dl, 3
je 0x1400ba7c1
cmp dword [rax + 0x34], r8d
jne 0x1400ba7c1
test cl, 0x18
je 0x1400ba6d9
test dl, 2
jne 0x1400ba7c1
mov rax, qword [rsp + 0x138]
test qword [r15 + 0x28], rax
jne 0x1400ba7c1
movsxd rax, dword [r15 + 0x20]
test eax, eax
js 0x1400ba7c1
lea rdx, [rax + rax*2]
mov rax, qword [r9 + 0x20]
mov rcx, qword [rax + 8]
movzx edx, byte [rcx + rdx*8 + 0xc]
mov rcx, qword [r15]
call fcn.140104320
test eax, eax
je 0x1400ba7b9
movsxd rcx, dword [r15 + 0x20]
cmp ecx, 0x40
jl 0x1400ba72d
movabs rbx, 0x8000000000000000
jmp 0x1400ba735
mov ebx, 1
shl rbx, cl
test sil, sil
jne 0x1400ba767
mov rax, qword [rsp + 0x88]
lea rcx, [rcx + rcx*2]
lea rdx, str.automatic_index_on__s__s_
mov r9, qword [rax + 8]
mov r8, qword [rax]
mov r9, qword [r9 + rcx*8]
mov ecx, 0x11c
call fcn.14009bf80
mov byte [rsp + 0x40], 1
mov r10, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
test r10, rbx
jne 0x1400ba7af
mov rcx, qword [rdi]
lea esi, [rbp + 1]
mov r8d, esi
call fcn.14014b8d0
test eax, eax
jne 0x1400bb28b
mov r10, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
or r10, rbx
movsxd rcx, ebp
mov ebp, esi
mov dword [rsp + 0x50], esi
mov qword [rsp + 0x60], r10
mov rax, qword [rdx + 0x48]
mov qword [rax + rcx*8], r15
mov r9, qword [rsp + 0x130]
jmp 0x1400ba7cb
mov r9, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x58]
mov r10, qword [rsp + 0x60]
mov rax, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x40]
lea r8, [0x14011a3e0]
add r15, 0x38
mov r11d, 0
cmp r15, rax
jb 0x1400ba390
mov rcx, qword [rsp + 0x88]
movabs r8, 0x8000000000000000
mov word [rdx + 0x3c], bp
not r10
mov word [rdx + 0x18], bp
or r10, r8
mov dword [rdx + 0x38], 0x4241
mov r12d, 0x3f
movsx eax, word [rcx + 0x36]
mov edx, r11d
mov r9, qword [r9 + 0x50]
mov r8d, eax
and r10, r9
mov qword [rsp + 0x60], r10
cmp r12w, ax
jge 0x1400ba849
mov ebx, r12d
jmp 0x1400ba851
mov r10, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
jmp 0x1400ba7d0
mov ebx, r8d
test r8d, r8d
jle 0x1400ba868
mov ecx, ebp
mov eax, edx
inc ebp
bt r10, rax
cmovae ebp, ecx
inc edx
cmp edx, ebx
jl 0x1400ba851
mov dword [rsp + 0x50], ebp
test r9, r9
jns 0x1400ba877
add ebp, 0xffffffc1
add ebp, r8d
mov dword [rsp + 0x50], ebp
mov rcx, qword [rdi]
lea esi, [rbp + 1]
movsx rbp, si
mov eax, ebp
movsx r13d, si
add eax, r13d
lea edx, [rax*2 + 9]
add edx, ebp
lea eax, [rbp + 0xe]
and edx, 0xfffffff8
lea eax, [rdx + rax*8]
movsxd r15, eax
test rcx, rcx
je 0x1400ba8ae
mov rdx, r15
call fcn.1400f2950
jmp 0x1400ba8b6
mov rcx, r15
call fcn.140108690
mov r14, rax
test rax, rax
je 0x1400bb28b
mov r8, r15
xor edx, edx
mov rcx, rax
call fcn.14015ddc0
mov r9d, dword [rsp + 0x50]
lea rax, [r14 + 0x70]
mov r15, qword [rsp + 0x128]
lea rdx, [rax + rbp*8]
mov r11, qword [rsp + 0x88]
mov qword [r14 + 0x40], rax
lea eax, [r13 + 1]
movsxd rcx, eax
lea r13, [0x1401c61a8]
mov qword [r14 + 0x10], rdx
mov word [r14 + 0x60], si
mov word [r14 + 0x5e], r9w
lea rax, [rdx + rcx*2]
xor ecx, ecx
mov qword [r14 + 8], rax
lea rax, [rax + rbp*2]
mov qword [r14 + 0x38], rax
mov ebp, ecx
mov rax, qword [rsp + 0x58]
mov dword [rsp + 0x68], ecx
mov qword [rsp + 0x90], rcx
mov qword [rax + 0x20], r14
lea rax, str.auto_index
mov qword [r14], rax
mov rax, qword [rsp + 0x48]
mov qword [r14 + 0x18], r11
mov rsi, qword [r15 + 0x20]
cmp rsi, rax
jae 0x1400baafe
mov r12, qword [rsp + 0x130]
mov r13d, ecx
mov qword [rsp + 0x68], rcx
nop word [rax + rax]
mov edx, dword [r12 + 0x44]
cmp dword [rsi + 0x1c], edx
jne 0x1400baac9
test byte [rsi + 0x14], 0x82
je 0x1400baac9
movzx ecx, byte [r12 + 0x3c]
test cl, 0x58
je 0x1400ba9c1
mov rax, qword [rsi]
mov r8d, dword [rax + 4]
test r8b, 3
je 0x1400baac4
cmp dword [rax + 0x34], edx
mov rax, qword [rsp + 0x48]
jne 0x1400baac9
test cl, 0x18
je 0x1400ba9c1
test r8b, 2
jne 0x1400baac9
mov rcx, qword [rsp + 0x138]
mov r15d, ebx
test qword [rsi + 0x28], rcx
jne 0x1400baac9
movsxd rax, dword [rsi + 0x20]
test eax, eax
js 0x1400baac4
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x20]
mov rcx, qword [rax + 8]
movzx edx, byte [rcx + rdx*8 + 0xc]
mov rcx, qword [rsi]
call fcn.140104320
test eax, eax
je 0x1400baac4
mov edx, dword [rsi + 0x20]
cmp edx, 0x40
jl 0x1400baa18
movabs rax, 0x8000000000000000
jmp 0x1400baa22
mov ecx, edx
mov eax, 1
shl rax, cl
mov r8, qword [rsp + 0x90]
test r8, rax
jne 0x1400baac4
mov rcx, qword [rsi]
or r8, rax
mov rax, qword [r14 + 8]
mov qword [rsp + 0x90], r8
mov word [rax + r13], dx
test dword [rcx + 4], 0x400
je 0x1400baa5d
mov rbx, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
jmp 0x1400baa65
mov rbx, qword [rcx + 0x18]
mov rdx, qword [rcx + 0x10]
test dword [rdx + 4], 0x200
jne 0x1400baa8c
test rbx, rbx
je 0x1400baa7c
test dword [rbx + 4], 0x200
jne 0x1400baa89
mov rcx, rdi
call fcn.1400f9c40
test rax, rax
jne 0x1400baa99
mov rdx, rbx
mov rcx, rdi
call fcn.1400f9c40
test rax, rax
je 0x1400baa9e
mov rcx, qword [rax]
jmp 0x1400baaa5
lea rcx, [0x1401c61a8]
mov r8, qword [rsp + 0x68]
inc ebp
mov rax, qword [r14 + 0x40]
add r13, 2
mov ebx, r15d
mov qword [r8 + rax], rcx
add r8, 8
mov qword [rsp + 0x68], r8
mov rax, qword [rsp + 0x48]
add rsi, 0x38
cmp rsi, rax
jb 0x1400ba970
mov r9d, dword [rsp + 0x50]
lea r13, [0x1401c61a8]
mov r11, qword [rsp + 0x88]
mov r12d, 0x3f
mov r15, qword [rsp + 0x128]
xor ecx, ecx
mov dword [rsp + 0x68], ebp
test ebx, ebx
jle 0x1400bab43
mov r10, qword [rsp + 0x60]
movsxd rax, ebp
lea rdx, [rax*8]
lea r8, [rax + rax]
mov eax, ecx
bt r10, rax
jae 0x1400bab39
mov rax, qword [r14 + 8]
inc ebp
mov word [r8 + rax], cx
add r8, 2
mov rax, qword [r14 + 0x40]
mov qword [rdx + rax], r13
add rdx, 8
inc ecx
cmp ecx, ebx
jl 0x1400bab16
mov dword [rsp + 0x68], ebp
mov rax, qword [rsp + 0x130]
cmp qword [rax + 0x50], 0
jge 0x1400bab9e
cmp r12w, word [r11 + 0x36]
jge 0x1400bab9e
movsxd rax, ebp
lea rcx, [rax*8]
lea rdx, [rax + rax]
nop dword [rax + rax]
mov rax, qword [r14 + 8]
lea rdx, [rdx + 2]
inc ebp
lea rcx, [rcx + 8]
mov word [rdx + rax - 2], r12w
inc r12d
mov rax, qword [r14 + 0x40]
mov qword [rcx + rax - 8], r13
movsx eax, word [r11 + 0x36]
cmp r12d, eax
jl 0x1400bab70
mov dword [rsp + 0x68], ebp
mov rax, qword [r14 + 8]
mov edx, 0xffffffff
movsxd rcx, ebp
xor r12d, r12d
mov rbp, qword [rsp + 0x140]
mov word [rax + rcx*2], dx
lea edx, [r9 + 1]
mov rax, qword [r14 + 0x40]
mov qword [rax + rcx*8], r13
mov r13, qword [rsp + 0x98]
mov eax, dword [rdi + 0x34]
mov dword [rbp + 8], eax
inc dword [rdi + 0x34]
movsxd rcx, dword [r13 + 0x90]
mov r8d, dword [rbp + 8]
cmp dword [r13 + 0x94], ecx
jg 0x1400bac08
mov r9d, edx
mov dword [rsp + 0x20], r12d
lea edx, [r12 + 0x74]
mov rcx, r13
call fcn.1400ca310
lea rbx, [r13 + 0x88]
jmp 0x1400bac3a
lea eax, [rcx + 1]
mov dword [r13 + 0x90], eax
lea rcx, [rcx + rcx*2]
lea rbx, [r13 + 0x88]
mov rax, qword [rbx]
mov dword [rax + rcx*8], reloc.WS2_32.dll_WSACleanup
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov rsi, qword [rdi + 0x10]
mov rdx, r14
mov rcx, rdi
call fcn.140107230
mov r8, rax
test rax, rax
je 0x1400bac9b
mov rax, qword [rsi]
cmp byte [rax + 0x67], 0
je 0x1400bac7f
cmp qword [rax + 0x308], 0
jne 0x1400bac76
add dword [r8], 0xffffffff
jne 0x1400bac76
mov rcx, qword [r8 + 0x10]
mov rdx, r8
call fcn.1400f2a10
lea rbx, [r13 + 0x88]
jmp 0x1400bac9b
movsxd rax, dword [rsi + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov byte [rax + rcx*8 - 0x17], 0xf8
mov qword [rax + rcx*8 - 8], r8
mov rax, qword [rdi]
test dword [rax + 0x60], 0x80000
jne 0x1400bad0d
mov edx, dword [rdi + 0x38]
inc edx
mov dword [rdi + 0x38], edx
mov dword [rbp + 0x34], edx
movsxd rcx, dword [r13 + 0x90]
cmp dword [r13 + 0x94], ecx
jg 0x1400bacdf
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x4d
mov r8d, 0x2710
mov rcx, r13
call fcn.1400ca310
jmp 0x1400bad0d
lea eax, [rcx + 1]
mov dword [r13 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 4], 0x2710
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movzx eax, byte [rbp + 0x40]
imul rdx, rax, 0x68
mov rax, qword [r15]
mov r15, qword [rax + 8]
add r15, rdx
test byte [r15 + 0x48], 0x20
je 0x1400bae27
movsxd r8, dword [r13 + 0x90]
mov ebp, dword [r15 + 0x3c]
mov dword [rsp + 0x70], r8d
cmp dword [r13 + 0x94], r8d
jg 0x1400bad60
xor r9d, r9d
mov dword [rsp + 0x20], r12d
xor r8d, r8d
mov rcx, r13
lea edx, [r9 + 0x47]
call fcn.1400ca310
mov dword [rsp + 0x70], eax
jmp 0x1400bad88
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
mov dword [r13 + 0x90], eax
mov rax, qword [rbx]
mov qword [rax + rcx*8], 0x47
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [r13 + 0x90]
mov edx, dword [r15 + 0x38]
cmp dword [r13 + 0x94], ecx
jg 0x1400badb4
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, ebp
mov rcx, r13
lea edx, [r9 + 0xb]
call fcn.1400ca310
jmp 0x1400badde
lea eax, [rcx + 1]
mov dword [r13 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r12
movsxd rsi, dword [r13 + 0x90]
cmp dword [r13 + 0x94], esi
jg 0x1400bae09
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov r8d, ebp
mov rcx, r13
lea edx, [r9 + 0xc]
call fcn.1400ca310
mov esi, eax
jmp 0x1400bae7f
lea eax, [rsi + 1]
mov dword [r13 + 0x90], eax
lea rcx, [rsi + rsi*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], ebp
jmp 0x1400bae71
movsxd rsi, dword [r13 + 0x90]
mov edx, dword [rbp + 4]
cmp dword [r13 + 0x94], esi
jg 0x1400bae55
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov r8d, edx
mov rcx, r13
lea edx, [r9 + 0x24]
call fcn.1400ca310
mov esi, eax
jmp 0x1400bae7f
lea eax, [rsi + 1]
mov dword [r13 + 0x90], eax
lea rcx, [rsi + rsi*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0x24
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 0x10], r12
mov qword [rax + rcx*8 + 8], 0
mov rbp, qword [rsp + 0x78]
mov eax, reloc.WS2_32.dll_recv
test rbp, rbp
je 0x1400baeb7
dec dword [rdi + 0x44]
mov r9d, eax
mov r8d, dword [rdi + 0x44]
mov rdx, rbp
mov rcx, rdi
mov dword [rsp + 0x80], r8d
call fcn.1400fa4f0
mov rax, qword [rsp + 0x58]
or dword [rax + 0x38], 0x20000
movzx eax, byte [rdi + 0x1f]
test al, al
jne 0x1400baec8
inc dword [rdi + 0x38]
mov r12d, dword [rdi + 0x38]
jmp 0x1400baed8
dec al
movzx eax, al
mov byte [rdi + 0x1f], al
mov r12d, dword [rdi + rax*4 + 0xe0]
xor eax, eax
mov r9d, r12d
mov dword [rsp + 0x38], eax
mov rdx, r14
mov qword [rsp + 0x30], rax
mov rcx, rdi
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x140]
mov r8d, dword [rax + 4]
call fcn.140101f90
mov r9, qword [rsp + 0x140]
mov r14d, eax
mov r8d, dword [r9 + 0x34]
test r8d, r8d
je 0x1400bafa9
mov rax, qword [rsp + 0x58]
movsxd rdx, dword [r13 + 0x90]
movzx ebp, word [rax + 0x18]
cmp dword [r13 + 0x94], edx
jg 0x1400baf58
xor r9d, r9d
mov dword [rsp + 0x20], r14d
mov edx, 0xb4
mov rcx, r13
call fcn.1400ca310
mov r9, qword [rsp + 0x140]
mov edx, eax
jmp 0x1400baf87
lea rcx, [rdx + rdx*2]
xor r10d, r10d
lea eax, [rdx + 1]
mov dword [r13 + 0x90], eax
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0xb4
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r10d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r10
mov rax, qword [r13]
cmp byte [rax + 0x67], 0
jne 0x1400bafa4
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx]
mov byte [rax + rcx*8 + 1], 0xfd
mov dword [rax + rcx*8 + 0x10], ebp
mov rbp, qword [rsp + 0x78]
movsxd rcx, dword [r13 + 0x90]
mov edx, dword [r9 + 8]
cmp dword [r13 + 0x94], ecx
jg 0x1400bafda
mov r8d, edx
mov dword [rsp + 0x20], 0
mov edx, 0x8a
mov r9d, r12d
mov rcx, r13
call fcn.1400ca310
jmp 0x1400bb008
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [r13 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0x8a
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
movsxd rdx, dword [r13 + 0x90]
test edx, edx
jle 0x1400bb02b
mov rax, qword [rbx]
lea rcx, [rdx + rdx*2]
mov edx, reloc.WS2_32.dll_recv
mov word [rax + rcx*8 - 0x16], dx
mov edx, dword [r13 + 0x90]
test rbp, rbp
je 0x1400bb061
mov r9, qword [r13 + 0x18]
mov ecx, dword [rsp + 0x80]
not ecx
mov eax, dword [r9 + 0x48]
add eax, dword [r9 + 0x44]
jns 0x1400bb057
mov r8d, ecx
mov rdx, r13
mov rcx, r9
call fcn.1400dde30
jmp 0x1400bb061
mov rax, qword [r9 + 0x50]
movsxd rcx, ecx
mov dword [rax + rcx*4], edx
test byte [r15 + 0x48], 0x20
lea rbp, [0x140201350]
je 0x1400bb1a6
mov rax, qword [r13]
cmp byte [rax + 0x67], 0
je 0x1400bb082
mov rcx, rbp
jmp 0x1400bb092
movsxd rax, dword [rsp + 0x70]
lea rcx, [rax + rax*2]
mov rax, qword [rbx]
lea rcx, [rax + rcx*8]
mov eax, dword [rsp + 0x68]
add eax, r14d
mov dword [rcx + 8], eax
mov rax, qword [rsp + 0x140]
mov rdx, qword [rdi + 0x10]
mov r11d, dword [r15 + 0x40]
mov r9d, dword [rax + 8]
mov r10d, dword [rax + 4]
mov rax, qword [rdx]
cmp byte [rax + 0x67], 0
je 0x1400bb0c2
mov r8, rbp
jmp 0x1400bb0d4
movsxd rax, esi
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x88]
lea r8, [rax + rcx*8]
mov rax, qword [rdi]
mov ecx, dword [rdx + 0x90]
cmp byte [rax + 0x67], 0
jne 0x1400bb146
cmp esi, ecx
jge 0x1400bb146
sub ecx, esi
lea rdx, [r8 + 0xc]
xor r13d, r13d
mov r8d, ecx
lea edi, [r13 + 2]
cmp dword [rdx - 8], r10d
jne 0x1400bb12c
movzx eax, byte [rdx - 0xc]
cmp al, 0x5e
jne 0x1400bb120
mov ecx, dword [rdx - 4]
mov eax, dword [rdx]
add ecx, r11d
mov dword [rdx - 8], ecx
mov byte [rdx - 0xc], 0x50
mov dword [rdx - 4], eax
mov dword [rdx], r13d
mov word [rdx - 0xa], di
jmp 0x1400bb12c
cmp al, 0x87
jne 0x1400bb12c
mov byte [rdx - 0xc], 0x7e
mov dword [rdx - 8], r9d
add rdx, 0x18
sub r8, 1
jne 0x1400bb0f7
mov rdi, qword [rsp + 0x120]
mov r13, qword [rsp + 0x98]
movsxd rcx, dword [r13 + 0x90]
cmp dword [r13 + 0x94], ecx
jg 0x1400bb177
xor eax, eax
mov r9d, esi
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov rcx, r13
lea edx, [rax + 9]
call fcn.1400ca310
and dword [r15 + 0x48], 0xffffffdf
jmp 0x1400bb225
lea eax, [rcx + 1]
xor edx, edx
mov dword [r13 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
and dword [r15 + 0x48], 0xffffffdf
jmp 0x1400bb225
mov rax, qword [rsp + 0x140]
lea edx, [rsi + 1]
movsxd rcx, dword [r13 + 0x90]
mov r8d, dword [rax + 4]
cmp dword [r13 + 0x94], ecx
jg 0x1400bb1db
xor eax, eax
mov r9d, edx
mov rcx, r13
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x27]
call fcn.1400ca310
jmp 0x1400bb209
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [r13 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx]
mov dword [rax + rcx*8], 0x27
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
movsxd rax, dword [r13 + 0x90]
test eax, eax
jle 0x1400bb225
lea rcx, [rax + rax*2]
mov edx, 3
mov rax, qword [rbx]
mov word [rax + rcx*8 - 0x16], dx
mov rax, qword [r13]
mov edx, dword [r13 + 0x90]
cmp byte [rax + 0x67], 0
je 0x1400bb23b
mov rax, rbp
jmp 0x1400bb249
movsxd rax, esi
lea rcx, [rax + rax*2]
mov rax, qword [rbx]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
test r12d, r12d
je 0x1400bb264
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x1400bb264
mov dword [rdi + rax*4 + 0xe0], r12d
inc byte [rdi + 0x1f]
mov rax, qword [r13]
mov edx, dword [r13 + 0x90]
cmp byte [rax + 0x67], 0
jne 0x1400bb288
movsxd rax, dword [rsp + 0x84]
lea rcx, [rax + rax*2]
mov rax, qword [rbx]
lea rbp, [rax + rcx*8]
mov dword [rbp + 8], edx
mov rdx, qword [rsp + 0x78]
mov r15, qword [rsp + 0xd8]
mov r14, qword [rsp + 0xe0]
mov r13, qword [rsp + 0xe8]
mov r12, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0x100]
mov rbx, qword [rsp + 0x108]
test rdx, rdx
je 0x1400bb2d5
mov rcx, qword [rdi]
call fcn.1400fa200
add rsp, 0x110
pop rdi
ret