Function at 0x1400c5de8
Capabilities:
Authenticate hmac

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov r14, qword [rbp + 0xb0]
lea rax, [r8 + 0x70]
mov qword [rbp - 0x28], rax
mov r15, rcx
mov rax, qword [rcx]
mov r12, rdx
mov rcx, qword [r8 + 8]
xor esi, esi
mov r11, qword [r14 + 0x50]
mov r13d, r9d
mov qword [rbp - 0x78], rax
mov rbx, r8
movzx eax, byte [r14 + 0x34]
imul rax, rax, 0x70
mov qword [rsp + 0x60], rcx
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x70], rsi
mov qword [rsp + 0x70], r11
mov eax, dword [rax + rcx + 0x4c]
lea rcx, [r8 + 0x258]
mov edx, eax
mov dword [rsp + 0x40], eax
call fcn.1400c9e28
mov r8, qword [rbp - 0x40]
lea r9d, [rsi + 1]
mov rdx, qword [rsp + 0x60]
not rax
and rax, qword [rbp + 0xb8]
mov ecx, r13d
mov qword [r14 + 0x58], rax
mov edi, dword [r15 + 0x44]
mov r10, qword [rbx + 0x68]
dec edi
mov dword [r15 + 0x44], edi
shr r10, cl
and r10d, r9d
mov dword [r14 + 0x10], edi
mov dword [r14 + 0xc], edi
mov eax, dword [r15 + 0x44]
dec eax
mov qword [rsp + 0x68], r10
mov dword [r15 + 0x44], eax
mov dword [rsp + 0x48], edi
mov dword [rbp - 0x54], eax
mov dword [r14 + 0x18], eax
cmp byte [r14 + 0x34], sil
jbe 0x1400c5f05
test byte [r8 + rdx + 0x44], 8
je 0x1400c5f05
mov r9d, dword [r15 + 0x38]
lea edx, [rsi + 0x46]
inc r9d
mov dword [rsp + 0x20], esi
mov dword [r15 + 0x38], r9d
xor r8d, r8d
mov rcx, r12
mov dword [r14], r9d
call fcn.14007d9f8
mov r11, qword [rsp + 0x70]
lea r9d, [rsi + 1]
mov r10, qword [rsp + 0x68]
mov r8, qword [rbp - 0x40]
mov rdx, qword [rsp + 0x60]
mov ecx, r13d
test r13d, r13d
jle 0x1400c5f27
mov eax, ecx
add rax, 9
lea rax, [rax + rax*2]
shl rax, 5
cmp dword [rax + rbx], esi
jne 0x1400c5f27
sub ecx, r9d
test ecx, ecx
jg 0x1400c5f0d
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov eax, reloc.WS2_32.dll_recv
shl rcx, 5
mov r9d, dword [rcx + rbx + 0x36c]
test byte [r8 + rdx + 0x48], al
je 0x1400c5ff8
mov eax, dword [r8 + rdx + 0x38]
xor r9d, r9d
mov ebx, dword [r8 + rdx + 0x3c]
mov rcx, r12
mov r8d, ebx
mov dword [rsp + 0x20], eax
lea edx, [r9 + 0xd]
call fcn.14007d9f8
mov r9d, edi
mov dword [rsp + 0x20], esi
mov r8d, ebx
mov edx, reloc.WS2_32.dll_ntohl
mov rcx, r12
call fcn.14007d9f8
mov dword [r14 + 0x3c], eax
mov eax, listen
mov byte [r14 + 0x35], al
mov rdx, qword [rbp + 0xa0]
mov r9d, 1
mov r11, qword [rsp + 0x60]
mov r8, qword [rbp - 0x70]
mov rax, r8
neg rax
sbb r13d, r13d
add r13d, 2
mov r12d, dword [rdx + 0x84]
mov edi, esi
mov rbx, qword [rdx + 0x90]
test r12d, r12d
jle 0x1400c797a
movzx ecx, word [rbx + 0x12]
mov eax, 6
mov dword [rbp + 0xa8], esi
test al, cl
jne 0x1400c794c
mov rax, qword [rbx + 0x30]
test qword [r14 + 0x58], rax
je 0x1400c7865
or dword [rdx + 0x44], 2
jmp 0x1400c794c
mov edx, dword [r11 + 0x28]
bt edx, 0xa
jae 0x1400c6307
movzx r13d, word [r11 + 0x2c]
mov rcx, r15
lea edx, [r13 + 2]
call fcn.140097554
mov dword [rbp + 0x90], eax
mov r12d, eax
mov eax, dword [r14 + 0xc]
mov ebx, esi
mov dword [rbp + 0xa8], eax
test r13d, r13d
je 0x1400c60a1
mov rdi, rsi
lea eax, [r12 + 2]
mov rcx, qword [r11 + 0x38]
mov rdx, qword [rdi + rcx]
test rdx, rdx
je 0x1400c6091
lea r8d, [rbx + rax]
mov rcx, r15
mov eax, 1
test byte [rdx + 0x14], al
je 0x1400c6078
mov dword [rsp + 0x28], r8d
mov r9d, ebx
mov r8, r14
mov dword [rsp + 0x20], r10d
call fcn.1400c516c
mov eax, dword [r14 + 0x10]
mov dword [rbp + 0xa8], eax
jmp 0x1400c6087
mov rdx, qword [rdx]
mov r9d, eax
mov rdx, qword [rdx + 0x18]
call fcn.1400c59d0
mov r11, qword [rsp + 0x70]
lea eax, [r12 + 2]
mov r10, qword [rsp + 0x68]
inc ebx
add rdi, 8
cmp ebx, r13d
jl 0x1400c6039
mov r8d, dword [r11 + 0x18]
mov edi, 0x46
mov rcx, qword [rbp + 0x98]
mov edx, edi
mov r9d, r12d
mov dword [rsp + 0x20], esi
call fcn.14007d9f8
mov rcx, qword [rbp + 0x98]
lea r9d, [r12 + 1]
mov r8d, r13d
mov dword [rsp + 0x20], esi
mov edx, edi
call fcn.14007d9f8
mov rcx, qword [rsp + 0x70]
mov edx, 9
mov r9d, dword [rbp + 0xa8]
mov r8d, dword [rsp + 0x40]
mov dword [rsp + 0x20], r12d
mov al, byte [rcx + 0x1c]
mov rbx, qword [rcx + 0x20]
neg al
mov r12, qword [rbp + 0x98]
sbb edi, edi
mov rcx, r12
and edi, 0xfffffffa
call fcn.14007d9f8
lea r9d, [rdi - 1]
mov r8, rbx
mov edx, eax
mov rcx, r12
call fcn.14007e440
mov r8, qword [rsp + 0x70]
mov r9, qword [rbp - 0x78]
mov byte [r8 + 0x1c], sil
cmp byte [r9 + 0x63], sil
je 0x1400c6139
mov qword [r8 + 0x20], rsi
mov eax, dword [rsp + 0x40]
mov rdx, qword [rbp + 0xa0]
mov dword [r14 + 0x38], eax
mov al, byte [rdx + 0x42]
neg al
sbb cl, cl
and cl, 0x75
add cl, 0x3e
mov byte [r14 + 0x35], cl
mov eax, dword [r12 + 0x98]
mov dword [r14 + 0x3c], eax
test dword [r8 + 0x28], 0x800
je 0x1400c6175
mov eax, dword [r14 + 0x40]
jmp 0x1400c6177
mov eax, esi
lea ebx, [r13 - 1]
test ebx, ebx
js 0x1400c5f95
cdqe
lea rcx, [r13*8 - 8]
mov edi, 1
lea r12, [rax + rax*4]
mov eax, dword [rbp + 0x90]
add eax, 2
shl r12, 2
add eax, ebx
mov qword [rbp + 0x90], rcx
mov dword [rbp + 0xa8], eax
mov rax, qword [r8 + 0x38]
mov r13, qword [rcx + rax]
movzx edx, word [r13 + 0x14]
and dx, di
je 0x1400c61c8
sub r12, 0x14
mov eax, reloc.WS2_32.dll_recv
cmp ebx, eax
jae 0x1400c61f8
movzx eax, word [r8 + 0x1e]
movzx ecx, bx
shr ax, cl
test dil, al
je 0x1400c61f1
mov rdx, r13
mov rcx, r14
call fcn.1400c4db0
jmp 0x1400c62d9
mov rcx, qword [rbp + 0x90]
test dx, dx
je 0x1400c62e9
mov rcx, qword [r13]
mov rcx, qword [rcx + 0x10]
call fcn.14009063c
cmp eax, edi
jne 0x1400c62e2
cmp byte [r9 + 0x63], sil
jne 0x1400c624f
mov rax, qword [r14 + 0x48]
mov rcx, qword [rbp + 0x98]
mov edx, dword [rax + r12 + 4]
call fcn.14007e52c
mov ecx, dword [rax + 0xc]
movzx edx, byte [rax]
mov r9d, dword [rax + 8]
mov r8d, dword [rax + 4]
mov dword [rsp + 0x20], ecx
mov rcx, qword [rbp + 0x98]
call fcn.14007d9f8
xor r9d, r9d
xor r8d, r8d
mov rcx, r15
lea edx, [r9 + 0x35]
call fcn.140090eb0
mov rdi, rax
test rax, rax
je 0x1400c62d4
mov rcx, qword [r13]
lea r8, [rbp - 0x20]
mov r13, qword [rbp - 0x78]
xor r9d, r9d
mov qword [rbp - 0x20], rsi
mov dword [rbp - 0x18], esi
mov rdx, qword [rcx + 0x10]
mov rcx, r13
mov qword [rax + 0x10], rdx
mov edx, 0xaf
call fcn.140090cf4
mov qword [rdi + 0x18], rax
test rax, rax
je 0x1400c62bb
mov ecx, dword [rbp + 0xa8]
mov r9d, reloc.WS2_32.dll_recv
mov dword [rax + 0x2c], ecx
mov rdx, rdi
mov r8d, dword [r14 + 0x18]
mov rcx, r15
call fcn.14009623c
mov rdx, rdi
mov qword [rdi + 0x10], rsi
mov rcx, r13
call fcn.140091400
mov r9, r13
mov edi, 1
jmp 0x1400c62dd
mov edi, 1
mov r9, qword [rbp - 0x78]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rbp + 0x90]
sub dword [rbp + 0xa8], edi
sub rcx, 8
sub ebx, edi
mov qword [rbp + 0x90], rcx
jns 0x1400c61b2
jmp 0x1400c5f8e
test dl, 5
setne cl
bt edx, 8
setb al
test al, cl
je 0x1400c6391
mov rax, qword [r11 + 0x38]
mov edi, 1
xor r9d, r9d
mov r8, r14
mov rcx, r15
mov rdx, qword [rax]
add dword [r15 + 0x38], edi
mov ebx, dword [r15 + 0x38]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], r10d
call fcn.1400c516c
cmp eax, ebx
je 0x1400c6363
test ebx, ebx
je 0x1400c6363
cmp byte [r15 + 0x1f], 8
jae 0x1400c6363
movzx ecx, byte [r15 + 0x1f]
mov dword [r15 + rcx*4 + 0xc8], ebx
add byte [r15 + 0x1f], dil
mov r9d, dword [r14 + 0x10]
mov edx, reloc.WLDAP32.dll_Ordinal_32
mov r8d, dword [rsp + 0x40]
mov rcx, r12
mov dword [rsp + 0x20], eax
call fcn.14007d9f8
mov rdx, qword [rbp + 0xa0]
mov r9, rdi
mov byte [r14 + 0x35], 0xb3
jmp 0x1400c5f9b
mov ecx, 0x102
mov eax, edx
and eax, ecx
cmp eax, ecx
jne 0x1400c6621
lea r12d, [rcx - 0x4f]
mov rcx, rsi
mov r13d, esi
mov rbx, rsi
test dl, 0x20
je 0x1400c63c3
mov rax, qword [r11 + 0x38]
mov r8d, 8
mov rcx, qword [rax]
jmp 0x1400c63c6
mov r8, rsi
mov eax, reloc.WS2_32.dll_recv
test al, dl
je 0x1400c63d7
mov rax, qword [r11 + 0x38]
mov rbx, qword [r8 + rax]
test r10d, r10d
mov rdi, rcx
cmove rdi, rbx
cmove rbx, rcx
test rbx, rbx
je 0x1400c64dd
mov r13, qword [rbx]
mov dword [rbp + 0xa8], 0x1917181a
mov rdx, qword [r13 + 0x18]
mov rcx, rdx
call fcn.14009063c
mov ecx, 1
cmp eax, ecx
jle 0x1400c6464
mov al, byte [r15 + 0x1f]
test al, al
jne 0x1400c6422
add dword [r15 + 0x38], ecx
mov ebx, dword [r15 + 0x38]
jmp 0x1400c6433
sub al, cl
movzx eax, al
mov byte [r15 + 0x1f], al
mov ebx, dword [r15 + rax*4 + 0xc8]
mov rdx, qword [r13 + 0x18]
mov r9d, ecx
mov rcx, r15
mov r8d, ebx
call fcn.1400c59d0
movzx eax, byte [r13]
mov ecx, 1
add rax, rcx
mov r11d, ebx
and eax, 2
or rax, rcx
mov cl, byte [rbp + rax + 0xa8]
jmp 0x1400c6491
lea r8, [rbp + 0x90]
mov rcx, r15
call fcn.1400959e4
mov rdx, rbx
mov rcx, r14
mov r11d, eax
call fcn.1400c4db0
movzx r10d, byte [r13]
mov ebx, dword [rbp + 0x90]
mov cl, byte [rbp + r10 + 0x72]
mov r9d, dword [rsp + 0x48]
mov r8d, dword [rsp + 0x40]
movzx edx, cl
mov rcx, qword [rbp + 0x98]
mov dword [rsp + 0x20], r11d
call fcn.14007d9f8
mov r11d, 1
test ebx, ebx
je 0x1400c64d1
cmp byte [r15 + 0x1f], 8
jae 0x1400c64d1
movzx eax, byte [r15 + 0x1f]
mov dword [r15 + rax*4 + 0xc8], ebx
add byte [r15 + 0x1f], r11b
mov ebx, dword [rsp + 0x68]
mov r13d, esi
xor ebx, r11d
jmp 0x1400c6505
mov r8d, dword [rsp + 0x40]
mov ebx, r10d
mov rcx, qword [rbp + 0x98]
xor ebx, 1
mov dword [rsp + 0x20], esi
lea edx, [rbx*4 + 0x22]
call fcn.14007d9f8
mov r11d, 1
test rdi, rdi
je 0x1400c6579
mov r12, qword [rdi]
mov r9d, r11d
add dword [r15 + 0x38], r11d
mov rcx, r15
mov r13d, dword [r15 + 0x38]
mov r8d, r13d
mov rdx, qword [r12 + 0x18]
call fcn.1400c59d0
mov rdx, qword [r12 + 0x18]
mov rcx, rdx
call fcn.14009063c
mov r11d, 1
cmp eax, r11d
jg 0x1400c6554
mov al, byte [r12]
sub al, 0x36
test al, 0xfd
jne 0x1400c6554
lea r12d, [rbx*2 + 0x37]
jmp 0x1400c6561
mov rax, qword [rsp + 0x68]
lea r12d, [rax*2 + 0x36]
mov rcx, rdx
call fcn.14009063c
cmp eax, r11d
jg 0x1400c6579
mov rdx, rdi
mov rcx, r14
call fcn.1400c4db0
neg dword [rsp + 0x68]
mov r10, qword [rbp + 0x98]
mov edi, dword [rsp + 0x40]
sbb al, al
add al, 5
mov ecx, dword [r10 + 0x98]
mov byte [r14 + 0x35], al
mov dword [r14 + 0x38], edi
mov dword [r14 + 0x3c], ecx
cmp r12d, 0xb3
je 0x1400c5f8e
add dword [r15 + 0x38], r11d
mov r8d, edi
mov ebx, dword [r15 + 0x38]
mov edx, 0x85
mov r9d, ebx
mov dword [rsp + 0x20], esi
mov rcx, r10
call fcn.14007d9f8
mov r9d, dword [rsp + 0x48]
mov edx, r12d
mov r12, qword [rbp + 0x98]
mov r8d, r13d
mov rcx, r12
mov dword [rsp + 0x20], ebx
call fcn.14007d9f8
movsxd rax, dword [r12 + 0x98]
mov r9d, 1
mov r11, qword [rsp + 0x60]
test eax, eax
jle 0x1400c6615
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x90]
lea edx, [r9 + 0x52]
mov word [rax + rcx*8 - 0x16], dx
mov rdx, qword [rbp + 0xa0]
jmp 0x1400c5fa0
bt edx, 9
jae 0x1400c7051
movzx ebx, word [r11 + 0x18]
mov r10, rsi
movzx eax, word [r11 + 0x1c]
mov edi, esi
movzx r9d, word [r11 + 0x1a]
mov r8d, ebx
mov word [rsp + 0x52], ax
mov rax, qword [r11 + 0x20]
mov qword [rbp - 0x70], rax
mov eax, dword [r14 + 8]
mov dword [rsp + 0x4c], eax
mov word [rsp + 0x44], bx
mov word [rbp - 0x58], r9w
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x48], rsi
mov byte [rbp + 0xa8], sil
mov byte [rsp + 0x50], sil
mov dword [rsp + 0x58], esi
mov dword [rsp + 0x48], esi
mov dword [rbp - 0x80], ebx
test dl, 0x20
je 0x1400c669b
mov rax, qword [r11 + 0x38]
inc r8d
mov edi, r9d
mov r10, qword [rax + rbx*8]
mov qword [rbp - 0x68], r10
mov eax, reloc.WS2_32.dll_recv
mov r9d, 0x100
test al, dl
je 0x1400c678f
movzx ebx, word [rsp + 0x52]
mov rax, qword [r11 + 0x38]
cmp edi, ebx
mov ecx, r8d
cmova ebx, edi
mov rax, qword [rax + rcx*8]
mov qword [rbp - 0x60], rax
test word [rax + 0x12], r9w
je 0x1400c6732
mov r9d, dword [r15 + 0x38]
mov edi, 1
inc r9d
mov dword [rsp + 0x20], esi
mov dword [r15 + 0x38], r9d
mov r8d, edi
mov rcx, r12
mov dword [r14 + 0x2c], r9d
lea edx, [rdi + 0x45]
call fcn.14007d9f8
mov eax, dword [r12 + 0x98]
mov ecx, esi
shl dword [r14 + 0x2c], 1
mov r11, qword [rbp - 0x70]
movzx r8d, word [rsp + 0x44]
mov r10, qword [rbp - 0x68]
mov dword [r14 + 0x30], eax
mov rax, qword [r11 + 0x38]
cmp byte [r8 + rax], dil
mov rax, qword [rsp + 0x70]
sete cl
xor ecx, dword [rsp + 0x68]
or dword [r14 + 0x2c], ecx
mov r9d, dword [rax + 0x28]
jmp 0x1400c673f
movzx r8d, word [rsp + 0x44]
mov r9d, edx
mov r11, qword [rbp - 0x70]
mov edx, r9d
mov edi, ebx
test r10, r10
jne 0x1400c678a
mov rax, qword [r11 + 8]
movsx r8, word [rax + r8*2]
test r8d, r8d
js 0x1400c676a
mov rax, qword [r11 + 0x18]
lea rdx, [r8 + r8*2]
mov rcx, qword [rax + 8]
test byte [rcx + rdx*8 + 8], 0xf
je 0x1400c6773
mov edx, r9d
cmp r8d, 0xfffffffe
jne 0x1400c678a
mov eax, 1
mov edi, ebx
movzx ebx, word [rsp + 0x44]
mov edx, r9d
mov byte [rbp + 0xa8], al
jmp 0x1400c6794
movzx ebx, word [rsp + 0x44]
mov eax, 1
and edx, 0x80030
cmp edx, 0x80000
jne 0x1400c67e5
add dword [r15 + 0x38], eax
mov edi, eax
mov byte [rbp + 0xa8], al
mov eax, dword [r15 + 0x38]
mov dword [rsp + 0x58], eax
mov dword [r14 + 0x24], eax
cmp dword [r14], esi
je 0x1400c67d9
xor r8d, r8d
mov dword [rsp + 0x20], esi
mov r9d, eax
mov rcx, r12
lea edx, [r8 + 0x46]
call fcn.14007d9f8
mov r10, qword [rbp - 0x68]
dec dword [r15 + 0x44]
mov eax, dword [r15 + 0x44]
mov dword [r14 + 0x28], eax
mov rax, qword [rbp - 0x70]
cmp bx, word [rax + 0x60]
jae 0x1400c6839
mov rax, qword [rax + 0x38]
mov edx, esi
movzx ecx, bx
cmp byte [rcx + rax], sil
sete dl
cmp dword [rsp + 0x68], edx
jne 0x1400c6839
mov rax, qword [rbp - 0x60]
movzx ecx, word [rsp + 0x52]
mov rbx, rax
mov qword [rbp - 0x68], rax
mov al, byte [rbp + 0xa8]
mov byte [rsp + 0x50], al
movzx eax, byte [rbp - 0x58]
mov word [rsp + 0x52], ax
mov qword [rbp - 0x60], r10
mov byte [rbp + 0xa8], sil
mov word [rbp - 0x58], cx
jmp 0x1400c683d
mov rbx, qword [rbp - 0x68]
test r13d, r13d
jle 0x1400c6869
mov rax, qword [rsp + 0x70]
test dword [rax + 0x28], 0x100000
je 0x1400c6869
mov r8d, dword [rsp + 0x4c]
xor r9d, r9d
mov edx, 0x86
mov dword [rsp + 0x20], esi
mov rcx, r12
call fcn.14007d9f8
mov r8d, dword [rsp + 0x68]
lea rax, [rbp - 0x50]
mov r9d, edi
mov qword [rsp + 0x20], rax
mov rdx, r14
mov rcx, r15
call fcn.1400c5618
mov edx, eax
mov dword [rsp + 0x54], eax
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x1400c68b7
cmp word [rsp + 0x52], si
je 0x1400c68b7
movzx edi, word [rsp + 0x44]
mov rcx, qword [rbp - 0x78]
lea rdx, [rax + rdi]
call fcn.14006027c
mov edx, dword [rsp + 0x54]
mov qword [rbp - 0x48], rax
jmp 0x1400c68bc
movzx edi, word [rsp + 0x44]
mov r8d, dword [rsp + 0x58]
test r8d, r8d
je 0x1400c68cc
mov eax, dword [r14 + 0x28]
jmp 0x1400c68d0
mov eax, dword [r14 + 0x10]
mov dword [rsp + 0x5c], eax
test rbx, rbx
je 0x1400c68eb
test byte [rbx + 0x14], 0x28
jne 0x1400c68eb
mov dword [rsp + 0x7c], esi
mov r9d, 1
jmp 0x1400c68f6
mov r9d, 1
mov dword [rsp + 0x7c], r9d
mov rax, qword [rbp - 0x60]
test rax, rax
je 0x1400c6909
test byte [rax + 0x14], 0x28
mov dword [rsp + 0x78], esi
je 0x1400c690e
mov dword [rsp + 0x78], r9d
mov ecx, 0x49
test rbx, rbx
jne 0x1400c695b
test di, di
jne 0x1400c695b
mov r9d, dword [rbp - 0x80]
mov dword [rbp - 0x7c], esi
mov r13b, byte [rbp + 0xa8]
test r13b, r13b
je 0x1400c6a3e
mov dword [rsp + 0x7c], esi
add r9d, edx
mov dword [rsp + 0x20], esi
mov edx, ecx
xor r8d, r8d
mov rcx, r12
call fcn.14007d9f8
mov edi, dword [rbp - 0x80]
mov ebx, 1
inc edi
jmp 0x1400c6a4d
mov dword [rbp - 0x7c], r9d
movzx r9d, di
mov edi, r9d
test rbx, rbx
je 0x1400c6924
mov rax, qword [rbx]
lea r13d, [rdx + r9]
mov r8d, r13d
mov rcx, r15
mov rbx, qword [rax + 0x18]
movzx eax, word [rbp - 0x58]
mov rdx, rbx
mov r9d, eax
mov dword [rbp + 0xa8], eax
call fcn.1400c59d0
mov r9, qword [rbp - 0x68]
mov eax, 0x100
test word [r9 + 0x12], ax
je 0x1400c69c3
or edx, 0xffffffff
mov rcx, r12
call fcn.14007e52c
mov ecx, dword [r14 + 0x2c]
shr ecx, 1
mov dword [rax + 0xc], ecx
mov cl, byte [r14 + 0x2c]
and cl, 1
movzx ecx, cl
mov word [rax + 2], cx
test byte [r9 + 0x12], 0x80
jne 0x1400c69ef
mov rcx, rbx
call fcn.140092700
test eax, eax
je 0x1400c69ef
mov r9d, dword [rsp + 0x5c]
mov r8d, r13d
mov edx, reloc.WLDAP32.dll_Ordinal_50
mov dword [rsp + 0x20], esi
mov rcx, r12
call fcn.14007d9f8
mov rcx, qword [rbp - 0x50]
mov r13d, dword [rbp + 0xa8]
test rcx, rcx
je 0x1400c6a13
movzx r8d, word [rsp + 0x44]
mov edx, r13d
add r8, rcx
mov rcx, rbx
call fcn.1400c4ea8
mov rcx, rbx
add edi, r13d
call fcn.14009063c
mov ecx, 1
cmp eax, ecx
jg 0x1400c6a35
mov rdx, qword [rbp - 0x68]
mov rcx, r14
call fcn.1400c4db0
jmp 0x1400c6a39
mov dword [rsp + 0x7c], ecx
mov r13b, sil
jmp 0x1400c6a4a
mov edi, r9d
test r8d, r8d
jne 0x1400c6938
mov ebx, dword [rbp - 0x7c]
mov r9, qword [rbp - 0x50]
mov r8d, edi
mov edx, dword [rsp + 0x54]
mov rcx, r15
movzx eax, r13b
sub r8d, eax
mov dword [rbp + 0xa8], eax
call fcn.1400c4e24
mov rax, qword [rsp + 0x70]
lea r13, [0x140000000]
cmp word [rax + 0x2e], si
jbe 0x1400c6a8b
movzx eax, word [rax + 0x2e]
cmp edi, eax
je 0x1400c6b94
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x1400c6aab
mov edx, 0x46
mov dword [rsp + 0x20], esi
mov r9d, eax
mov rcx, r12
lea r8d, [rdx - 0x45]
call fcn.14007d9f8
mov eax, dword [rsp + 0x7c]
mov rcx, qword [rsp + 0x68]
lea eax, [rax + rbx*2]
lea ecx, [rcx + rax*2]
mov rax, qword [rsp + 0x70]
movzx ebx, byte [rcx + r13 + 0x1f47c8]
test dword [rax + 0x28], 0x100000
je 0x1400c6b0e
cmp ebx, 0x19
jne 0x1400c6b0e
mov rcx, qword [rbp - 0x70]
xor r9d, r9d
mov dword [rsp + 0x20], esi
mov rax, qword [rcx + 0x10]
movsx ecx, word [rax]
mov eax, 0x66666667
add ecx, 9
imul ecx
mov rcx, r12
sar edx, 2
mov r8d, edx
shr r8d, 0x1f
add r8d, edx
lea edx, [rbx + 0x61]
call fcn.14007d9f8
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x54]
mov edx, ebx
mov r9d, dword [rsp + 0x5c]
mov rcx, r12
mov r8d, dword [rsp + 0x4c]
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], eax
call fcn.14007de68
cmp dword [rsp + 0x58], esi
je 0x1400c6b94
mov r9d, dword [r12 + 0x98]
xor r8d, r8d
add r9d, 2
mov dword [rsp + 0x20], esi
mov rcx, r12
lea edx, [r8 + 0xb]
call fcn.14007d9f8
mov ebx, dword [rsp + 0x54]
mov eax, 2
mov r9d, dword [rsp + 0x5c]
mov ecx, edi
sub ecx, dword [rsp + 0x7c]
mov r8d, dword [rsp + 0x4c]
cmp edi, 1
lea edx, [rax + 4]
mov dword [rsp + 0x28], ecx
cmova eax, edx
mov dword [rsp + 0x20], ebx
add eax, dword [rsp + 0x68]
mov rcx, r12
movzx edx, byte [rax + r13 + 0x1f47c8]
call fcn.14007de68
jmp 0x1400c6b98
mov ebx, dword [rsp + 0x54]
mov rax, qword [rbp - 0x60]
mov ecx, dword [rbp - 0x80]
mov r13d, ecx
test rax, rax
je 0x1400c6d6e
mov rax, qword [rax]
mov rbx, qword [rax + 0x18]
cmp dword [rsp + 0x48], esi
je 0x1400c6bc4
mov eax, dword [r12 + 0x98]
mov dword [r14 + 0x3c], eax
mov r12d, dword [rsp + 0x54]
mov rdx, rbx
movzx edi, word [rsp + 0x52]
add r12d, ecx
mov r8d, r12d
mov r9d, edi
mov rcx, r15
call fcn.1400c59d0
mov r9, qword [rbp - 0x60]
mov eax, 0x100
mov r10, qword [rbp + 0x98]
test word [r9 + 0x12], ax
je 0x1400c6c1b
or edx, 0xffffffff
mov rcx, r10
call fcn.14007e52c
mov ecx, dword [r14 + 0x2c]
shr ecx, 1
mov dword [rax + 0xc], ecx
mov cl, byte [r14 + 0x2c]
and cl, 1
movzx ecx, cl
mov word [rax + 2], cx
test byte [r9 + 0x12], 0x80
jne 0x1400c6c47
mov rcx, rbx
call fcn.140092700
test eax, eax
je 0x1400c6c47
mov r9d, dword [rsp + 0x5c]
mov r8d, r12d
mov edx, reloc.WLDAP32.dll_Ordinal_50
mov dword [rsp + 0x20], esi
mov rcx, r10
call fcn.14007d9f8
mov rax, qword [rbp - 0x48]
test rax, rax
je 0x1400c6c6f
mov r8, rax
mov edx, edi
mov rcx, rbx
call fcn.1400c4ea8
mov r9, qword [rbp - 0x48]
mov r8d, edi
mov edx, r12d
mov rcx, r15
call fcn.1400c4e24
mov rcx, rbx
add r13d, edi
call fcn.14009063c
mov ecx, 1
cmp eax, ecx
jg 0x1400c6d60
mov rdx, qword [rbp - 0x60]
mov rcx, r14
call fcn.1400c4db0
mov r12, qword [rbp + 0x98]
mov ebx, dword [rsp + 0x78]
mov edi, dword [rsp + 0x58]
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x1400c6cb7
mov rcx, qword [rbp - 0x78]
mov rdx, rax
call fcn.14005fd68
mov rax, qword [rbp - 0x48]
test rax, rax
je 0x1400c6ccc
mov rcx, qword [rbp - 0x78]
mov rdx, rax
call fcn.14005fd68
cmp dword [r14 + 0x3c], esi
jne 0x1400c6cde
mov eax, dword [r12 + 0x98]
mov dword [r14 + 0x3c], eax
test r13d, r13d
je 0x1400c6da7
test edi, edi
je 0x1400c6d0b
mov r9d, dword [r12 + 0x98]
mov r8d, edi
add r9d, 3
mov dword [rsp + 0x20], esi
mov edx, reloc.WS2_32.dll_sendto
mov rcx, r12
call fcn.14007d9f8
mov rax, qword [rsp + 0x68]
mov rcx, r12
mov edi, dword [rsp + 0x54]
mov r9d, dword [rsp + 0x5c]
mov r8d, dword [rsp + 0x4c]
lea eax, [rbx + rax*2]
mov dword [rsp + 0x28], r13d
lea rbx, [0x140000000]
mov dword [rsp + 0x20], edi
movzx edx, byte [rax + rbx + 0x1ef164]
call fcn.14007de68
mov eax, dword [rsp + 0x48]
test eax, eax
je 0x1400c6db2
mov edx, eax
mov rcx, r12
call fcn.14007e52c
mov ecx, dword [r12 + 0x98]
mov dword [rax + 8], ecx
jmp 0x1400c6db2
mov r12, qword [rbp + 0x98]
mov ebx, ecx
jmp 0x1400c6c9e
cmp byte [rsp + 0x50], sil
je 0x1400c6c9a
mov edi, dword [rsp + 0x58]
test edi, edi
jne 0x1400c6d9b
lea r9d, [rbx + rcx]
mov dword [rsp + 0x20], esi
mov rcx, r12
lea edx, [rdi + 0x49]
xor r8d, r8d
call fcn.14007d9f8
mov ebx, esi
jmp 0x1400c6d9f
mov ebx, dword [rsp + 0x78]
inc r13d
jmp 0x1400c6ca2
mov edi, dword [rsp + 0x54]
lea rbx, [0x140000000]
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x1400c6e13
mov r9d, dword [r12 + 0x98]
mov r8d, eax
add r9d, 2
mov dword [rsp + 0x20], esi
mov edx, reloc.WS2_32.dll_select
mov rcx, r12
call fcn.14007d9f8
mov eax, dword [rbp + 0xa8]
mov rcx, qword [rsp + 0x68]
mov r9d, dword [rsp + 0x5c]
lea r8d, [rax + r13]
mov dword [rsp + 0x28], r8d
lea eax, [rax + rcx*2]
movzx edx, byte [rax + rbx + 0x1ef164]
mov rcx, r12
mov dword [rsp + 0x20], edi
mov edi, dword [rsp + 0x4c]
mov r8d, edi
call fcn.14007de68
jmp 0x1400c6e17
mov edi, dword [rsp + 0x4c]
mov rbx, qword [rsp + 0x70]
test dword [rbx + 0x28], 0x40000
je 0x1400c6e3e
mov r9d, dword [rbp - 0x80]
mov r8d, edi
mov edx, 0x7b
mov dword [rsp + 0x20], r9d
mov rcx, r12
call fcn.14007d9f8
test byte [rbx + 0x28], 0x40
mov rcx, qword [rbp + 0xa0]
je 0x1400c6e65
lea r13, [rcx + 0x3c]
test byte [r13], 0x20
jne 0x1400c6e65
mov r10, qword [rbp - 0x70]
mov r12d, 1
jmp 0x1400c6fb9
mov r10, qword [rbp - 0x70]
lea rax, [rcx + 0x3c]
mov r13, rax
mov qword [rbp - 0x38], rax
mov rbx, qword [r10 + 0x18]
test byte [rbx + 0x30], 0x80
jne 0x1400c6ea8
mov r9d, edi
mov rdx, r10
mov edi, dword [rsp + 0x40]
mov r8d, edi
call fcn.1400c58cc
mov r12d, esi
mov rbx, qword [rsp + 0x70]
mov rcx, qword [rbp + 0xa0]
mov r10, qword [rbp - 0x70]
jmp 0x1400c6fbd
mov r12d, esi
cmp dword [rsp + 0x40], edi
je 0x1400c6fb4
mov rbx, qword [rbx + 0x10]
mov dword [rbp + 0xa8], esi
test rbx, rbx
je 0x1400c6edc
mov dword [rbp + 0xa8], esi
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1400c6edc
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1400c6eca
movzx edx, word [rbx + 0x5e]
mov rcx, r15
call fcn.140097554
movzx ecx, word [rbx + 0x5e]
mov edx, eax
mov dword [rsp + 0x48], eax
mov edi, esi
cmp si, cx
jae 0x1400c6f88
mov r15, qword [rbp + 0x98]
mov r14d, eax
mov r13d, dword [rsp + 0x4c]
or r12d, 0xffffffff
movzx r8d, word [r10 + 0x60]
mov edx, esi
test r8d, r8d
je 0x1400c6f3d
mov rax, qword [rbx + 8]
mov r9, qword [r10 + 8]
movsxd rcx, edi
movzx r10d, word [rax + rcx*2]
movsxd rax, edx
cmp r10w, word [r9 + rax*2]
je 0x1400c6f41
inc edx
cmp edx, r8d
jl 0x1400c6f2c
movzx edx, r12w
lea eax, [rdi + r14]
movsx r9d, dx
mov edx, 0x5c
mov dword [rsp + 0x20], eax
mov r8d, r13d
mov rcx, r15
call fcn.14007d9f8
movzx ecx, word [rbx + 0x5e]
inc edi
mov r10, qword [rbp - 0x70]
cmp edi, ecx
jl 0x1400c6f10
mov r14, qword [rbp + 0xb0]
mov r15, qword [rbp + 0x90]
mov r12d, dword [rbp + 0xa8]
mov r13, qword [rbp - 0x38]
mov edx, dword [rsp + 0x48]
mov edi, dword [rsp + 0x40]
mov r8d, edi
mov r9d, dword [rbp - 0x54]
movzx eax, cx
mov rcx, qword [rbp + 0x98]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], edx
mov edx, reloc.WLDAP32.dll_Ordinal_30
call fcn.14007de68
jmp 0x1400c6e93
mov rbx, qword [rsp + 0x70]
mov edi, dword [rsp + 0x40]
cmp dword [r14], esi
jne 0x1400c6ff3
test byte [r13], 0x20
jne 0x1400c6fdb
mov r8d, dword [rsp + 0x4c]
mov r9, rcx
mov rcx, r10
mov edx, edi
call fcn.1400c5bec
mov rcx, qword [rbp - 0x70]
mov rcx, qword [rcx + 0x48]
test rcx, rcx
je 0x1400c6ff3
mov r8, qword [rbp - 0x28]
mov edx, edi
call fcn.1400c5d58
test dword [rbx + 0x28], 0x1000
je 0x1400c7003
mov byte [r14 + 0x35], 0xb3
jmp 0x1400c700f
neg dword [rsp + 0x68]
sbb al, al
add al, 5
mov byte [r14 + 0x35], al
mov eax, dword [rsp + 0x4c]
mov edi, 1
mov dword [r14 + 0x38], eax
mov al, byte [rbx + 0x2a]
and al, dil
mov byte [r14 + 0x36], al
test byte [rbx + 0x28], 0xf
jne 0x1400c7030
mov byte [r14 + 0x37], dil
mov rdx, qword [rbp + 0xa0]
mov r9, rdi
mov r11, qword [rsp + 0x60]
test r12d, r12d
je 0x1400c5fa0
mov qword [rbp - 0x70], rsi
jmp 0x1400c5fa0
bt edx, 0xd
jae 0x1400c77f0
dec dword [r15 + 0x44]
mov eax, dword [r15 + 0x34]
mov edx, dword [r15 + 0x38]
mov rdi, qword [rbp - 0x40]
inc edx
mov dword [r15 + 0x38], edx
mov dword [rsp + 0x7c], eax
inc eax
mov dword [r15 + 0x34], eax
mov eax, dword [r15 + 0x44]
mov dword [rsp + 0x5c], eax
mov rax, qword [rsp + 0x60]
mov qword [rbp - 0x50], rsi
mov dword [rbp - 0x7c], edx
mov dword [rbp + 0xa8], esi
mov rcx, qword [rdi + rax + 0x28]
mov rax, qword [r11 + 0x38]
mov r11d, 1
mov dword [rsp + 0x78], esi
mov dword [rsp + 0x48], esi
mov qword [rsp + 0x68], rsi
mov rax, qword [rax]
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x60], rcx
mov rax, qword [rax + 0x20]
mov byte [r14 + 0x35], 0x42
mov dword [r14 + 0x38], edx
mov qword [rsp + 0x70], rax
cmp byte [rbx + 0x40], r11b
jbe 0x1400c723c
movzx ebx, byte [rbx + 0x40]
sub ebx, r13d
sub ebx, r11d
movsxd rax, ebx
imul rcx, rax, 0x70
mov rax, qword [rbp - 0x78]
add rcx, 0x78
test rax, rax
je 0x1400c7103
mov rdx, rcx
mov rcx, rax
call fcn.1400600a4
jmp 0x1400c7108
call fcn.14005fbc4
mov qword [rbp - 0x48], rax
mov r13, rax
test rax, rax
jne 0x1400c7120
mov rax, qword [rbp + 0xb8]
jmp 0x1400c7b3c
mov r8, qword [rbp + 0xa0]
mov r11d, 1
lea eax, [r11 + rbx]
movzx ecx, al
mov rax, qword [rsp + 0x60]
mov dword [r13 + 4], ecx
mov dword [r13], ecx
movups xmm0, xmmword [rdi + rax + 8]
movups xmmword [r13 + 8], xmm0
movups xmm1, xmmword [rdi + rax + 0x18]
movups xmmword [r13 + 0x18], xmm1
movups xmm0, xmmword [rdi + rax + 0x28]
movups xmmword [r13 + 0x28], xmm0
movups xmm1, xmmword [rdi + rax + 0x38]
movups xmmword [r13 + 0x38], xmm1
movups xmm0, xmmword [rdi + rax + 0x48]
movups xmmword [r13 + 0x48], xmm0
movups xmm1, xmmword [rdi + rax + 0x58]
movups xmmword [r13 + 0x58], xmm1
movups xmm0, xmmword [rdi + rax + 0x68]
movups xmmword [r13 + 0x68], xmm0
mov r8, qword [r8 + 8]
cmp ebx, r11d
jl 0x1400c71f8
lea rdx, [r13 + 0x78]
mov r10d, ebx
lea r9, [r14 + 0x94]
movzx eax, byte [r9]
lea r9, [r9 + 0x60]
imul rcx, rax, 0x70
movups xmm0, xmmword [rcx + r8 + 8]
movups xmmword [rdx], xmm0
lea rdx, [rdx + 0x70]
movups xmm1, xmmword [rcx + r8 + 0x18]
movups xmmword [rdx - 0x60], xmm1
movups xmm0, xmmword [rcx + r8 + 0x28]
movups xmmword [rdx - 0x50], xmm0
movups xmm1, xmmword [rcx + r8 + 0x38]
movups xmmword [rdx - 0x40], xmm1
movups xmm0, xmmword [rcx + r8 + 0x48]
movups xmmword [rdx - 0x30], xmm0
movups xmm1, xmmword [rcx + r8 + 0x58]
movups xmmword [rdx - 0x20], xmm1
movups xmm0, xmmword [rcx + r8 + 0x68]
movups xmmword [rdx - 0x10], xmm0
sub r10, r11
jne 0x1400c719e
mov rbx, qword [rbp + 0xa0]
mov rcx, qword [rbp - 0x60]
mov eax, reloc.WS2_32.dll_recv
test byte [rbx + 0x3c], al
jne 0x1400c72ab
test byte [rcx + 0x30], 0x80
jne 0x1400c7246
add dword [r15 + 0x38], r11d
lea edx, [rax + 0x39]
mov edi, dword [r15 + 0x38]
xor r8d, r8d
mov r9d, edi
mov dword [rbp + 0xa8], edi
mov rcx, r12
mov dword [rsp + 0x20], esi
call fcn.14007d9f8
jmp 0x1400c729a
mov r13, qword [rbx + 8]
mov qword [rbp - 0x48], r13
jmp 0x1400c7203
mov rbx, qword [rcx + 0x10]
jmp 0x1400c7259
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1400c725e
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1400c724c
mov edi, dword [r15 + 0x34]
mov edx, reloc.WS2_32.dll_WSAStartup
mov r8d, edi
mov dword [rbp + 0xa8], edi
mov rcx, r12
mov dword [rsp + 0x20], esi
lea eax, [rdi + 1]
mov dword [r15 + 0x34], eax
movzx r9d, word [rbx + 0x5e]
call fcn.14007d9f8
mov rdx, rbx
mov rcx, r15
call fcn.14007e500
mov rbx, qword [rbp + 0xa0]
mov eax, 1
add dword [r15 + 0x38], eax
mov eax, dword [r15 + 0x38]
mov dword [rsp + 0x78], eax
mov r9d, dword [rbp - 0x7c]
xor r8d, r8d
mov rcx, r12
mov dword [rsp + 0x20], esi
lea edx, [r8 + 0x46]
call fcn.14007d9f8
cmp dword [rbx + 0x84], 1
mov dword [rbp - 0x58], eax
jle 0x1400c7390
mov r12, qword [rbp - 0x38]
mov edi, esi
mov r14, qword [rbp - 0x78]
mov rbx, rsi
mov rax, qword [rbp + 0xa0]
mov r13, rsi
mov r8, qword [rax + 0x90]
movsxd rax, edi
imul rcx, rax, 0x38
mov rdx, qword [rbx + r8]
add rcx, r8
cmp rcx, r12
je 0x1400c7345
mov eax, 6
test byte [rbx + r8 + 0x12], al
jne 0x1400c7345
mov eax, 0x1fff
test word [rbx + r8 + 0x14], ax
je 0x1400c7345
test rdx, rdx
je 0x1400c7331
xor r9d, r9d
xor r8d, r8d
mov rcx, r14
call fcn.140091588
jmp 0x1400c7334
mov rax, rsi
mov r8, rax
mov rdx, r13
mov rcx, r15
call fcn.1400910a0
mov r13, rax
mov rax, qword [rbp + 0xa0]
inc edi
add rbx, 0x38
cmp edi, dword [rax + 0x84]
jl 0x1400c72e9
mov r14, qword [rbp + 0xb0]
test r13, r13
mov r12, qword [rbp + 0x98]
mov qword [rsp + 0x68], r13
mov r13, qword [rbp - 0x48]
je 0x1400c7390
mov r9, qword [rsp + 0x68]
xor r8d, r8d
mov edx, 0x1002c
mov rcx, r15
call fcn.140090eb0
mov qword [rsp + 0x68], rax
lea r8, str.MULTI_INDEX_OR
mov edx, 1
mov rcx, r15
call fcn.14007dd14
mov rax, qword [rsp + 0x70]
mov edi, esi
mov dword [rbp - 0x80], esi
cmp dword [rax + 0x14], esi
jle 0x1400c7449
mov edx, dword [rsp + 0x40]
mov rcx, rsi
mov qword [rbp - 0x68], rcx
mov rax, qword [rax + 0x20]
cmp dword [rcx + rax + 0x1c], edx
je 0x1400c73da
mov r8d, 0x400
test word [rcx + rax + 0x14], r8w
je 0x1400c742b
mov rdx, qword [rcx + rax]
mov r14d, esi
test rdx, rdx
je 0x1400c73fe
mov rcx, qword [rbp - 0x78]
xor r9d, r9d
xor r8d, r8d
call fcn.140091588
mov rcx, qword [rbp - 0x68]
mov rbx, rax
jmp 0x1400c7401
mov rbx, rsi
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x20], rbx
cmp byte [rax + 0x63], sil
je 0x1400c74ff
test rbx, rbx
je 0x1400c7427
mov rdx, rbx
mov rcx, rax
call fcn.140091400
mov rcx, qword [rbp - 0x68]
mov edx, dword [rsp + 0x40]
mov rax, qword [rsp + 0x70]
inc edi
add rcx, 0x38
mov dword [rbp - 0x80], edi
mov qword [rbp - 0x68], rcx
cmp edi, dword [rax + 0x14]
jl 0x1400c73c2
mov r14, qword [rbp + 0xb0]
mov rcx, r15
call fcn.14007dd9c
mov rax, qword [rbp - 0x50]
mov qword [r14 + 0x40], rax
test rax, rax
je 0x1400c7466
mov eax, dword [rsp + 0x7c]
mov dword [r14 + 8], eax
mov rax, qword [rsp + 0x68]
mov rbx, qword [rbp - 0x78]
test rax, rax
je 0x1400c7483
mov rdx, rax
mov qword [rax + 0x10], rsi
mov rcx, rbx
call fcn.140091400
mov edx, dword [rbp - 0x58]
mov rcx, r12
call fcn.14007e52c
mov ecx, dword [r12 + 0x98]
xor r8d, r8d
mov dword [rsp + 0x20], esi
mov dword [rax + 4], ecx
mov rcx, r12
mov r9d, dword [r14 + 0xc]
lea edx, [r8 + 0xb]
call fcn.14007d9f8
mov edx, dword [rsp + 0x5c]
mov rcx, r12
call fcn.14007df4c
mov rdx, qword [rbp + 0xa0]
mov eax, 1
cmp byte [rdx + 0x40], al
jbe 0x1400c74e4
test r13, r13
je 0x1400c74e4
mov rdx, r13
mov rcx, rbx
call fcn.14005fd68
mov rdx, qword [rbp + 0xa0]
cmp dword [rsp + 0x48], esi
jne 0x1400c5f95
mov rdx, qword [rbp - 0x38]
mov rcx, r14
call fcn.1400c4db0
jmp 0x1400c5f8e
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x1400c7510
mov qword [rax + 0x10], rbx
mov rbx, rax
lea r9d, [rdi + 1]
mov edx, 1
lea r8, str.INDEX__d
mov rcx, r15
call fcn.14007dd14
mov eax, dword [rsp + 0x7c]
xor r9d, r9d
mov dword [rsp + 0x30], eax
mov r8, rbx
mov eax, reloc.WLDAP32.dll_Ordinal_32
mov rdx, r13
mov word [rsp + 0x28], ax
mov rcx, r15
mov qword [rsp + 0x20], rsi
call fcn.1400ce9c0
mov qword [rbp - 0x30], rax
mov rbx, rax
test rax, rax
je 0x1400c77d7
xor r9d, r9d
lea r8, [rax + 0x360]
mov rdx, r13
mov rcx, r15
call fcn.1400c4b08
mov rax, qword [rbp + 0xa0]
mov ecx, reloc.WS2_32.dll_recv
test byte [rax + 0x3c], cl
jne 0x1400c7725
mov rax, qword [rsp + 0x70]
mov ebx, edi
mov ecx, dword [rax + 0x14]
mov eax, 0xffffffff
dec ecx
cmp edi, ecx
cmove ebx, eax
mov rax, qword [rbp - 0x60]
mov dword [rsp + 0x54], ebx
test byte [rax + 0x30], 0x80
jne 0x1400c75f9
mov r14d, dword [rsp + 0x78]
neg rax
mov r8d, dword [rsp + 0x40]
mov r9d, r14d
sbb edx, edx
mov dword [rsp + 0x20], esi
and edx, 0x29
mov rcx, r12
add edx, 0x5c
call fcn.14007d9f8
mov r8d, dword [rbp + 0xa8]
xor r9d, r9d
mov dword [rsp + 0x28], ebx
mov rcx, r12
mov dword [rsp + 0x20], r14d
lea edx, [r9 + 0x2e]
call fcn.14007de68
mov r14d, eax
jmp 0x1400c7721
mov rbx, qword [rax + 0x10]
jmp 0x1400c760c
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1400c7611
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1400c75ff
movzx edi, word [rbx + 0x5e]
mov rcx, r15
mov edx, edi
call fcn.140097554
mov dword [rsp + 0x4c], eax
mov r13d, eax
mov r12, rsi
test edi, edi
je 0x1400c7674
mov r15, qword [rbp + 0x98]
mov rsi, qword [rbp - 0x60]
mov rcx, qword [rbx + 8]
mov rdx, rsi
mov r8d, dword [rsp + 0x40]
mov dword [rsp + 0x20], r13d
movsx r9d, word [rcx + r12*2]
mov rcx, r15
call fcn.140094248
mov eax, 1
add r13d, eax
add r12, rax
cmp r12, rdi
jl 0x1400c7638
mov r15, qword [rbp + 0x90]
xor esi, esi
mov r13d, dword [rsp + 0x4c]
mov ebx, dword [rsp + 0x54]
mov r12, qword [rbp + 0x98]
test ebx, ebx
je 0x1400c76a9
mov r8d, dword [rbp + 0xa8]
xor r9d, r9d
mov dword [rsp + 0x28], edi
mov rcx, r12
mov dword [rsp + 0x20], r13d
lea edx, [r9 + 0x1f]
call fcn.14007de68
mov r14d, eax
test ebx, ebx
js 0x1400c770c
mov eax, dword [rsp + 0x78]
mov r9d, edi
mov r8d, r13d
mov dword [rsp + 0x20], eax
mov edx, 0x5f
mov rcx, r12
call fcn.14007d9f8
mov r9d, dword [rsp + 0x78]
mov edx, 0x88
mov r8d, dword [rbp + 0xa8]
mov rcx, r12
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r13d
call fcn.14007de68
test ebx, ebx
je 0x1400c770c
movsxd rax, dword [r12 + 0x98]
test eax, eax
jle 0x1400c770c
lea rcx, [rax + rax*2]
mov edx, reloc.WS2_32.dll_recv
mov rax, qword [r12 + 0x90]
mov word [rax + rcx*8 - 0x16], dx
mov r8d, edi
mov edx, r13d
mov rcx, r15
call fcn.1400975a8
mov r13, qword [rbp - 0x48]
mov edi, dword [rbp - 0x80]
mov rbx, qword [rbp - 0x30]
mov r9d, dword [rsp + 0x5c]
mov edx, recv
mov r8d, dword [rbp - 0x7c]
mov rcx, r12
mov dword [rsp + 0x20], esi
call fcn.14007d9f8
test r14d, r14d
je 0x1400c775a
mov edx, r14d
mov rcx, r12
call fcn.14007e52c
mov ecx, dword [r12 + 0x98]
mov dword [rax + 8], ecx
test byte [rbx + 0x44], 2
mov ecx, 1
mov eax, dword [rsp + 0x48]
mov rdx, qword [rbx + 0x3b0]
cmovne eax, ecx
mov dword [rsp + 0x48], eax
test dword [rdx + 0x28], 0x200
je 0x1400c77b4
test edi, edi
je 0x1400c778c
mov rax, qword [rbp - 0x50]
cmp qword [rdx + 0x20], rax
jne 0x1400c77b4
mov rax, qword [rbp - 0x60]
test byte [rax + 0x30], 0x80
je 0x1400c77aa
mov rax, qword [rdx + 0x20]
mov ecx, dword [rax + 0x64]
and cl, 3
cmp cl, 2
mov ecx, 1
je 0x1400c77b4
mov rax, qword [rdx + 0x20]
mov qword [rbp - 0x50], rax
jmp 0x1400c77b8
mov qword [rbp - 0x50], rsi
test byte [rbx + 0x44], cl
je 0x1400c77c7
mov rax, qword [rbp + 0xa0]
or dword [rax + 0x44], ecx
mov rcx, rbx
call fcn.1400cf628
mov rcx, r15
call fcn.14007dd9c
mov rax, qword [rbp - 0x20]
test rax, rax
je 0x1400c7423
mov rcx, qword [rbp - 0x78]
mov rdx, rax
jmp 0x1400c741e
mov r11, qword [rsp + 0x60]
test byte [r8 + r11 + 0x48], 0x20
je 0x1400c7814
mov rdx, qword [rbp + 0xa0]
mov r9d, 1
mov byte [r14 + 0x35], 0xb3
jmp 0x1400c5fa0
mov edi, dword [rsp + 0x40]
lea rdx, [0x140000000]
mov ecx, r10d
mov r8d, edi
mov dword [r14 + 0x38], edi
mov dword [rsp + 0x20], esi
mov al, byte [rcx + rdx + 0x1f46d0]
movzx edx, byte [rcx + rdx + 0x1f2df8]
mov rcx, r12
mov byte [r14 + 0x35], al
call fcn.14007d9f8
mov rdx, qword [rbp + 0xa0]
mov r9d, 1
add eax, r9d
mov byte [r14 + 0x37], r9b
mov dword [r14 + 0x3c], eax
jmp 0x1400c5f9b
mov rdx, qword [rbp - 0x40]
mov rax, qword [rbx]
mov qword [rbp + 0x90], rax
test byte [rdx + r11 + 0x44], 8
je 0x1400c7885
test byte [rax + 4], r9b
je 0x1400c794c
cmp r13d, r9d
jne 0x1400c78a8
mov edx, dword [r14 + 4]
mov rcx, rax
call fcn.140096f18
mov r9d, 1
test eax, eax
jne 0x1400c78ae
lea edi, [rax + 2]
jmp 0x1400c794c
cmp r13d, 3
jge 0x1400c78cb
movzx ecx, word [rbx + 0x12]
bt cx, 0xc
jae 0x1400c78cb
test edi, edi
jne 0x1400c794c
mov edi, 3
jmp 0x1400c794c
bt cx, 9
jae 0x1400c7903
mov edx, dword [r14 + 0x2c]
test edx, edx
je 0x1400c7903
mov rcx, qword [rbp + 0x98]
mov r8d, edx
and edx, r9d
shr r8d, 1
xor r9d, r9d
mov dword [rsp + 0x20], esi
lea edx, [rdx*2 + 0x12]
call fcn.14007d9f8
mov dword [rbp + 0xa8], eax
mov r8d, dword [rbp - 0x54]
mov r9d, reloc.WS2_32.dll_recv
mov rdx, qword [rbp + 0x90]
mov rcx, r15
call fcn.14009623c
mov eax, dword [rbp + 0xa8]
test eax, eax
je 0x1400c7941
mov r9, qword [rbp + 0x98]
mov edx, eax
mov rcx, r9
call fcn.14007e52c
mov ecx, dword [r9 + 0x98]
mov dword [rax + 8], ecx
or word [rbx + 0x12], 4
mov r9d, 1
mov rdx, qword [rbp + 0xa0]
sub r12d, r9d
mov r8, qword [rbp - 0x70]
add rbx, 0x38
mov r11, qword [rsp + 0x60]
test r12d, r12d
jg 0x1400c5fca
mov rbx, qword [rdx + 0x90]
mov r12d, dword [rdx + 0x84]
mov r11, qword [rsp + 0x60]
mov r13d, edi
test edi, edi
jg 0x1400c5fb1
mov r13d, 1
test r12d, r12d
jle 0x1400c7ab6
mov r14d, dword [rsp + 0x40]
lea eax, [r13 + 5]
add rbx, 0x14
test byte [rbx - 2], al
jne 0x1400c7a9f
movzx eax, word [rbx]
mov edx, listen
test al, 0x82
setne cl
bt ax, dx
setb al
test al, cl
je 0x1400c7a9a
cmp dword [rbx + 8], r14d
jne 0x1400c7a9a
mov rax, qword [rbp - 0x40]
mov rcx, qword [rsp + 0x60]
test byte [rax + rcx + 0x44], 8
jne 0x1400c7a9a
mov r9, qword [rbp + 0xb8]
mov edx, r14d
mov r8d, dword [rbx + 0xc]
mov rcx, qword [rbp - 0x28]
mov r13, qword [rbx - 0x14]
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x83
call fcn.1400ca170
mov rdi, rax
test rax, rax
je 0x1400c7a94
test byte [rax + 0x12], 4
jne 0x1400c7a94
mov edx, 1
test byte [rax + 0x14], dl
je 0x1400c7a45
mov rax, qword [rax]
test dword [rax + 4], 0x800
je 0x1400c7a45
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], edx
jg 0x1400c7b50
mov rax, qword [rdi]
lea rdx, [rbp - 0x10]
mov r8d, dword [rbp - 0x54]
mov r9d, reloc.WS2_32.dll_recv
mov rcx, r15
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x20], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rbp + 0x30], xmm0
mov rax, qword [r13 + 0x10]
mov qword [rbp], rax
call fcn.14009623c
or word [rdi + 0x12], 4
mov r13d, 1
mov eax, 6
sub r12d, r13d
add rbx, 0x38
test r12d, r12d
jg 0x1400c79a6
mov r14, qword [rbp + 0xb0]
cmp dword [r14], esi
je 0x1400c7b38
mov rcx, qword [rbp + 0x98]
mov r8d, r13d
mov r9d, dword [r14]
mov edx, 0x46
mov dword [rsp + 0x20], esi
mov eax, dword [rcx + 0x98]
mov dword [r14 + 0x1c], eax
call fcn.14007d9f8
mov rdi, qword [rbp + 0xa0]
mov rbx, qword [rdi + 0x90]
cmp dword [rdi + 0x84], esi
jle 0x1400c7b38
mov eax, 6
test byte [rbx + 0x12], al
jne 0x1400c7b29
mov rax, qword [rbx + 0x30]
test qword [r14 + 0x58], rax
jne 0x1400c7b24
mov r8d, dword [rbp - 0x54]
mov r9d, reloc.WS2_32.dll_recv
mov rdx, qword [rbx]
mov rcx, r15
call fcn.14009623c
or word [rbx + 0x12], 4
mov eax, 6
add esi, r13d
add rbx, 0x38
cmp esi, dword [rdi + 0x84]
jl 0x1400c7afb
mov rax, qword [r14 + 0x58]
add rsp, 0x148
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r13, rdx
jmp 0x1400c7a9a