Function at 0x180093ad0
Capabilities:
Check for software breakpoints

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
sub rsp, 0x38
mov qword [rax + 0x20], rbx
mov qword [rax - 8], rbp
mov qword [rax - 0x10], rsi
mov qword [rax - 0x18], rdi
mov qword [rax - 0x20], r12
mov qword [rax - 0x28], r13
mov qword [rax - 0x30], r14
mov r12, rcx
mov r9, rcx
xor bpl, bpl
xor r13b, r13b
xor r10b, r10b
mov rdi, rdx
mov ecx, 0x25
xor eax, eax
rep stosb byte [rdi], al
mov r8, rdx
lea r14, [0x18013c060]
mov dil, select
mov dword [rsp + 0x50], ebp
lea r11, [0x180000000]
nop word [rax + rax]
movzx edx, byte [r9]
inc r9
lea eax, [rdx - 0x26]
cmp eax, 0xcd
ja case.0x180093b57.44
cdqe
movzx eax, byte [r11 + rax + 0x94184]
mov ecx, dword [r11 + rax*4 + 0x94168]
add rcx, r11
jmp rcx
mov byte [r8 + 1], dl
or r10b, 4
jmp 0x180093b93
mov byte [r8 + 1], dl
or r10b, 2
jmp 0x180093b93
mov byte [r8 + 2], dl
or r10b, 0x20
jmp 0x180093b93
mov byte [r8 + 3], dl
or r10b, 0x40
jmp 0x180093b93
mov byte [r8 + 4], dl
or r10b, 8
jmp 0x180093b93
mov byte [r8 + 5], dl
or r10b, 0x10
add dil, 0xff
jne 0x180093b30
movzx eax, r10b
movzx esi, r10b
mov ebx, 1
shl eax, 0x17
test r10b, r10b
mov qword [rsp], r15
mov dword [r8 + 0x21], eax
cmove esi, ebx
movzx eax, dl
and al, 0xf0
cmp al, 0x40
jne 0x180093c1f
or dword [r8 + 0x21], 0x40000000
movzx eax, dl
shr eax, 3
and eax, ebx
mov byte [r8 + 7], al
test al, al
je 0x180093beb
movzx eax, byte [r9]
movzx ebp, bpl
and al, 0xf8
cmp al, 0xb8
cmove ebp, ebx
mov dword [rsp + 0x50], ebp
movzx eax, dl
inc r9
shr al, 2
and al, bl
mov byte [r8 + 8], al
movzx eax, dl
and dl, bl
shr al, 1
mov byte [r8 + 0xa], dl
and al, bl
mov byte [r8 + 9], al
movzx edx, byte [r9 - 1]
movzx eax, dl
and al, 0xf0
cmp al, 0x40
jne 0x180093c1f
movzx r15d, dl
jmp 0x180093c94
mov byte [r8 + 0xb], dl
cmp dl, 0xf
jne 0x180093c3c
movzx edx, byte [r9]
inc r9
lea r14, [0x18013c0aa]
mov byte [r8 + 0xc], dl
jmp 0x180093c5a
lea eax, [rdx + 0x60]
cmp al, 3
ja 0x180093c5a
inc bpl
mov dword [rsp + 0x50], ebp
test sil, 0x10
je 0x180093c56
or sil, 8
jmp 0x180093c5a
and sil, 0xf7
movzx r10d, dl
movzx eax, dl
movzx r15d, dl
shr rax, 2
mov edi, r10d
movzx r11d, byte [rax + r14]
mov eax, r10d
and eax, 0x80000003
jge 0x180093c82
dec eax
or eax, 0xfffffffc
inc eax
movsxd rcx, eax
lea rax, [r14 + r11]
movzx r11d, byte [rcx + rax]
cmp r11b, 0xff
jne 0x180093cb6
or dword [r8 + 0x21], 0x3000
movzx r10d, dl
xor cl, cl
mov eax, r10d
movzx r11d, cl
mov edi, r10d
and eax, 0xfffffffd
cmp eax, 0x24
cmove r11d, ebx
xor bl, bl
test r11b, r11b
jns 0x180093cd1
movzx eax, r11b
and eax, 0x7f
movzx ebx, word [rax + r14]
movzx r11d, bl
shr bx, 8
movzx r14d, byte [r8 + 0xc]
test r14b, r14b
je 0x180093d1c
movzx eax, dl
lea rdx, [0x18013c060]
shr rax, 2
movzx ecx, byte [rax + rdx + 0x13c]
and r10d, 0x80000003
jge 0x180093d04
dec r10d
or r10d, 0xfffffffc
inc r10d
movsxd rax, r10d
add rcx, rax
test byte [rcx + rdx + 0x13c], sil
je 0x180093d1c
or dword [r8 + 0x21], 0x3000
test r11b, 1
je 0x180094056
or dword [r8 + 0x21], 1
movzx r10d, byte [r9]
movzx r12d, r10b
movzx ebp, r10b
mov byte [r8 + 0xd], r10b
and bpl, 7
shr r10b, 3
shr r12b, 6
and r10b, 7
mov byte [r8 + 0xe], r12b
mov byte [rsp + 0x48], bpl
mov byte [r8 + 0x10], bpl
mov byte [r8 + 0xf], r10b
test bl, bl
je 0x180093d75
movzx ecx, r10b
movzx eax, bl
shl eax, cl
test al, al
jns 0x180093d75
or dword [r8 + 0x21], 0x3000
test r14b, r14b
jne 0x180093dc9
lea eax, [r15 + 0x27]
cmp al, 6
ja 0x180093dc9
lea eax, [r15 + 0x27]
lea rbx, [0x18013c060]
cmp r12b, 3
jne 0x180093dac
movzx ecx, al
movzx eax, r10b
lea rdx, [rax + rcx*8]
movzx ecx, bpl
movzx eax, byte [rdx + rbx + 0x104]
jmp 0x180093dbb
movzx eax, al
movzx ecx, r10b
movzx eax, byte [rax + rbx + 0xfd]
shl al, cl
test al, al
jns 0x180093dc9
or dword [r8 + 0x21], 0x3000
lea rdx, [0x18013c238]
test sil, 0x20
je 0x180093e3c
cmp r12b, 3
jne 0x180093de6
or dword [r8 + 0x21], 0x9000
jmp 0x180093e3c
movzx ebp, r15b
test r14b, r14b
je 0x180093dfb
lea rcx, [0x18013c226]
mov rbx, rdx
jmp 0x180093e11
movzx ebp, r15b
lea rcx, [0x18013c20e]
lea rbx, [0x18013c226]
and bpl, 0xfe
cmp byte [rcx], bpl
je 0x180093e21
add rcx, 2
cmp rcx, rbx
jne 0x180093e11
jmp 0x180093e2f
movzx eax, byte [rcx + 1]
movzx ecx, r10b
shl eax, cl
test al, al
jns 0x180093e37
or dword [r8 + 0x21], 0x9000
movzx ebp, byte [rsp + 0x48]
mov ecx, edi
test r14b, r14b
je 0x180093e84
sub ecx, 0x20
je 0x180093e68
dec ecx
je 0x180093e54
dec ecx
je 0x180093e68
dec ecx
jne 0x180093e99
lea eax, [r10 - 4]
mov r12b, 3
cmp al, 1
ja 0x180093f2c
jmp 0x180093f24
mov r12b, 3
cmp r10b, 4
ja 0x180093f24
cmp r10b, 1
jne 0x180093f2c
jmp 0x180093f24
sub ecx, 0x8c
je 0x180093f1e
cmp ecx, 2
je 0x180093f18
cmp r12b, 3
jne 0x180093eeb
test r14b, r14b
je 0x180093eb4
lea rdx, [0x18013c247]
lea rcx, [0x18013c271]
jmp 0x180093ec0
lea rcx, [0x18013c247]
nop dword [rax + rax]
movzx eax, byte [rdx]
inc rdx
cmp al, r15b
je 0x180093ed6
add rdx, 2
cmp rdx, rcx
jne 0x180093ec0
jmp 0x180093f2c
test byte [rdx], sil
je 0x180093f2c
movzx eax, byte [rdx + 1]
movzx ecx, r10b
shl eax, cl
test al, al
jns 0x180093f24
jmp 0x180093f2c
test r14b, r14b
je 0x180093f2c
sub edi, 0x50
je 0x180093f08
sub edi, 0x75
je 0x180093f24
sub edi, 0x11
je 0x180093f10
dec edi
je 0x180093f08
cmp edi, 0x20
jne 0x180093f2c
test sil, 9
jne 0x180093f24
jmp 0x180093f2c
test sil, 6
jne 0x180093f24
jmp 0x180093f2c
cmp r10b, 1
je 0x180093f24
cmp r10b, 5
jbe 0x180093f2c
or dword [r8 + 0x21], 0x11000
movzx edx, byte [r9 + 1]
add r9, 2
cmp r10b, 1
ja 0x180093f51
cmp r15b, 0xf6
jne 0x180093f47
or r11b, 2
jmp 0x180093f51
cmp r15b, 0xf7
jne 0x180093f51
or r11b, 0x10
movzx ecx, r12b
mov edi, 4
test r12b, r12b
je 0x180093f7b
dec ecx
je 0x180093f76
dec ecx
jne 0x180093f98
mov r13b, 2
test sil, 0x10
jne 0x180093f98
movzx r13d, dil
jmp 0x180093f98
mov r13b, 1
jmp 0x180093f98
test sil, 0x10
je 0x180093f8c
cmp bpl, 6
jne 0x180093f98
mov r13b, 2
jmp 0x180093f98
movzx r13d, r13b
cmp bpl, 5
cmove r13d, edi
cmp r12b, 3
je 0x180093fdf
cmp bpl, dil
jne 0x180093fdf
or dword [r8 + 0x21], 2
movzx eax, dl
inc r9
shr al, 6
mov byte [r8 + 0x11], dl
mov byte [r8 + 0x12], al
movzx eax, dl
shr al, 3
and al, 7
mov byte [r8 + 0x13], al
movzx eax, dl
and eax, 7
mov byte [r8 + 0x14], al
cmp al, 5
jne 0x180093fdf
test r12b, 1
movzx r13d, r13b
cmove r13d, edi
movzx ecx, r13b
dec r9
dec ecx
je 0x180094037
dec ecx
je 0x180094014
cmp ecx, 2
jne 0x180094044
or dword [r8 + 0x21], 0x100
mov eax, dword [r9]
mov ebp, dword [rsp + 0x50]
mov r12, qword [rsp + 0x40]
mov dword [r8 + 0x1d], eax
movzx eax, r13b
add r9, rax
jmp 0x180094064
or dword [r8 + 0x21], 0x80
movzx eax, word [r9]
mov ebp, dword [rsp + 0x50]
mov r12, qword [rsp + 0x40]
mov word [r8 + 0x1d], ax
movzx eax, r13b
add r9, rax
jmp 0x180094064
or dword [r8 + 0x21], 0x40
movzx eax, byte [r9]
mov byte [r8 + 0x1d], al
mov ebp, dword [rsp + 0x50]
mov r12, qword [rsp + 0x40]
movzx eax, r13b
add r9, rax
jmp 0x180094064
test sil, 0x20
je 0x180094064
or dword [r8 + 0x21], 0x9000
mov r15, qword [rsp]
mov r14, qword [rsp + 8]
mov r13, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x20]
mov rbx, qword [rsp + 0x58]
test r11b, 0x10
je 0x1800940d5
test r11b, 0x40
je 0x1800940a8
test sil, 8
je 0x180094109
or dword [r8 + 0x21], 0x208
movzx eax, word [r9]
add r9, 2
mov word [r8 + 0x15], ax
jmp 0x180094137
test bpl, bpl
je 0x1800940bf
or dword [r8 + 0x21], 0x20
mov rax, qword [r9]
add r9, 8
mov qword [r8 + 0x15], rax
jmp 0x1800940d5
test sil, 8
jne 0x1800940db
or dword [r8 + 0x21], 0x10
mov eax, dword [r9]
add r9, 4
mov dword [r8 + 0x15], eax
test r11b, 4
je 0x1800940ed
or dword [r8 + 0x21], 8
movzx eax, word [r9]
add r9, 2
mov word [r8 + 0x15], ax
test r11b, 2
je 0x180094103
or dword [r8 + 0x21], 4
movzx eax, byte [r9]
inc r9
mov byte [r8 + 0x15], al
test r11b, 0x40
je 0x18009411e
or dword [r8 + 0x21], 0x210
mov eax, dword [r9]
add r9, 4
mov dword [r8 + 0x15], eax
jmp 0x180094137
test r11b, 0x20
je 0x180094137
or dword [r8 + 0x21], 0x204
movzx eax, byte [r9]
inc r9
mov byte [r8 + 0x15], al
mov rsi, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x30]
sub r9, r12
mov r12, qword [rsp + 0x18]
mov byte [r8], r9b
cmp r9b, 0xf
jbe 0x18009415e
or dword [r8 + 0x21], 0x5000
mov byte [r8], reloc.WS2_32.dll_ntohs
movzx eax, byte [r8]
add rsp, 0x38
ret