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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1a8
movapd xmmword [rsp + 0x190], xmm15
movapd xmmword [rsp + 0x180], xmm14
movaps xmmword [rsp + 0x170], xmm13
movaps xmmword [rsp + 0x160], xmm12
movaps xmmword [rsp + 0x150], xmm11
movaps xmmword [rsp + 0x140], xmm10
movaps xmmword [rsp + 0x130], xmm9
movapd xmmword [rsp + 0x120], xmm8
movapd xmmword [rsp + 0x110], xmm7
movaps xmmword [rsp + 0x100], xmm6
mov r12, rdx
mov rax, qword [0x140324948]
xor rax, rsp
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0xe0], 0
lea rdi, [rcx + 1]
jmp 0x1400e0614
add rdi, 1
movzx eax, byte [rdi - 1]
movsx edx, al
lea ebp, [rdx - 9]
cmp ebp, 5
jb 0x1400e0610
cmp edx, 0x2a
jg 0x1400e0637
cmp edx, 0x20
je 0x1400e0610
test edx, edx
je case.0x1400e0c77.74
jmp 0x1400e0657
cmp edx, 0x2d
je 0x1400e0646
cmp edx, 0x2b
jne 0x1400e0657
xor r15d, r15d
jmp 0x1400e064c
mov r15d, 1
mov al, byte [rdi]
test al, al
jne 0x1400e065e
jmp case.0x1400e0c77.74
add rdi, 0xffffffffffffffff
xor r15d, r15d
xor r11d, r11d
cmp al, 0x30
jne 0x1400e0693
nop word cs:[rax + rax]
nop
movzx eax, byte [rdi + 1]
add rdi, 1
cmp al, 0x30
je 0x1400e0670
test al, al
jne 0x1400e06a0
mov qword [rsp + 0x50], rdi
test r12, r12
jne 0x1400e0bbb
jmp 0x1400e0bc4
mov r8, r12
mov dword [rsp + 0x48], 0
jmp 0x1400e06ab
mov r8, r12
mov dword [rsp + 0x48], 1
movsx r12d, al
lea edx, [r12 - 0x30]
cmp dl, 9
ja 0x1400e0745
xor ebp, ebp
xor ebx, ebx
xor esi, esi
nop word cs:[rax + rax]
nop dword [rax]
cmp ebp, 8
ja 0x1400e06f0
lea eax, [rsi + rsi*4]
lea esi, [r12 + rax*2]
add esi, 0xffffffd0
jmp 0x1400e06ff
cmp ebp, 0x10
ja 0x1400e06ff
lea eax, [rbx + rbx*4]
lea ebx, [r12 + rax*2]
add ebx, 0xffffffd0
movzx eax, byte [rdi + rbp + 1]
movsx r12d, al
lea edx, [r12 - 0x30]
add rbp, 1
cmp dl, 0xa
jb 0x1400e06d0
lea rdx, [rdi + rbp]
mov r11d, edx
sub r11d, edi
cmp rdx, rdi
mov qword [rsp + 0x50], rdx
jbe 0x1400e0750
xor r10d, r10d
nop dword [rax]
cmp byte [rdx - 1], 0x30
jne 0x1400e0753
add rdx, 0xffffffffffffffff
add r10d, 1
cmp rdx, rdi
ja 0x1400e0730
jmp 0x1400e0753
mov qword [rsp + 0x50], rdi
xor ebx, ebx
xor esi, esi
xor ebp, ebp
xor r10d, r10d
cmp al, 0x2e
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0x98], rbp
jne 0x1400e07af
xor eax, eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x50]
movsx r12d, byte [rax + 1]
add rax, 1
mov qword [rsp + 0x50], rax
sub eax, edi
mov dword [rsp + 0x78], eax
sub eax, r11d
mov qword [rsp + 0x40], rax
xor r14d, r14d
test ebp, ebp
je 0x1400e07d1
mov qword [rsp + 0x68], r8
mov dword [rsp + 0x3c], r15d
mov edi, ebp
xor r15d, r15d
mov r8, qword [rsp + 0x50]
jmp 0x1400e084f
xor eax, eax
mov qword [rsp + 0x30], rax
xor eax, eax
mov qword [rsp + 0x40], rax
mov eax, r11d
mov dword [rsp + 0x78], r11d
mov edi, ebp
xor ebp, ebp
xor r14d, r14d
jmp 0x1400e096a
xor edi, edi
mov r14d, 0
cmp r12b, 0x30
jne 0x1400e0808
xor r14d, r14d
mov rax, qword [rsp + 0x50]
nop word [rax + rax]
add r14d, 1
movsx r12d, byte [rax + 1]
add rax, 1
cmp r12d, 0x30
je 0x1400e07f0
mov qword [rsp + 0x50], rax
lea eax, [r12 - 0x31]
cmp eax, 8
ja 0x1400e0848
mov qword [rsp + 0x68], r8
mov dword [rsp + 0x3c], r15d
mov r8, qword [rsp + 0x50]
mov r11, qword [rsp + 0xb8]
sub r11d, r8d
mov rax, qword [rsp + 0x40]
lea eax, [rax + r11]
mov dword [rsp + 0x78], eax
xor edi, edi
xor r15d, r15d
mov qword [rsp + 0xb8], r8
jmp 0x1400e085d
xor ebp, ebp
jmp 0x1400e096a
lea eax, [r12 - 0x30]
cmp eax, 9
ja 0x1400e0955
lea eax, [r15 + 1]
add r12d, 0xffffffd0
je 0x1400e08fe
add r14d, eax
lea edx, [rdi + 1]
cmp edi, 9
setl al
test r15d, r15d
jle 0x1400e0905
mov r10, rdi
mov r9d, r15d
and r9d, 1
cmp r15d, 1
je 0x1400e08eb
mov edi, r9d
sub edi, r15d
nop word cs:[rax + rax]
test al, 1
je 0x1400e08b0
add esi, esi
lea esi, [rsi + rsi*4]
jmp 0x1400e08bc
lea eax, [rbx + rbx]
cmp edx, 0x12
lea eax, [rax + rax*4]
cmovl ebx, eax
lea eax, [rdx + 1]
cmp edx, 9
jge 0x1400e08d0
add esi, esi
lea esi, [rsi + rsi*4]
jmp 0x1400e08dd
lea ebp, [rbx + rbx]
cmp eax, 0x12
lea ebp, [rbp + rbp*4]
cmovl ebx, ebp
add edx, 2
cmp eax, 9
setl al
add edi, 2
jne 0x1400e08a0
add r10d, r15d
test r9d, r9d
je 0x1400e092d
test al, al
je 0x1400e091b
add esi, esi
lea esi, [rsi + rsi*4]
jmp 0x1400e0927
mov edx, edi
mov r15d, eax
jmp 0x1400e0945
cmp edi, 8
jle 0x1400e0938
xor r15d, r15d
cmp edx, 0x11
jg 0x1400e0942
lea eax, [rbx + rbx*4]
lea ebx, [r12 + rax*2]
jmp 0x1400e0942
lea eax, [rbx + rbx]
cmp edx, 0x12
lea eax, [rax + rax*4]
cmovl ebx, eax
cmp edx, 9
setl al
add r10d, 1
mov edx, r10d
test al, 1
je 0x1400e090a
lea eax, [rsi + rsi*4]
lea esi, [r12 + rax*2]
xor r15d, r15d
xor r10d, r10d
movsx r12d, byte [r8 + 1]
add r8, 1
mov edi, edx
jmp 0x1400e084f
mov qword [rsp + 0x50], r8
mov ebp, r14d
mov r14d, r15d
mov r15d, dword [rsp + 0x3c]
mov r8, qword [rsp + 0x68]
mov eax, r12d
or eax, 0x20
cmp eax, 0x65
mov qword [rsp + 0x58], rdi
jne 0x1400e0ab1
mov eax, r14d
or eax, dword [rsp + 0x48]
or eax, edi
mov r12, r8
je case.0x1400e0c77.74
mov rcx, qword [rsp + 0x50]
movsx r12d, byte [rcx + 1]
xor r9d, r9d
cmp r12d, 0x2b
je 0x1400e09af
cmp r12d, 0x2d
jne 0x1400e09bd
mov r9d, 1
mov r13d, ebp
lea rdx, [rcx + 2]
movsx r12d, byte [rcx + 2]
jmp 0x1400e09c4
mov r13d, ebp
lea rdx, [rcx + 1]
lea eax, [r12 - 0x30]
xor ebp, ebp
mov qword [rsp + 0x30], rbp
cmp eax, 9
ja 0x1400e0aae
cmp r12d, 0x30
mov ebp, r13d
jne 0x1400e09ff
nop word cs:[rax + rax]
nop dword [rax]
movsx r12d, byte [rdx + 1]
add rdx, 1
cmp r12d, 0x30
je 0x1400e09f0
lea eax, [r12 - 0x31]
cmp eax, 8
ja 0x1400e0b82
add r12d, 0xffffffd0
lea rdi, [rdx + 1]
movsx eax, byte [rdx + 1]
lea ecx, [rax - 0x30]
cmp cl, 9
mov dword [rsp + 0x88], ebp
ja 0x1400e0a55
nop dword [rax + rax]
cmp r12d, 0xcccccca
jg 0x1400e0a45
lea ecx, [r12 + r12*4]
lea r12d, [rax + rcx*2]
add r12d, 0xffffffd0
movsx eax, byte [rdi + 1]
add rdi, 1
lea ecx, [rax - 0x30]
cmp cl, 0xa
jb 0x1400e0a30
mov r13d, r10d
mov rcx, rdi
sub rcx, rdx
cmp rcx, 8
mov r10d, 0x4e1f
mov edx, r12d
cmovg edx, r10d
mov rcx, qword [rsp + 0x50]
cmp r12d, 0x4e1f
cmovg edx, r10d
mov ebp, edx
neg ebp
test r9d, r9d
cmove ebp, edx
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x50], rdi
mov r12d, eax
mov rdi, qword [rsp + 0x58]
mov r10d, r13d
mov ebp, dword [rsp + 0x88]
test edi, edi
jne 0x1400e0ab9
jmp 0x1400e0b8f
mov ebp, r13d
test edi, edi
je 0x1400e0b8f
mov r13, qword [rsp + 0x98]
test r13d, r13d
cmove r13d, edi
mov qword [rsp + 0x98], r13
cmp edi, 0x12
mov edx, setsockopt
cmovl edx, edi
mov eax, esi
cvtsi2sd xmm0, rax
movsd qword [rsp + 0xe0], xmm0
cmp edx, 0xa
jl 0x1400e0b14
movsxd rax, edx
lea rcx, [0x1401e3bd0]
mulsd xmm0, qword [rcx + rax*8 - 0x48]
mov eax, ebx
cvtsi2sd xmm1, rax
addsd xmm0, xmm1
movsd qword [rsp + 0xe0], xmm0
mov r14, qword [rsp + 0xb8]
mov r12, r8
mov r9, qword [rsp + 0x30]
mov ebx, r9d
sub ebx, ebp
cmp edi, 0xf
jg 0x1400e0d7b
fnstcw word [rsp + 0xb0]
mov eax, dword [rsp + 0xb0]
mov ecx, eax
shr ecx, 9
and ecx, 2
shr eax, 0xb
and eax, 1
lea eax, [rax + rcx]
add eax, 1
and eax, 3
cmp eax, 1
jne 0x1400e0d7b
test ebx, ebx
je 0x1400e0bb6
jle 0x1400e0d51
cmp ebx, 0x16
jg 0x1400e0d6c
movsxd rax, ebx
lea rcx, [0x1401e3bd0]
jmp 0x1400e2803
mov qword [rsp + 0x50], rdx
test edi, edi
jne 0x1400e0ab9
or r14d, dword [rsp + 0x48]
je 0x1400e0ba0
mov r12, r8
test r12, r12
jne 0x1400e0bbb
jmp 0x1400e0bc4
cmp dword [rsp + 0x40], 0
je 0x1400e0c58
mov r12, r8
xor r15d, r15d
mov qword [rsp + 0x50], rcx
test r12, r12
je 0x1400e0bc4
mov rax, qword [rsp + 0x50]
mov qword [r12], rax
movsd xmm6, qword [rsp + 0xe0]
test r15d, r15d
je 0x1400e0bd9
xorps xmm6, xmmword [0x1401ca6c0]
mov rcx, qword [rsp + 0xf8]
xor rcx, rsp
call fcn.140190ca0
movaps xmm0, xmm6
movaps xmm6, xmmword [rsp + 0x100]
movaps xmm7, xmmword [rsp + 0x110]
movaps xmm8, xmmword [rsp + 0x120]
movaps xmm9, xmmword [rsp + 0x130]
movaps xmm10, xmmword [rsp + 0x140]
movaps xmm11, xmmword [rsp + 0x150]
movaps xmm12, xmmword [rsp + 0x160]
movaps xmm13, xmmword [rsp + 0x170]
movaps xmm14, xmmword [rsp + 0x180]
movaps xmm15, xmmword [rsp + 0x190]
add rsp, 0x1a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
add r12d, 0xffffffb7
cmp r12d, 0x25
ja case.default.0x1400e0c77
lea rax, [0x1400e442c]
movsxd rdx, dword [rax + r12*4]
add rdx, rax
mov r12, r8
jmp rdx
mov rbx, qword [rsp + 0x50]
movsx eax, byte [rbx + 1]
lea edx, [rax - 0x41]
lea ebp, [rax + 0x20]
cmp dl, 0x1a
cmovae ebp, eax
cmp ebp, 0x6e
jne case.0x1400e0c77.74
movsx eax, byte [rbx + 2]
lea edx, [rax - 0x41]
lea ebp, [rax + 0x20]
cmp dl, 0x1a
cmovae ebp, eax
cmp ebp, 0x66
jne case.0x1400e0c77.74
mov rbx, qword [rsp + 0x50]
lea rax, [rbx + 3]
movsx ecx, byte [rbx + 3]
lea edx, [rcx - 0x41]
lea ebp, [rcx + 0x20]
cmp dl, 0x1a
cmovae ebp, ecx
cmp ebp, 0x69
jne 0x1400e0d2c
add rbx, 2
movsx ecx, byte [rbx + 2]
lea edx, [rcx - 0x41]
lea ebp, [rcx + 0x20]
cmp dl, 0x1a
cmovae ebp, ecx
cmp ebp, 0x6e
jne 0x1400e0d2c
movsx ecx, byte [rbx + 3]
lea edx, [rcx - 0x41]
lea ebp, [rcx + 0x20]
cmp dl, 0x1a
cmovae ebp, ecx
cmp ebp, 0x69
jne 0x1400e0d2c
movsx ecx, byte [rbx + 4]
lea edx, [rcx - 0x41]
lea ebp, [rcx + 0x20]
cmp dl, 0x1a
cmovae ebp, ecx
cmp ebp, 0x74
jne 0x1400e0d2c
movsx ecx, byte [rbx + 5]
lea edx, [rcx - 0x41]
lea ebp, [rcx + 0x20]
cmp dl, 0x1a
cmovae ebp, ecx
add rbx, 6
cmp ebp, 0x79
cmove rax, rbx
movabs rcx, 0x7ff0000000000000
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0x50], rax
test r12, r12
jne 0x1400e0bbb
jmp 0x1400e0bc4
cmp ebx, 0xffffffea
jl 0x1400e0d7b
neg ebx
movsxd rax, ebx
lea rcx, [0x1401e3bd0]
divsd xmm0, qword [rcx + rax*8]
jmp 0x1400e2808
mov eax, 0x25
sub eax, edi
cmp ebx, eax
jle 0x1400e27e9
mov r13d, ebp
movq rbp, xmm0
mov rax, rbp
shr rax, 0x20
mov rcx, rbx
mov ebx, edi
sub ebx, edx
mov qword [rsp + 0xc0], rcx
add ebx, ecx
jle 0x1400e0e34
mov edx, ebx
and edx, 0xf
je 0x1400e0dc8
mov eax, edx
lea rdx, [0x1401e3bd0]
mulsd xmm0, qword [rdx + rax*8]
movsd qword [rsp + 0xe0], xmm0
movq rax, xmm0
shr rax, 0x20
mov edx, ebx
and edx, 0xfffffff0
je 0x1400e0fac
cmp edx, 0x135
jge 0x1400e0f62
cmp ebx, 0x20
jb 0x1400e0f1b
shr ebx, 4
lea rbp, [0x1401e3c90]
xor edx, edx
nop word cs:[rax + rax]
nop
test bl, 1
je 0x1400e0e1c
mulsd xmm0, qword [rbp]
movsd qword [rsp + 0xe0], xmm0
movq rax, xmm0
shr rax, 0x20
add rdx, 1
mov ecx, ebx
shr ecx, 1
add rbp, 8
cmp ebx, 3
mov ebx, ecx
ja 0x1400e0e00
jmp 0x1400e0f1d
xor ecx, ecx
mov qword [rsp + 0x70], rcx
test ebx, ebx
jns 0x1400e0fb3
mov r8d, ebx
neg r8d
mov edx, r8d
and edx, 0xf
je 0x1400e0e74
mov eax, edx
lea rcx, [0x1401e3bd0]
divsd xmm0, qword [rcx + rax*8]
movsd qword [rsp + 0xe0], xmm0
movq rbp, xmm0
mov rax, rbp
shr rax, 0x20
mov edx, r8d
sar edx, 4
je 0x1400e0fb3
cmp ebx, 0xfffffe01
jl 0x1400e2a77
cmp ebx, 0xfffffff0
jg 0x1400e0ec0
lea rcx, [0x1401e3cc0]
test dl, 1
je 0x1400e0eb6
mulsd xmm0, qword [rcx]
movsd qword [rsp + 0xe0], xmm0
movq rbp, xmm0
mov rax, rbp
shr rax, 0x20
shr edx, 1
add rcx, 8
test edx, edx
jne 0x1400e0e98
test r8d, 0x100
je 0x1400e2a4e
mov edx, eax
shr edx, 0x14
and edx, 0x7ff
mov ecx, WSAGetLastError
sub ecx, edx
jle 0x1400e2a4e
cmp ecx, 0x20
jl 0x1400e2903
cmp ecx, 0x36
jg 0x1400e2a77
mov dword [rsp + 0xe0], 0
cmp ecx, 0x35
jl 0x1400e2a43
mov dword [rsp + 0xe4], 0x3700000
jmp 0x1400e2a4e
xor edx, edx
add eax, 0xfcb00000
mov dword [rsp + 0xe4], eax
mov eax, edx
lea rcx, [0x1401e3c90]
movsd xmm0, qword [rcx + rax*8]
mulsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0xe0], xmm0
movq rax, xmm0
shr rax, 0x20
mov ecx, eax
and ecx, 0x7ff00000
cmp ecx, 0x7ca00000
jbe 0x1400e0f84
lea rcx, [rsp + 0xe0]
xor eax, eax
mov qword [rsp + 0x40], rax
xor esi, esi
xor ebx, ebx
xor eax, eax
mov qword [rsp + 0x48], rax
xor r14d, r14d
jmp 0x1400e3e75
cmp ecx, 0x7c900001
jb 0x1400e0fa0
movabs rax, 0x7fefffffffffffff
mov qword [rsp + 0xe0], rax
jmp 0x1400e0fac
add eax, 0x3500000
mov dword [rsp + 0xe4], eax
xor eax, eax
mov qword [rsp + 0x70], rax
cmp edi, 0x29
mov dword [rsp + 0x3c], r15d
jl 0x1400e1090
mov rax, qword [rsp + 0x40]
lea eax, [rax + 0x12]
cmp dword [rsp + 0x98], 0x12
mov ebp, reloc.WS2_32.dll_select
cmovl ebp, eax
lea r8d, [r11 - 1]
mov dl, 3
xor ecx, ecx
mov eax, dword [rsp + 0x78]
nop word cs:[rax + rax]
nop
lea edi, [rbp - 1]
cmp ebp, r11d
mov ebx, edi
cmovg ebx, r8d
cmp ebp, eax
cmovg ebx, edi
movsxd rbp, ebx
add dl, 3
add ecx, 1
cmp byte [r14 + rbp], 0x30
mov ebp, ebx
je 0x1400e0ff0
mov rdi, qword [rsp + 0x58]
lea eax, [r9 + rdi]
add eax, 0xffffffed
sub eax, r13d
add eax, ecx
mov qword [rsp + 0x80], rax
mov r13d, reloc.WS2_32.dll_send
sub r13d, ecx
mov rax, qword [rsp + 0x98]
cmp eax, r13d
mov r15d, eax
cmovg r15d, r13d
cmp r13d, 8
jg 0x1400e10ae
test r15d, r15d
jle 0x1400e25c7
lea r8d, [rcx - 0x14]
movsxd rdi, r15d
mov rax, qword [rsp + 0x98]
cmp r13d, eax
mov r9d, eax
cmovle r9d, r13d
lea rbp, [rdi - 1]
cmp rbp, 3
jae 0x1400e25da
xor ebx, ebx
xor esi, esi
test dil, 3
jne 0x1400e2644
jmp 0x1400e2686
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x80], rax
mov r13d, edi
mov rax, qword [rsp + 0x98]
mov r15d, eax
mov dword [rsp + 0x30], r10d
lea eax, [r13 + 8]
xor ecx, ecx
cmp eax, 0x12
jl 0x1400e10e9
cdqe
imul rax, rax, 0x38e38e39
mov rcx, rax
shr rcx, 0x3f
sar rax, 0x21
add eax, ecx
xor ecx, ecx
mov edx, 1
nop dword [rax + rax]
add edx, edx
add ecx, 1
cmp eax, edx
jg 0x1400e10e0
call fcn.1400e4520
mov rbx, rax
mov dword [rax + 0x18], esi
mov dword [rax + 0x14], 1
cmp r15d, 0xa
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x88], r13
jl 0x1400e12bb
lea r14, [r14 + 9]
mov esi, 9
mov r12d, 1
mov edx, dword [rsp + 0x30]
jmp 0x1400e1134
mov r12d, dword [rbx + 0x14]
movsx r13, byte [r14]
add r13, 0xffffffffffffffd0
xor eax, eax
nop
mov ecx, dword [rbx + rax*4 + 0x18]
lea rcx, [rcx + rcx*4]
lea r13, [r13 + rcx*2]
mov dword [rbx + rax*4 + 0x18], r13d
shr r13, 0x20
add rax, 1
cmp eax, r12d
jl 0x1400e1140
test r13, r13
je 0x1400e12a1
cmp r12d, dword [rbx + 0xc]
jge 0x1400e1180
mov rbp, rbx
jmp 0x1400e128e
mov ecx, dword [rbx + 8]
add ecx, 1
call fcn.1400e4520
mov rbp, rax
lea rcx, [rax + 0x10]
lea rdx, [rbx + 0x10]
movsxd rax, dword [rbx + 0x14]
lea r8, [rax*4 + 8]
call fcn.140193590
cmp dword [rbx + 8], 8
jl 0x1400e11ba
mov rcx, rbx
call fcn.1400a1350
jmp 0x1400e128a
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e1212
lea rax, [0x14034d8d0]
mov rcx, rax
call fcn.140076120
test al, al
je 0x1400e120b
lea rax, [0x14034d8d8]
mov rcx, rax
call fcn.140012f60
lea rcx, [0x14034d8d0]
lea rdx, [0x14034d8d8]
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
lea rcx, [0x14034d8d8]
jmp 0x1400e1212
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
movsxd rax, dword [rbx + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rbx], rcx
mov qword [rdx + rax*8], rbx
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e1284
lea rbx, [0x14034d8d0]
mov rcx, rbx
call fcn.140076120
test al, al
je 0x1400e127d
lea rax, [0x14034d8d8]
mov rcx, rax
call fcn.140012f60
mov rcx, rbx
lea rdx, [0x14034d8d8]
xor r8d, r8d
mov r9, rbx
call fcn.1400761d0
lea rcx, [0x14034d8d8]
jmp 0x1400e1284
mov rcx, qword [0x14034d8d0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov edx, dword [rsp + 0x30]
movsxd rax, r12d
add r12d, 1
mov dword [rbp + rax*4 + 0x18], r13d
mov dword [rbp + 0x14], r12d
mov rbx, rbp
add r14, 1
add esi, 1
cmp esi, r15d
mov r13, qword [rsp + 0x88]
jne 0x1400e1130
jmp 0x1400e12d2
mov rax, qword [rsp + 0x40]
add eax, 9
mov qword [rsp + 0x40], rax
mov r15d, 9
mov edx, dword [rsp + 0x30]
mov eax, edi
sub eax, edx
mov dword [rsp + 0x64], eax
cmp r15d, r13d
jge 0x1400e146b
movsxd rax, dword [rsp + 0x40]
add r14, rax
nop dword [rax + rax]
movsx rsi, byte [r14]
add rsi, 0xffffffffffffffd0
movsxd r12, dword [rbx + 0x14]
xor eax, eax
nop
mov ecx, dword [rbx + rax*4 + 0x18]
lea rcx, [rcx + rcx*4]
lea rsi, [rsi + rcx*2]
mov dword [rbx + rax*4 + 0x18], esi
shr rsi, 0x20
add rax, 1
cmp eax, r12d
jl 0x1400e1300
test rsi, rsi
je 0x1400e145a
cmp r12d, dword [rbx + 0xc]
jge 0x1400e1340
mov rbp, rbx
jmp 0x1400e144a
mov ecx, dword [rbx + 8]
add ecx, 1
call fcn.1400e4520
mov rbp, rax
lea rcx, [rax + 0x10]
lea rdx, [rbx + 0x10]
movsxd rax, dword [rbx + 0x14]
lea r8, [rax*4 + 8]
call fcn.140193590
cmp dword [rbx + 8], 8
jl 0x1400e137a
mov rcx, rbx
call fcn.1400a1350
jmp 0x1400e144a
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e13d2
lea rax, [0x14034d8d0]
mov rcx, rax
call fcn.140076120
test al, al
je 0x1400e13cb
lea rax, [0x14034d8d8]
mov rcx, rax
call fcn.140012f60
lea rcx, [0x14034d8d0]
lea rdx, [0x14034d8d8]
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
lea rcx, [0x14034d8d8]
jmp 0x1400e13d2
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
movsxd rax, dword [rbx + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rbx], rcx
mov qword [rdx + rax*8], rbx
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e1444
lea rbx, [0x14034d8d0]
mov rcx, rbx
call fcn.140076120
test al, al
je 0x1400e143d
lea rax, [0x14034d8d8]
mov rcx, rax
call fcn.140012f60
mov rcx, rbx
lea rdx, [0x14034d8d8]
xor r8d, r8d
mov r9, rbx
call fcn.1400761d0
lea rcx, [0x14034d8d8]
jmp 0x1400e1444
mov rcx, qword [0x14034d8d0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
lea eax, [r12 + 1]
mov dword [rbp + r12*4 + 0x18], esi
mov dword [rbp + 0x14], eax
mov rbx, rbp
add r14, 1
add r15d, 1
cmp r15d, r13d
jne 0x1400e12f0
lea rax, [rbx + 0x10]
mov qword [rsp + 0xd8], rax
mov rdx, qword [rsp + 0x80]
mov ecx, edx
neg ecx
xor eax, eax
test edx, edx
cmovs edx, eax
cmovns ecx, eax
mov dword [rsp + 0xd4], ecx
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 0x80], rdx
lea eax, [rdx + rcx]
mov dword [rsp + 0xd0], eax
mov eax, dword [rsp + 0x64]
xor eax, r13d
or eax, ecx
sete al
lea r15, [rsp + 0xe0]
lea r13, [0x14034d8d0]
movsd xmm6, qword [0x1401ca6e0]
movsd xmm14, qword [0x1401c8230]
movapd xmm8, xmmword [0x1401ca6c0]
xor al, 1
mov byte [rsp + 0x7f], al
movsd xmm9, qword [0x1401e3b78]
movsd xmm10, qword [0x1401e3b68]
movsd xmm11, qword [0x1401e3b70]
movsd xmm12, qword [0x1401ca708]
xorps xmm13, xmm13
movsd xmm7, qword [0x1401ca6b0]
movsd xmm15, qword [0x1401ca718]
jmp 0x1400e1530
mov rcx, r14
call fcn.1400a1350
nop dword [rax]
mov ecx, dword [rbx + 8]
call fcn.1400e4520
mov r14, rax
lea rcx, [rax + 0x10]
movsxd rax, dword [rbx + 0x14]
lea r8, [rax*4 + 8]
mov rdx, qword [rsp + 0xd8]
call fcn.140193590
mov rcx, r15
lea rdx, [rsp + 0xec]
lea r8, [rsp + 0xe8]
call fcn.1400e45f0
mov qword [rsp + 0x40], rax
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e15ba
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e15b3
lea rbp, [0x14034d8d8]
mov rcx, rbp
call fcn.140012f60
mov rcx, r13
mov rdx, rbp
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
mov rcx, rbp
jmp 0x1400e15ba
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
mov rsi, qword [0x14034d898]
test rsi, rsi
je 0x1400e15d7
mov rax, qword [rsi]
mov qword [0x14034d898], rax
jmp 0x1400e161e
mov rsi, qword [0x140324960]
mov rax, rsi
lea rcx, [0x14034d8f0]
sub rax, rcx
cmp rax, 0x8df
jg 0x1400e1603
mov rax, rsi
add rax, 0x28
mov qword [0x140324960], rax
jmp 0x1400e1610
mov ecx, 0x28
call fcn.1400a12f0
mov rsi, rax
movabs rax, 0x200000001
mov qword [rsi + 8], rax
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e1663
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e165c
lea rbp, [0x14034d8d8]
mov rcx, rbp
call fcn.140012f60
mov rcx, r13
mov rdx, rbp
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
mov rcx, rbp
jmp 0x1400e1663
mov rcx, qword [0x14034d8d0]
mov r13, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
movabs rax, 0x100000000
mov qword [rsi + 0x10], rax
mov qword [rsp + 0x48], rsi
mov dword [rsi + 0x18], 1
mov eax, dword [rsp + 0xec]
mov ebp, eax
neg ebp
xor edi, edi
test eax, eax
cmovns ebp, edi
mov r15d, 0
cmovns r15d, eax
mov edx, dword [rsp + 0xd4]
add r15d, edx
sub eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0xe8]
add eax, ecx
mov r12d, 0x36
sub r12d, ecx
mov esi, 1
cmp eax, 0xfffffc02
jg 0x1400e16f0
mov ecx, 0xfffffc03
sub ecx, eax
sub r12d, ecx
cmp ecx, 0x1f
mov r8, r14
jg 0x1400e185f
mov esi, 1
shl esi, cl
jmp 0x1400e16f3
mov r8, r14
mov r14, qword [rsp + 0x80]
add ebp, dword [rsp + 0xd0]
add ebp, r12d
add r12d, r15d
cmp r12d, ebp
mov eax, ebp
cmovle eax, r12d
cmp eax, r15d
cmovg eax, r15d
test eax, eax
jle 0x1400e1724
sub r12d, eax
sub ebp, eax
sub r15d, eax
mov dword [rsp + 0x94], esi
mov dword [rsp + 0x2c], edi
mov qword [rsp + 0x30], r8
test edx, edx
jle 0x1400e177b
mov rcx, qword [rsp + 0x48]
call fcn.1400e4970
mov qword [rsp + 0x48], rax
mov rcx, rax
mov rdi, qword [rsp + 0x40]
mov rdx, rdi
call fcn.1400e4f00
mov rsi, rax
mov rcx, rdi
test rdi, rdi
mov rdi, r13
je 0x1400e1783
cmp dword [rcx + 8], 8
jl 0x1400e1886
call fcn.1400a1350
test r12d, r12d
jg 0x1400e1788
jmp 0x1400e1796
mov rsi, qword [rsp + 0x40]
mov rdi, r13
test r12d, r12d
jle 0x1400e1796
mov rcx, rsi
mov edx, r12d
call fcn.1400e5040
mov rsi, rax
mov r13, qword [rsp + 0x48]
test r14d, r14d
jle 0x1400e17b2
mov rcx, qword [rsp + 0x30]
mov edx, r14d
call fcn.1400e4970
mov qword [rsp + 0x30], rax
test ebp, ebp
jle 0x1400e17c7
mov rcx, qword [rsp + 0x30]
mov edx, ebp
call fcn.1400e5040
mov qword [rsp + 0x30], rax
test r15d, r15d
jle 0x1400e17da
mov rcx, r13
mov edx, r15d
call fcn.1400e5040
mov r13, rax
mov qword [rsp + 0x40], rsi
mov rcx, rsi
mov rsi, qword [rsp + 0x30]
mov rdx, rsi
call fcn.1400e52b0
mov r14, rax
mov r8d, dword [rax + 0x10]
mov dword [rax + 0x10], 0
movsxd rbp, dword [rax + 0x14]
mov rax, r13
mov qword [rsp + 0x48], r13
movsxd r9, dword [r13 + 0x14]
mov r12d, ebp
sub r12d, r9d
mov eax, r12d
mov r13, qword [rsp + 0x88]
jne 0x1400e18f4
lea rax, [r14 + 0x18]
lea rcx, [r14 + r9*4]
add rcx, 0x18
mov rdx, qword [rsp + 0x48]
lea rdi, [rdx + r9*4]
add rdi, 0x14
nop dword [rax]
mov edx, dword [rdi]
cmp dword [rcx - 4], edx
jne 0x1400e18de
add rcx, 0xfffffffffffffffc
add rdi, 0xfffffffffffffffc
cmp rcx, rax
ja 0x1400e1840
xor eax, eax
jmp 0x1400e18ea
mov edi, 0x7ff00000
cmp ecx, 0x33
mov r14, qword [rsp + 0x80]
jg 0x1400e16fb
mov esi, 1
mov edi, 1
shl edi, cl
jmp 0x1400e16fb
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e1f44
lea r13, [0x14034d8d0]
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e1f3d
lea rax, [0x14034d8d8]
mov rcx, rax
call fcn.140012f60
mov rcx, r13
lea rdx, [0x14034d8d8]
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
lea rcx, [0x14034d8d8]
jmp 0x1400e1f44
setae al
movzx eax, al
lea eax, [rax + rax]
add eax, 0xffffffff
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x30]
cmp dword [rsp + 0x64], r13d
mov qword [rsp + 0x30], rsi
jle 0x1400e1920
test eax, eax
jg 0x1400e1920
test r8d, r8d
je 0x1400e19d9
jmp 0x1400e27dc
test eax, eax
js 0x1400e19d0
je 0x1400e1b1c
mov dword [rsp + 0x2c], r8d
mov r11d, dword [r14 + rbp*4 + 0x14]
xor eax, eax
cmp r11d, 0x10000
setb al
mov edi, r11d
shl edi, 0x10
cmp r11d, 0xffff
cmova edi, r11d
lea r15, [r14 + rbp*4]
add r15, 0x18
shl eax, 4
lea edx, [rax + 8]
mov ecx, edi
shl ecx, 8
cmp edi, 0xffffff
cmova ecx, edi
cmova edx, eax
mov edi, ecx
shl edi, 4
cmp ecx, 0xfffffff
cmova edi, ecx
lea esi, [rdx + 4]
cmova esi, edx
lea r13, [r14 + rbp*4 + 0x14]
lea rdx, [r14 + 0x18]
lea eax, [rsi + 2]
lea ecx, [rdi*4]
cmp edi, 0x3fffffff
cmova ecx, edi
cmova eax, esi
test ecx, ecx
js 0x1400e1b4e
test ecx, 0x40000000
jne 0x1400e1b4b
mov eax, 0x20
mov dword [rsp + 0xcc], 0
jmp 0x1400e1b8e
test r8d, r8d
jne 0x1400e2872
cmp dword [rsp + 0xe0], 0
mov r12, qword [rsp + 0x68]
jne 0x1400e2aad
mov dword [rsp + 0x2c], r8d
mov eax, dword [rsp + 0xe4]
xor r15d, r15d
test eax, 0xfffff
jne 0x1400e284c
and eax, 0x7ff00000
cmp eax, 0x6b00001
mov rsi, qword [rsp + 0x30]
jb 0x1400e2859
cmp ebp, 1
jg 0x1400e1a2c
mov eax, dword [r14 + 0x18]
test eax, eax
je 0x1400e258f
mov ecx, dword [r14 + 8]
mov eax, dword [r14 + 0xc]
cmp ebp, eax
jl 0x1400e1a49
nop dword [rax + rax]
add ecx, 1
add eax, eax
cmp ebp, eax
jge 0x1400e1a40
call fcn.1400e4520
mov rsi, rax
lea r15, [rax + 0x18]
movsxd rax, dword [r14 + 0x14]
lea rdx, [r14 + rax*4]
add rdx, 0x18
xor ecx, ecx
mov eax, 0x18
nop dword [rax + rax]
mov edi, dword [r14 + rax]
add edi, edi
or edi, ecx
mov dword [rsi + rax], edi
mov ecx, dword [r14 + rax]
shr ecx, 0x1f
lea rdi, [r14 + rax]
add rdi, 4
add rax, 4
cmp rdi, rdx
jb 0x1400e1a70
cmp ecx, 1
sbb ebp, 0
mov dword [rsi + rax], ecx
add ebp, 1
mov dword [rsi + 0x14], ebp
test r14, r14
mov rdi, qword [rsp + 0x58]
je 0x1400e20e2
cmp dword [r14 + 8], 8
jl 0x1400e1ac4
mov rcx, r14
call fcn.1400a1350
jmp 0x1400e20e2
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e2072
lea rbp, [0x14034d8d0]
mov rcx, rbp
call fcn.140076120
test al, al
je 0x1400e206b
lea rax, [0x14034d8d8]
mov rcx, rax
call fcn.140012f60
mov rcx, rbp
lea rdx, [0x14034d8d8]
xor r8d, r8d
mov r9, rbp
call fcn.1400761d0
lea rcx, [0x14034d8d8]
jmp 0x1400e2072
mov eax, dword [rsp + 0xe4]
mov ecx, eax
and ecx, 0xfffff
test r8d, r8d
jne 0x1400e2884
or ecx, dword [rsp + 0xe0]
mov r12, qword [rsp + 0x68]
je 0x1400e213b
jmp 0x1400e28ff
add eax, 1
mov ecx, 0x20
sub ecx, eax
cmp eax, 0xa
mov dword [rsp + 0xcc], ecx
jg 0x1400e1b8e
mov r8d, ntohs
sub r8d, eax
mov ebp, r11d
mov ecx, r8d
shr ebp, cl
xor edi, edi
cmp r13, rdx
jbe 0x1400e1b7d
mov edi, dword [r15 - 8]
add al, 0x15
mov ecx, eax
shl r11d, cl
mov ecx, r8d
shr edi, cl
or edi, r11d
jmp 0x1400e1bdc
xor edi, edi
cmp r13, rdx
jbe 0x1400e1ba0
mov edi, dword [r15 - 8]
add r15, 0xfffffffffffffff8
mov r13, r15
mov r10d, eax
add r10d, 0xfffffff5
je 0x1400e1bd9
mov ecx, r10d
shl r11d, cl
mov r8d, 0x2b
sub r8d, eax
mov ebp, edi
mov ecx, r8d
shr ebp, cl
xor eax, eax
cmp r13, rdx
jbe 0x1400e1bca
mov eax, dword [r13 - 4]
or r11d, ebp
mov ecx, r10d
shl edi, cl
mov ecx, r8d
shr eax, cl
or edi, eax
mov ebp, r11d
or ebp, 0x3ff00000
mov dword [rsp + 0x94], ebp
mov r15d, edi
mov rax, qword [rsp + 0x48]
mov rsi, rax
mov r11d, dword [rax + r9*4 + 0x14]
xor eax, eax
cmp r11d, 0x10000
setb al
mov ebp, r11d
shl ebp, 0x10
cmp r11d, 0xffff
cmova ebp, r11d
lea r10, [rsi + 0x18]
shl eax, 4
lea edx, [rax + 8]
mov ecx, ebp
shl ecx, 8
cmp ebp, 0xffffff
cmova ecx, ebp
cmova edx, eax
mov edi, ecx
shl edi, 4
cmp ecx, 0xfffffff
cmova edi, ecx
lea ebp, [rdx + 4]
cmova ebp, edx
lea r8, [rsi + r9*4 + 0x18]
lea r13, [rsi + r9*4]
add r13, 0x14
lea eax, [rbp + 2]
lea ecx, [rdi*4]
cmp edi, 0x3fffffff
cmova ecx, edi
cmova eax, ebp
test ecx, ecx
js 0x1400e1c8c
test ecx, 0x40000000
mov rsi, r10
mov r9, r15
jne 0x1400e1c94
mov eax, 0x20
xor r15d, r15d
mov r10d, dword [rsp + 0x94]
jmp 0x1400e1cd6
mov r9, r15
mov rsi, r10
jmp 0x1400e1c97
add eax, 1
mov r10d, dword [rsp + 0x94]
mov r15d, 0x20
sub r15d, eax
cmp eax, 0xa
jg 0x1400e1cd6
mov edx, ntohs
sub edx, eax
mov ebp, r11d
mov ecx, edx
shr ebp, cl
xor edi, edi
cmp r13, rsi
jbe 0x1400e1cc6
mov edi, dword [r8 - 8]
add al, 0x15
mov ecx, eax
shl r11d, cl
mov ecx, edx
shr edi, cl
or edi, r11d
jmp 0x1400e1d20
xor edi, edi
cmp r13, rsi
jbe 0x1400e1ce8
mov edi, dword [r8 - 8]
add r8, 0xfffffffffffffff8
mov r13, r8
mov edx, eax
add edx, 0xfffffff5
je 0x1400e1d1d
mov ecx, edx
shl r11d, cl
mov r8d, 0x2b
sub r8d, eax
mov ebp, edi
mov ecx, r8d
shr ebp, cl
xor eax, eax
cmp r13, rsi
jbe 0x1400e1d0f
mov eax, dword [r13 - 4]
or r11d, ebp
mov ecx, edx
shl edi, cl
mov ecx, r8d
shr eax, cl
or edi, eax
mov ebp, r11d
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x88]
lea r13, [0x14034d8d0]
mov eax, dword [rsp + 0xcc]
sub eax, r15d
or ebp, 0x3ff00000
shl r12d, 5
add r12d, eax
mov eax, r12d
shl eax, 0x14
mov ecx, ebp
sub ecx, eax
add eax, r10d
test r12d, r12d
cmovle eax, r10d
mov edx, edi
cmovg ecx, ebp
shl rax, 0x20
or rax, r9
shl rcx, 0x20
or rcx, rdx
movq xmm0, rcx
movq xmm2, rax
divsd xmm2, xmm0
ucomisd xmm6, xmm2
jae 0x1400e1dd7
mulsd xmm2, xmm14
mov r8d, dword [rsp + 0x2c]
test r8d, r8d
mov r12, rsi
movapd xmm1, xmm2
jne 0x1400e1da1
xorpd xmm1, xmm8
mov rsi, qword [rsp + 0x30]
fnstcw word [rsp + 0xa0]
mov eax, dword [rsp + 0xa0]
mov ecx, eax
shr ecx, 9
and ecx, 2
shr eax, 0xb
and eax, 1
lea eax, [rax + rcx]
add eax, 1
test al, 3
jne 0x1400e1dd1
addsd xmm1, xmm14
movapd xmm0, xmm2
jmp 0x1400e1df5
movapd xmm0, xmm7
movapd xmm1, xmm7
mov r8d, dword [rsp + 0x2c]
test r8d, r8d
mov r12, rsi
mov rsi, qword [rsp + 0x30]
je 0x1400e2504
mov ecx, dword [rsp + 0xe4]
mov eax, ecx
and eax, 0x7ff00000
cmp eax, 0x7fe00000
jne 0x1400e1e93
mov rbp, qword [rsp + 0xe0]
add ecx, 0xfcb00000
mov dword [rsp + 0xe4], ecx
and ecx, 0x7ff00000
add ecx, 0xfcc00000
shl rcx, 0x20
movq xmm2, rcx
mulsd xmm1, xmm2
addsd xmm1, qword [rsp + 0xe0]
movsd qword [rsp + 0xe0], xmm1
movq rcx, xmm1
mov rdx, rcx
shr rdx, 0x20
mov edi, edx
and edi, 0x7fe00000
cmp edi, 0x7ca00000
jb 0x1400e1fcf
movabs rax, 0x7fefffffffffffff
cmp rbp, rax
mov rdi, qword [rsp + 0x58]
je 0x1400e292a
mov qword [rsp + 0xe0], rax
jmp 0x1400e2197
cmp dword [rsp + 0x70], 0
je 0x1400e1fde
cmp eax, 0x6a00000
ja 0x1400e1fde
ucomisd xmm12, xmm0
mov rdi, qword [rsp + 0x58]
jb 0x1400e1eda
cvttsd2si rcx, xmm0
test ecx, ecx
mov edx, 1
cmove ecx, edx
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
movapd xmm1, xmm0
test r8d, r8d
jne 0x1400e1eda
xorpd xmm1, xmm8
mov ecx, 0x6b00000
sub ecx, eax
movq rdx, xmm1
mov ebp, edx
shr rdx, 0x20
add edx, ecx
shl rdx, 0x20
or rbp, rdx
movq xmm2, rbp
lea ecx, [rax - 0x3400000]
shl rcx, 0x20
movq xmm1, rcx
mulsd xmm1, xmm2
addsd xmm1, qword [rsp + 0xe0]
movsd qword [rsp + 0xe0], xmm1
ucomisd xmm1, xmm13
jne 0x1400e1f2c
jnp 0x1400e2934
movq rcx, xmm1
mov rdx, rcx
shr rdx, 0x20
jmp 0x1400e2014
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
mov rdx, qword [rsp + 0x40]
movsxd rax, dword [rdx + 8]
lea rcx, [0x14034d890]
mov r8, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rdx], rcx
mov qword [r8 + rax*8], rdx
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e1fbb
lea r13, [0x14034d8d0]
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e1fb4
lea rax, [0x14034d8d8]
mov rcx, rax
call fcn.140012f60
mov rcx, r13
lea rdx, [0x14034d8d8]
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
lea rcx, [0x14034d8d8]
jmp 0x1400e1fbb
mov rcx, qword [0x14034d8d0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r12d, r12d
jg 0x1400e1788
jmp 0x1400e1796
add edx, 0x3500000
mov dword [rsp + 0xe4], edx
jmp 0x1400e200f
lea ecx, [rax - 0x3400000]
shl rcx, 0x20
movq xmm2, rcx
mulsd xmm1, xmm2
addsd xmm1, qword [rsp + 0xe0]
movsd qword [rsp + 0xe0], xmm1
movq rcx, xmm1
mov rdx, rcx
shr rdx, 0x20
mov rdi, qword [rsp + 0x58]
mov ebp, edx
and ebp, 0x7ff00000
cmp eax, ebp
setne al
or al, byte [rsp + 0x7f]
jne 0x1400e2197
cvttsd2si eax, xmm0
xorps xmm1, xmm1
cvtsi2sd xmm1, eax
subsd xmm0, xmm1
test r8d, r8d
jne 0x1400e204d
and edx, 0xfffff
or edx, ecx
je 0x1400e2584
xor r15d, r15d
ucomisd xmm10, xmm0
ja 0x1400e2abd
ucomisd xmm0, xmm11
jbe 0x1400e2197
jmp 0x1400e2abd
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
movsxd rax, dword [r14 + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [r14], rcx
mov qword [rdx + rax*8], r14
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e20dc
lea rbp, [0x14034d8d0]
mov rcx, rbp
call fcn.140076120
test al, al
je 0x1400e20d5
lea r14, [0x14034d8d8]
mov rcx, r14
call fcn.140012f60
mov rcx, rbp
mov rdx, r14
xor r8d, r8d
mov r9, rbp
call fcn.1400761d0
mov rcx, r14
jmp 0x1400e20dc
mov rcx, qword [0x14034d8d0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov eax, dword [rsi + 0x14]
mov rdx, qword [rsp + 0x48]
movsxd rcx, dword [rdx + 0x14]
sub eax, ecx
je 0x1400e20fb
test eax, eax
jg 0x1400e2133
jmp 0x1400e25ab
lea rax, [rsi + rcx*4]
add rax, 0x18
lea rcx, [rdx + rcx*4]
add rcx, 0x14
nop dword [rax + rax]
mov edx, dword [rax - 4]
mov ebp, dword [rcx]
cmp edx, ebp
jne 0x1400e212b
add rax, 0xfffffffffffffffc
add rcx, 0xfffffffffffffffc
cmp rax, r15
ja 0x1400e2110
jmp 0x1400e25ab
cmp edx, ebp
jb 0x1400e25ab
mov r14, rsi
mov r8d, dword [rsp + 0x2c]
cmp dword [rsp + 0x70], 0
mov ecx, 0x7ff00000
je 0x1400e215b
mov eax, dword [rsp + 0xe4]
and eax, ecx
cmp eax, 0x6b00000
jbe 0x1400e281f
mov eax, dword [rsp + 0xe4]
and eax, ecx
add eax, 0xfff00000
or eax, 0xfffff
mov dword [rsp + 0xe4], eax
mov dword [rsp + 0xe0], 0xffffffff
cmp dword [rsp + 0x64], r13d
jle 0x1400e2a18
mov rsi, qword [rsp + 0x30]
lea r13, [0x14034d8d0]
mov rcx, qword [rsp + 0x40]
test rcx, rcx
lea r15, [rsp + 0xe0]
je 0x1400e21b4
cmp dword [rcx + 8], 8
jl 0x1400e21d0
call fcn.1400a1350
test rsi, rsi
je 0x1400e2355
cmp dword [rsi + 8], 8
jl 0x1400e2211
mov rcx, rsi
call fcn.1400a1350
jmp 0x1400e2355
mov rbp, rsi
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e225e
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e2257
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
mov rcx, r13
mov rdx, rsi
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
mov rcx, rsi
jmp 0x1400e225e
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e22d4
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e22cd
lea rbp, [0x14034d8d8]
mov rcx, rbp
call fcn.140012f60
mov rcx, r13
mov rdx, rbp
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
mov rcx, rbp
jmp 0x1400e22d4
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
mov rax, qword [rsp + 0x40]
mov rsi, rax
movsxd rax, dword [rax + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rsi], rcx
mov qword [rdx + rax*8], rsi
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
mov rsi, rbp
ja 0x1400e2337
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e2330
lea rbp, [0x14034d8d8]
mov rcx, rbp
call fcn.140012f60
mov rcx, r13
mov rdx, rbp
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
mov rcx, rbp
jmp 0x1400e2337
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
movsxd rax, dword [rsi + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rsi], rcx
mov qword [rdx + rax*8], rsi
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e234f
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e2348
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
mov rcx, r13
mov rdx, rsi
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
mov rcx, rsi
jmp 0x1400e234f
mov rcx, qword [0x14034d8d0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test rsi, rsi
jne 0x1400e21bd
jmp 0x1400e2355
mov rcx, qword [0x14034d8d0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rsi, qword [rsp + 0x48]
test rsi, rsi
je 0x1400e236d
cmp dword [rsi + 8], 8
jl 0x1400e23ca
mov rcx, rsi
call fcn.1400a1350
test r14, r14
je 0x1400e1530
cmp dword [r14 + 8], 8
jge 0x1400e1521
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e248d
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e2486
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
mov rcx, r13
mov rdx, rsi
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
mov rcx, rsi
jmp 0x1400e248d
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e240f
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e2408
lea rbp, [0x14034d8d8]
mov rcx, rbp
call fcn.140012f60
mov rcx, r13
mov rdx, rbp
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
mov rcx, rbp
jmp 0x1400e240f
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
movsxd rax, dword [rsi + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rsi], rcx
mov qword [rdx + rax*8], rsi
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e2472
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e246b
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
mov rcx, r13
mov rdx, rsi
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
mov rcx, rsi
jmp 0x1400e2472
mov rcx, qword [0x14034d8d0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r14, r14
je 0x1400e1530
jmp 0x1400e2376
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
movsxd rax, dword [r14 + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [r14], rcx
mov qword [rdx + rax*8], r14
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e24f9
mov rcx, r13
call fcn.140076120
test al, al
je 0x1400e24f2
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
mov rcx, r13
mov rdx, rsi
xor r8d, r8d
mov r9, r13
call fcn.1400761d0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400e1530
mov rcx, qword [0x14034d8d0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400e1530
mov eax, dword [rsp + 0xe0]
cmp eax, 1
je 0x1400e2568
movapd xmm0, xmm7
movapd xmm1, xmm15
test eax, eax
jne 0x1400e1df5
test dword [rsp + 0xe4], 0xfffff
movapd xmm0, xmm7
movapd xmm1, xmm15
jne 0x1400e1df5
movapd xmm0, xmm2
mulsd xmm0, xmm14
cmpltsd xmm2, xmm7
movapd xmm1, xmm2
andpd xmm1, xmm14
andnpd xmm2, xmm0
orpd xmm2, xmm1
movapd xmm1, xmm2
xorpd xmm1, xmm8
jmp 0x1400e1dd1
cmp dword [rsp + 0xe4], 0
movapd xmm0, xmm7
movapd xmm1, xmm15
jne 0x1400e1df5
jmp 0x1400e431d
ucomisd xmm9, xmm0
jbe 0x1400e2197
mov dword [rsp + 0x2c], 0
xor r15d, r15d
cmp qword [rsp + 0x40], 0
jne 0x1400e2ac9
jmp 0x1400e2c98
xor r15d, r15d
mov r14, rsi
mov rsi, qword [rsp + 0x30]
cmp qword [rsp + 0x40], 0
jne 0x1400e2ac9
jmp 0x1400e2c98
xor r9d, r9d
xor esi, esi
cmp r13d, r9d
jle 0x1400e10ae
jmp 0x1400e2694
mov esi, eax
not esi
cmp r8d, esi
cmovge esi, r8d
mov ebx, esi
not ebx
movsxd rbp, ebx
not sil
movzx ebx, sil
and ebx, 3
sub rbp, rbx
xor ebx, ebx
xor esi, esi
nop dword [rax]
lea eax, [rsi + rsi*4]
movsx esi, byte [r14 + rbx]
lea eax, [rsi + rax*2]
lea eax, [rax + rax*4]
movsx esi, byte [r14 + rbx + 1]
lea eax, [rsi + rax*2]
lea eax, [rax + rax*4]
movsx esi, byte [r14 + rbx + 2]
lea eax, [rsi + rax*2]
lea eax, [rax + rax*4]
movsx esi, byte [r14 + rbx + 3]
lea esi, [rsi + rax*2]
add esi, 0xffff2fb0
add rbx, 4
cmp rbp, rbx
jne 0x1400e2600
test dil, 3
je 0x1400e2686
add rbx, r14
mov rax, qword [rsp + 0x98]
mov ebp, eax
not ebp
cmp r8d, ebp
cmovg ebp, r8d
not bpl
movzx ebp, bpl
and ebp, 3
xor edi, edi
nop word cs:[rax + rax]
lea esi, [rsi + rsi*4]
movsx eax, byte [rbx + rdi]
lea esi, [rax + rsi*2]
add esi, 0xffffffd0
add rdi, 1
cmp rbp, rdi
jne 0x1400e2670
mov rdi, qword [rsp + 0x58]
cmp r13d, r9d
jle 0x1400e10ae
movsxd r8, dword [rsp + 0x78]
mov ebx, r9d
neg ebx
sub ebx, ecx
lea eax, [rbx - 1]
add ebx, 0x12
test al, 3
je 0x1400e26e3
lea rdi, [r14 + r8]
sub dl, r9b
movzx edx, dl
and edx, 3
neg edx
xor ebp, ebp
nop dword [rax + rax]
lea eax, [rsi + rsi*4]
movsx esi, byte [rdi]
lea esi, [rsi + rax*2]
add esi, 0xffffffd0
add rdi, 1
add rbp, 0xffffffffffffffff
cmp edx, ebp
jne 0x1400e26c0
sub r8, rbp
sub r9d, ebp
mov rdi, qword [rsp + 0x58]
cmp ebx, 3
jb 0x1400e10ae
lea rdx, [r14 + r8]
add rdx, 3
neg r9d
sub r9d, ecx
add r9d, 0x13
xor ecx, ecx
lea eax, [rsi + rsi*4]
movsx ebp, byte [rdx + rcx - 3]
lea eax, [rbp + rax*2]
lea eax, [rax + rax*4]
movsx ebp, byte [rdx + rcx - 2]
lea eax, [rbp + rax*2]
lea eax, [rax + rax*4]
movsx ebp, byte [rdx + rcx - 1]
lea eax, [rbp + rax*2]
lea eax, [rax + rax*4]
movsx ebp, byte [rdx + rcx]
lea esi, [rbp + rax*2 - 0xd050]
add rcx, 4
cmp r9d, ecx
jne 0x1400e2700
jmp 0x1400e10ae
mov rbx, qword [rsp + 0x50]
movsx eax, byte [rbx + 1]
lea edx, [rax - 0x41]
lea ebp, [rax + 0x20]
cmp dl, 0x1a
cmovae ebp, eax
cmp ebp, 0x61
jne case.0x1400e0c77.74
movsx eax, byte [rbx + 2]
lea edx, [rax - 0x41]
lea ebp, [rax + 0x20]
cmp dl, 0x1a
cmovae ebp, eax
cmp ebp, 0x6e
jne case.0x1400e0c77.74
mov rdx, qword [rsp + 0x50]
lea r8, [rdx + 3]
movabs rax, 0x7ff8000000000000
mov qword [rsp + 0xe0], rax
cmp byte [rdx + 3], 0x28
jne 0x1400e2913
add rdx, 2
movzx eax, byte [rdx + 2]
add al, 0xff
add rdx, 1
cmp al, 0x20
jb 0x1400e27a0
mov bl, byte [rdx + 1]
cmp bl, 0x30
mov qword [rsp + 0x68], r12
jne 0x1400e2948
lea rax, [rdx + 2]
mov cl, byte [rax]
or cl, 0x20
cmp cl, 0x78
jne 0x1400e4349
mov bl, byte [rdx + 3]
mov rcx, rax
jmp 0x1400e294b
mov dword [rsp + 0x2c], r8d
mov r15b, 1
jmp 0x1400e287a
mov eax, reloc.WS2_32.dll_ntohs
sub eax, edi
sub ebx, eax
cdqe
lea rcx, [0x1401e3bd0]
mulsd xmm0, qword [rcx + rax*8]
movsxd rax, ebx
mulsd xmm0, qword [rcx + rax*8]
movsd qword [rsp + 0xe0], xmm0
test r12, r12
jne 0x1400e0bbb
jmp 0x1400e0bc4
mov dword [rsp + 0x2c], r8d
xor r15d, r15d
cmp dword [rsp + 0x64], r13d
jg 0x1400e25b1
cmp eax, 0x3700000
mov rsi, qword [rsp + 0x30]
ja 0x1400e2abd
mov r15d, dword [rsp + 0x3c]
jmp 0x1400e3e0f
mov dword [rsp + 0x2c], 0
jmp 0x1400e25b1
mov dword [rsp + 0x2c], 0
cmp qword [rsp + 0x40], 0
jne 0x1400e2ac9
jmp 0x1400e2c98
mov dword [rsp + 0x2c], r8d
xor r15d, r15d
mov r12, qword [rsp + 0x68]
jmp 0x1400e25b1
cmp ecx, 0xfffff
mov r12, qword [rsp + 0x68]
jne 0x1400e2926
mov ebp, 0xffffffff
mov edx, dword [rsp + 0xe0]
cmp dword [rsp + 0x70], 0
je 0x1400e28c7
mov edi, eax
and edi, 0x7ff00000
cmp edi, 0x6a00000
ja 0x1400e28c7
shr edi, 0x14
mov cl, 0x6b
sub cl, dil
mov ebp, 0xffffffff
shl ebp, cl
cmp edx, ebp
jne 0x1400e2964
cmp eax, 0x7fefffff
mov rdi, qword [rsp + 0x58]
jne 0x1400e2a91
cmp edx, 0xffffffff
jne 0x1400e2a91
mov r15d, dword [rsp + 0x3c]
lea rcx, [rsp + 0xe0]
mov rsi, qword [rsp + 0x30]
jmp 0x1400e3e75
mov cl, 1
jmp 0x1400e296b
shr ebp, cl
shl ebp, cl
mov dword [rsp + 0xe0], ebp
jmp 0x1400e2a4e
mov qword [rsp + 0x50], r8
test r12, r12
jne 0x1400e0bbb
jmp 0x1400e0bc4
xor ecx, ecx
jmp 0x1400e296b
mov r15d, dword [rsp + 0x3c]
jmp 0x1400e3e6d
mov r15b, 1
cmp qword [rsp + 0x40], 0
jne 0x1400e2ac9
jmp 0x1400e2c98
mov rcx, rdx
mov r12d, r15d
test bl, bl
jne 0x1400e4351
xor r15d, r15d
mov rcx, r8
xor r13d, r13d
jmp 0x1400e43d7
xor ecx, ecx
mov rdi, qword [rsp + 0x58]
mov edx, dword [rsp + 0x2c]
test edx, edx
je 0x1400e2a04
test eax, edx
je 0x1400e2a18
mov edx, eax
and edx, 0x7ff00000
add edx, 0xfcc00000
shl rdx, 0x20
movq xmm0, rdx
cmp dword [rsp + 0x70], 0
je 0x1400e29c4
shr eax, 0x14
and eax, 0x7ff
mov edx, WSAGetLastError
sub edx, eax
jle 0x1400e29c4
shl edx, 0x14
add edx, 0x3ff00000
shl rdx, 0x20
movq xmm1, rdx
mulsd xmm0, xmm1
movsd xmm1, qword [rsp + 0xe0]
test cl, cl
je 0x1400e2a22
subsd xmm1, xmm0
movsd qword [rsp + 0xe0], xmm1
xorpd xmm0, xmm0
ucomisd xmm1, xmm0
jne 0x1400e2a2f
jp 0x1400e2a2f
cmp dword [rsp + 0x64], r13d
jg 0x1400e2aad
mov r15d, dword [rsp + 0x3c]
mov rsi, qword [rsp + 0x30]
jmp 0x1400e3e0f
mov edx, dword [rsp + 0x94]
test dword [rsp + 0xe0], edx
jne 0x1400e297f
mov dword [rsp + 0x2c], r8d
jmp 0x1400e2ab5
addsd xmm0, xmm1
movsd qword [rsp + 0xe0], xmm0
mov eax, 1
sub eax, r8d
xor r15d, r15d
mov dword [rsp + 0x2c], eax
jmp 0x1400e25b1
shr eax, cl
shl eax, cl
mov dword [rsp + 0xe4], eax
movsd xmm0, qword [rsp + 0xe0]
xorpd xmm1, xmm1
ucomisd xmm0, xmm1
jne 0x1400e2a63
jnp 0x1400e2a77
shl r8d, 0x17
sar r8d, 0x1f
and r8d, 0x6a
mov eax, r8d
jmp 0x1400e0fae
xor eax, eax
mov qword [rsp + 0x40], rax
xor esi, esi
xor ebx, ebx
xor eax, eax
mov qword [rsp + 0x48], rax
xor r14d, r14d
jmp 0x1400e3e0f
and eax, 0x7ff00000
add eax, 0x100000
mov dword [rsp + 0xe4], eax
mov dword [rsp + 0xe0], 0
mov dword [rsp + 0x2c], 0
xor r15d, r15d
mov rsi, qword [rsp + 0x30]
cmp qword [rsp + 0x40], 0
je 0x1400e2c98
mov rcx, qword [rsp + 0x40]
cmp dword [rcx + 8], 8
jl 0x1400e2b01
call fcn.1400a1350
test rsi, rsi
je 0x1400e2ca1
cmp dword [rsi + 8], 8
jl 0x1400e2b48
mov rcx, rsi
call fcn.1400a1350
cmp qword [rsp + 0x48], 0
jne 0x1400e2cca
jmp 0x1400e2e82
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e2b9d
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e2b96
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e2b9d
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e2c19
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e2c12
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e2c19
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
mov rax, qword [rsp + 0x40]
mov rbp, rax
movsxd rax, dword [rax + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rbp], rcx
mov qword [rdx + rax*8], rbp
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e2c8a
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e2c83
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e2c8a
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
mov rdx, qword [rsp + 0x30]
movsxd rax, dword [rdx + 8]
lea rcx, [0x14034d890]
mov rbp, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rdx], rcx
mov qword [rbp + rax*8], rdx
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e2cb5
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e2cae
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e2cb5
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rsi, qword [rsp + 0x30]
test rsi, rsi
jne 0x1400e2ae2
cmp qword [rsp + 0x48], 0
jne 0x1400e2cca
jmp 0x1400e2e82
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [rsp + 0x48], 0
je 0x1400e2e82
mov rcx, qword [rsp + 0x48]
cmp dword [rcx + 8], 8
jl 0x1400e2cf6
call fcn.1400a1350
test rbx, rbx
je 0x1400e2e9d
cmp dword [rbx + 8], 8
jl 0x1400e2d3d
mov rcx, rbx
call fcn.1400a1350
jmp 0x1400e2e9d
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e2d92
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e2d8b
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e2d92
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e2e0e
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e2e07
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e2e0e
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
mov rax, qword [rsp + 0x48]
mov rdx, rax
movsxd rax, dword [rax + 8]
lea rcx, [0x14034d890]
mov rbp, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rdx], rcx
mov qword [rbp + rax*8], rdx
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e2e79
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e2e72
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e2e79
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
movsxd rax, dword [rbx + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rbx], rcx
mov qword [rdx + rax*8], rbx
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e2e94
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e2e8d
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e2e94
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test rbx, rbx
jne 0x1400e2ce3
jmp 0x1400e2e9d
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r14, r14
mov rbx, qword [rsp + 0xc0]
je 0x1400e2f80
cmp dword [r14 + 8], 8
jl 0x1400e2ec2
mov rcx, r14
call fcn.1400a1350
jmp 0x1400e2f80
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e2f0c
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e2f05
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e2f0c
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
movsxd rax, dword [r14 + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [r14], rcx
mov qword [rdx + rax*8], r14
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e2f77
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e2f70
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e2f77
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r15b, r15b
mov r15d, dword [rsp + 0x3c]
je 0x1400e3e25
lea ebx, [rbx + rdi]
movsd xmm0, qword [rsp + 0xe0]
xorpd xmm1, xmm1
ucomisd xmm0, xmm1
jne 0x1400e2ff1
jp 0x1400e2ff1
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e306e
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e3067
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e306e
lea rcx, [rsp + 0xe0]
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0xf4]
call fcn.1400e45f0
mov ecx, dword [rsp + 0xf0]
mov rbp, qword [rsp + 0x70]
mov edx, ebp
neg edx
lea edx, [rcx + rdx]
add edx, 0x432
mov edi, ecx
sub edi, ebp
mov dword [rsp + 0xf0], edi
mov esi, 0x35
sub esi, dword [rsp + 0xf4]
cmp esi, edx
cmovg esi, edx
add esi, 1
mov rcx, rax
mov edx, esi
call fcn.1400e5040
mov r12, rax
or byte [rax + 0x18], 1
mov dword [rsp + 0x80], 0
jmp 0x1400e317d
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
mov r12, qword [0x14034d898]
test r12, r12
je 0x1400e308f
mov rax, qword [r12]
mov qword [0x14034d898], rax
jmp 0x1400e30d7
mov r12, qword [0x140324960]
mov rax, r12
lea rcx, [0x14034d8f0]
sub rax, rcx
cmp rax, 0x8df
jg 0x1400e30bb
mov rax, r12
add rax, 0x28
mov qword [0x140324960], rax
jmp 0x1400e30c8
mov ecx, 0x28
call fcn.1400a12f0
mov r12, rax
movabs rax, 0x200000001
mov qword [r12 + 8], rax
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e3121
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e311a
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e3121
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
movabs rax, 0x100000000
mov qword [r12 + 0x10], rax
mov dword [r12 + 0x18], 1
mov dword [rsp + 0xf4], 1
mov dword [rsp + 0xe4], 0x3700000
mov dword [rsp + 0xf0], 0xfffffbcd
mov dword [rsp + 0x80], 1
mov dword [rsp + 0x2c], 0
mov edi, 0xfffffbcd
xor esi, esi
mov r15d, 1
sub r15d, ebx
add edi, r15d
sub edi, esi
mov dword [rsp + 0xf0], edi
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
mov rdi, qword [rsp + 0x58]
ja 0x1400e31e1
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e31da
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e31e1
mov rsi, qword [0x14034d8d0]
mov ebp, ebx
mov rcx, rsi
call fcn.14008ae30
mov r13, qword [0x14034d898]
test r13, r13
je 0x1400e320c
mov rax, qword [r13]
mov qword [0x14034d898], rax
mov rcx, qword [rsp + 0xc0]
jmp 0x1400e325b
mov r13, qword [0x140324960]
mov rax, r13
lea rcx, [0x14034d8f0]
sub rax, rcx
cmp rax, 0x8df
jg 0x1400e3238
mov rax, r13
add rax, 0x28
mov qword [0x140324960], rax
jmp 0x1400e3245
mov ecx, 0x28
call fcn.1400a12f0
mov r13, rax
mov rcx, qword [rsp + 0xc0]
movabs rax, 0x200000001
mov qword [r13 + 8], rax
lea ebx, [rcx + rdi]
add ebx, 0xffffffff
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e32ab
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e32a4
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e32ab
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
movabs rax, 0x100000000
mov qword [r13 + 0x10], rax
mov dword [r13 + 0x18], 1
test ebx, ebx
jle 0x1400e32dd
mov rcx, r13
mov edx, ebx
call fcn.1400e4970
mov r13, rax
jmp 0x1400e32ef
test ebp, ebp
jg 0x1400e32ef
mov rcx, r12
mov edx, r15d
call fcn.1400e4970
mov r12, rax
mov eax, dword [rsp + 0xf0]
mov r15d, eax
neg r15d
xor edx, edx
test eax, eax
cmovg r15d, edx
cmovns edx, eax
movsxd rax, dword [r13 + 0x14]
mov eax, dword [r13 + rax*4 + 0x14]
xor ecx, ecx
cmp eax, 0x10000
setb cl
mov ebp, eax
shl ebp, 0x10
cmp eax, 0xffff
cmova ebp, eax
shl ecx, 4
lea ebx, [rcx + 8]
mov eax, ebp
shl eax, 8
cmp ebp, 0xffffff
cmova eax, ebp
cmova ebx, ecx
mov ecx, eax
shl ecx, 4
cmp eax, 0xfffffff
cmova ecx, eax
lea esi, [rbx + 4]
cmova esi, ebx
lea eax, [rsi + 2]
lea ebp, [rcx*4]
cmp ecx, 0x3fffffff
cmova ebp, ecx
cmova eax, esi
test ebp, ebp
mov edi, dword [rsp + 0x78]
js 0x1400e337f
mov ecx, 0x20
test ebp, 0x40000000
je 0x1400e3381
add eax, 1
mov ecx, eax
xor eax, eax
test r15d, r15d
cmovns eax, r15d
mov esi, 0x1c
sub esi, eax
add esi, ecx
and esi, 0x1f
add edx, esi
jle 0x1400e33a5
mov rcx, r12
call fcn.1400e5040
mov r12, rax
add esi, r15d
jle 0x1400e33b7
mov rcx, r13
mov edx, esi
call fcn.1400e5040
mov r13, rax
mov rsi, qword [rsp + 0x30]
mov rcx, r12
mov rdx, r13
call fcn.1400e8300
test eax, eax
jne 0x1400e3537
movsxd rbp, dword [r12 + 0x14]
xor eax, eax
xor ebx, ebx
nop dword [rax + rax]
mov ecx, dword [r12 + rax*4 + 0x18]
lea rcx, [rcx + rcx*4]
lea rbx, [rbx + rcx*2]
mov dword [r12 + rax*4 + 0x18], ebx
shr rbx, 0x20
add rax, 1
cmp eax, ebp
jl 0x1400e33e0
test rbx, rbx
je 0x1400e352c
cmp ebp, dword [r12 + 0xc]
jge 0x1400e3416
mov rsi, r12
jmp 0x1400e351a
mov ecx, dword [r12 + 8]
add ecx, 1
call fcn.1400e4520
mov rsi, rax
lea rcx, [rax + 0x10]
lea rdx, [r12 + 0x10]
movsxd rax, dword [r12 + 0x14]
lea r8, [rax*4 + 8]
call fcn.140193590
cmp dword [r12 + 8], 8
jl 0x1400e3456
mov rcx, r12
call fcn.1400a1350
jmp 0x1400e351a
mov r15, qword [0x14034d8d0]
cmp r15, 1
ja 0x1400e34a0
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e3499
lea r15, [0x14034d8d8]
mov rcx, r15
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, r15
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e34a0
mov r15, qword [0x14034d8d0]
mov rcx, r15
call fcn.14008ae30
movsxd rax, dword [r12 + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [r12], rcx
mov qword [rdx + rax*8], r12
mov r15, qword [0x14034d8d0]
cmp r15, 1
ja 0x1400e350d
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e3506
lea r15, [0x14034d8d8]
mov rcx, r15
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, r15
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e350d
mov r15, qword [0x14034d8d0]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov edi, dword [rsp + 0x78]
lea eax, [rbp + 1]
mov dword [rsi + rbp*4 + 0x18], ebx
mov dword [rsi + 0x14], eax
mov r12, rsi
mov rsi, qword [rsp + 0x30]
mov rcx, r12
mov rdx, r13
call fcn.1400e8300
mov rcx, qword [rsp + 0x98]
test ecx, ecx
mov qword [rsp + 0x88], r13
jle 0x1400e37a9
movsxd rcx, ecx
mov qword [rsp + 0x58], rcx
xor ebp, ebp
nop dword [rax]
mov ecx, 0xffffffd0
sub ecx, eax
mov rax, qword [rsp + 0xb8]
movsx r13d, byte [rax + rbp]
add r13d, ecx
jne 0x1400e3a2d
add rbp, 1
mov ebx, dword [r12 + 0x14]
mov eax, dword [r12 + 0x18]
test rax, rax
jne 0x1400e3599
cmp ebx, 1
je 0x1400e3a47
movsxd r13, ebx
add rax, rax
lea r15, [rax + rax*4]
mov dword [r12 + 0x18], r15d
shr r15, 0x20
cmp ebx, 2
jl 0x1400e365b
lea rax, [r12 + 0x1c]
lea ecx, [rbx - 1]
lea edx, [rbx - 2]
and ecx, 3
cmp edx, 3
jb 0x1400e3625
lea edx, [rcx + 1]
sub edx, ebx
nop dword [rax]
mov edi, dword [rax]
mov esi, dword [rax + 4]
lea rdi, [rdi + rdi*4]
lea rdi, [r15 + rdi*2]
mov dword [rax], edi
shr rdi, 0x20
lea rsi, [rsi + rsi*4]
lea rdi, [rdi + rsi*2]
mov dword [rax + 4], edi
shr rdi, 0x20
mov esi, dword [rax + 8]
lea rsi, [rsi + rsi*4]
lea rdi, [rdi + rsi*2]
mov dword [rax + 8], edi
shr rdi, 0x20
mov esi, dword [rax + 0xc]
lea rsi, [rsi + rsi*4]
lea r15, [rdi + rsi*2]
mov dword [rax + 0xc], r15d
shr r15, 0x20
add rax, 0x10
add edx, 4
jne 0x1400e35d0
mov rsi, qword [rsp + 0x30]
test ecx, ecx
je 0x1400e365b
lea ecx, [r13 - 1]
movzx ecx, cl
and ecx, 3
xor edx, edx
nop word cs:[rax + rax]
nop
mov edi, dword [rax + rdx*4]
lea rdi, [rdi + rdi*4]
lea r15, [r15 + rdi*2]
mov dword [rax + rdx*4], r15d
shr r15, 0x20
add rdx, 1
cmp ecx, edx
jne 0x1400e3640
test r15, r15
je 0x1400e3785
cmp ebx, dword [r12 + 0xc]
jge 0x1400e3673
mov rsi, r12
jmp 0x1400e3772
mov ecx, dword [r12 + 8]
add ecx, 1
call fcn.1400e4520
mov rsi, rax
lea rcx, [rax + 0x10]
lea rdx, [r12 + 0x10]
movsxd rax, dword [r12 + 0x14]
lea r8, [rax*4 + 8]
call fcn.140193590
cmp dword [r12 + 8], 8
jl 0x1400e36b3
mov rcx, r12
call fcn.1400a1350
jmp 0x1400e3772
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
lea rdi, [0x14034d8d0]
ja 0x1400e3707
mov rcx, rdi
call fcn.140076120
test al, al
je 0x1400e3700
lea rax, [0x14034d8d8]
mov rcx, rax
call fcn.140012f60
mov rcx, rdi
lea rdx, [0x14034d8d8]
xor r8d, r8d
mov r9, rdi
call fcn.1400761d0
lea rcx, [0x14034d8d8]
jmp 0x1400e3707
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
movsxd rax, dword [r12 + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [r12], rcx
mov qword [rdx + rax*8], r12
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e376c
mov rcx, rdi
call fcn.140076120
test al, al
je 0x1400e3765
lea r12, [0x14034d8d8]
mov rcx, r12
call fcn.140012f60
mov rcx, rdi
mov rdx, r12
xor r8d, r8d
mov r9, rdi
call fcn.1400761d0
mov rcx, r12
jmp 0x1400e376c
mov rcx, qword [0x14034d8d0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
add ebx, 1
mov dword [rsi + r13*4 + 0x18], r15d
mov dword [rsi + 0x14], ebx
mov r12, rsi
mov rsi, qword [rsp + 0x30]
mov rcx, r12
mov r13, qword [rsp + 0x88]
mov rdx, r13
call fcn.1400e8300
cmp rbp, qword [rsp + 0x58]
mov edi, dword [rsp + 0x78]
jl 0x1400e3560
jmp 0x1400e37ab
xor ebp, ebp
cmp ebp, dword [rsp + 0x64]
jge 0x1400e3a15
movsxd r15, edi
mov ecx, 0xffffffd0
sub ecx, eax
mov rax, qword [rsp + 0xb8]
movsx r13d, byte [rax + r15]
add r13d, ecx
jne 0x1400e3a2d
add ebp, 1
mov ebx, dword [r12 + 0x14]
mov eax, dword [r12 + 0x18]
test rax, rax
jne 0x1400e37f0
cmp ebx, 1
je 0x1400e3b4c
movsxd r8, ebx
add rax, rax
lea r13, [rax + rax*4]
mov dword [r12 + 0x18], r13d
shr r13, 0x20
cmp ebx, 2
jl 0x1400e38bc
lea rax, [r12 + 0x1c]
lea ecx, [rbx - 1]
lea edx, [rbx - 2]
and ecx, 3
cmp edx, 3
jb 0x1400e388c
lea edx, [rcx + 1]
sub edx, ebx
nop word cs:[rax + rax]
nop
mov edi, dword [rax]
mov esi, dword [rax + 4]
lea rdi, [rdi + rdi*4]
lea rdi, [rdi*2]
add rdi, r13
mov dword [rax], edi
shr rdi, 0x20
lea rsi, [rsi + rsi*4]
lea rdi, [rdi + rsi*2]
mov dword [rax + 4], edi
shr rdi, 0x20
mov esi, dword [rax + 8]
lea rsi, [rsi + rsi*4]
lea rdi, [rdi + rsi*2]
mov dword [rax + 8], edi
shr rdi, 0x20
mov esi, dword [rax + 0xc]
lea rsi, [rsi + rsi*4]
lea r13, [rdi + rsi*2]
mov dword [rax + 0xc], r13d
shr r13, 0x20
add rax, 0x10
add edx, 4
jne 0x1400e3830
mov rsi, qword [rsp + 0x30]
test ecx, ecx
je 0x1400e38bc
lea ecx, [r8 - 1]
movzx ecx, cl
and ecx, 3
xor edx, edx
nop dword [rax]
mov edi, dword [rax + rdx*4]
lea rdi, [rdi + rdi*4]
lea r13, [r13 + rdi*2]
mov dword [rax + rdx*4], r13d
shr r13, 0x20
add rdx, 1
cmp ecx, edx
jne 0x1400e38a0
test r13, r13
je 0x1400e39f7
cmp ebx, dword [r12 + 0xc]
jge 0x1400e38d4
mov rsi, r12
jmp 0x1400e39e4
mov qword [rsp + 0x58], r8
mov ecx, dword [r12 + 8]
add ecx, 1
call fcn.1400e4520
mov rsi, rax
lea rcx, [rax + 0x10]
lea rdx, [r12 + 0x10]
movsxd rax, dword [r12 + 0x14]
lea r8, [rax*4 + 8]
call fcn.140193590
cmp dword [r12 + 8], 8
jl 0x1400e3919
mov rcx, r12
call fcn.1400a1350
jmp 0x1400e39df
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e396d
lea rdi, [0x14034d8d0]
mov rcx, rdi
call fcn.140076120
test al, al
je 0x1400e3966
lea rax, [0x14034d8d8]
mov rcx, rax
call fcn.140012f60
mov rcx, rdi
lea rdx, [0x14034d8d8]
xor r8d, r8d
mov r9, rdi
call fcn.1400761d0
lea rcx, [0x14034d8d8]
jmp 0x1400e396d
mov rcx, qword [0x14034d8d0]
call fcn.14008ae30
movsxd rax, dword [r12 + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [r12], rcx
mov qword [rdx + rax*8], r12
mov rcx, qword [0x14034d8d0]
cmp rcx, 1
ja 0x1400e39d9
lea rdi, [0x14034d8d0]
mov rcx, rdi
call fcn.140076120
test al, al
je 0x1400e39d2
lea r12, [0x14034d8d8]
mov rcx, r12
call fcn.140012f60
mov rcx, rdi
mov rdx, r12
xor r8d, r8d
mov r9, rdi
call fcn.1400761d0
mov rcx, r12
jmp 0x1400e39d9
mov rcx, qword [0x14034d8d0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r8, qword [rsp + 0x58]
add ebx, 1
mov dword [rsi + r8*4 + 0x18], r13d
mov dword [rsi + 0x14], ebx
mov r12, rsi
mov rsi, qword [rsp + 0x30]
add r15, 1
mov rcx, r12
mov rdx, qword [rsp + 0x88]
call fcn.1400e8300
cmp ebp, dword [rsp + 0x64]
jl 0x1400e37b8
mov r13d, 0xffffffff
test eax, eax
mov edi, dword [rsp + 0x80]
jle 0x1400e3a57
mov r15d, dword [rsp + 0x3c]
jmp 0x1400e3a39
mov r15d, dword [rsp + 0x3c]
mov edi, dword [rsp + 0x80]
test r12, r12
jne 0x1400e3b63
jmp 0x1400e3b77
xor r13d, r13d
cmp dword [rsp + 0x64], ebp
setg r13b
jmp 0x1400e3b57
cmp dword [r12 + 0x18], 0
mov r15d, dword [rsp + 0x3c]
jne 0x1400e3a73
xor r13d, r13d
cmp dword [r12 + 0x14], 2
jl 0x1400e3b63
mov r13d, 0xffffffff
cmp dword [r12 + 8], 8
jge 0x1400e3b6f
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e3acf
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e3ac8
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e3acf
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
movsxd rax, dword [r12 + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [r12], rcx
mov qword [rdx + rax*8], r12
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e3b3c
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e3b35
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e3b3c
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rsi, qword [rsp + 0x30]
jmp 0x1400e3b77
xor r13d, r13d
cmp ebp, dword [rsp + 0x64]
setl r13b
mov r15d, dword [rsp + 0x3c]
mov edi, dword [rsp + 0x80]
cmp dword [r12 + 8], 8
jl 0x1400e3a85
mov rcx, r12
call fcn.1400a1350
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x1400e3cd3
cmp dword [rcx + 8], 8
jl 0x1400e3bbe
call fcn.1400a1350
test edi, edi
jne 0x1400e3cdb
test r13d, r13d
js 0x1400e3c08
mov r12, qword [rsp + 0x68]
je 0x1400e3c24
cmp dword [rsp + 0x2c], 0
je 0x1400e3de1
mov eax, dword [rsp + 0xe4]
jmp 0x1400e3d2d
mov rbx, rcx
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e3c5a
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e3c53
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e3c5a
cmp dword [rsp + 0x2c], 0
mov r12, qword [rsp + 0x68]
jne 0x1400e3de1
mov eax, dword [rsp + 0xe4]
jmp 0x1400e3d86
mov eax, dword [rsp + 0xe4]
mov edx, eax
shr edx, 0x14
and edx, 0x7ff
sub edx, dword [rsp + 0x70]
jle 0x1400e3cfa
test byte [rsp + 0xe0], 1
jne 0x1400e3d26
jmp 0x1400e3de1
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
movsxd rax, dword [rbx + 8]
lea rcx, [0x14034d890]
mov rdx, rcx
mov rcx, qword [rcx + rax*8]
mov qword [rbx], rcx
mov qword [rdx + rax*8], rbx
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e3cc5
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e3cbe
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e3cc5
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rsi, qword [rsp + 0x30]
test edi, edi
je 0x1400e3b9b
test r13d, r13d
mov r12, qword [rsp + 0x68]
jg 0x1400e3de1
mov qword [rsp + 0xe0], 0
jmp 0x1400e3de1
mov ecx, 1
sub ecx, edx
cmp ecx, 0x1f
jg 0x1400e3d17
mov edx, dword [rsp + 0xe0]
bt edx, ecx
jb 0x1400e3d26
jmp 0x1400e3de1
add cl, 0xe0
movzx ecx, cl
bt eax, ecx
jae 0x1400e3de1
cmp dword [rsp + 0x2c], 0
je 0x1400e3d86
mov ecx, eax
and ecx, 0x7ff00000
add ecx, 0xfcc00000
shl rcx, 0x20
movq xmm0, rcx
cmp dword [rsp + 0x70], 0
je 0x1400e3d72
shr eax, 0x14
and eax, 0x7ff
mov ecx, WSAGetLastError
sub ecx, eax
jle 0x1400e3d72
shl ecx, 0x14
add ecx, 0x3ff00000
shl rcx, 0x20
movq xmm1, rcx
mulsd xmm0, xmm1
addsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0xe0], xmm0
jmp 0x1400e3de1
mov ecx, eax
and ecx, 0x7ff00000
add ecx, 0xfcc00000
shl rcx, 0x20
movq xmm0, rcx
cmp dword [rsp + 0x70], 0
je 0x1400e3dcb
shr eax, 0x14
and eax, 0x7ff
mov ecx, WSAGetLastError
sub ecx, eax
jle 0x1400e3dcb
shl ecx, 0x14
add ecx, 0x3ff00000
shl rcx, 0x20
movq xmm1, rcx
mulsd xmm0, xmm1
movsd xmm1, qword [rsp + 0xe0]
subsd xmm1, xmm0
movsd qword [rsp + 0xe0], xmm1
mov eax, 0x7ff00000
and eax, dword [rsp + 0xe4]
cmp eax, 0x7ff00000
je 0x1400e3e6b
test eax, eax
jne 0x1400e3e25
movsd xmm0, qword [rsp + 0xe0]
xorpd xmm1, xmm1
ucomisd xmm0, xmm1
jne 0x1400e3e25
jp 0x1400e3e25
xor ebx, ebx
mov qword [rsp + 0xe0], 0
test rbx, rbx
jne 0x1400e3e90
jmp 0x1400e4304
cmp dword [rsp + 0x70], 0
je 0x1400e0bb6
movsd xmm0, qword [rsp + 0xe0]
mulsd xmm0, qword [0x1401e3b80]
movsd qword [rsp + 0xe0], xmm0
movq rax, xmm0
movabs rcx, 0x7fefffffffffffff
add rcx, 1
test rax, rcx
jne 0x1400e0bb6
jmp 0x1400e4304
xor ebx, ebx
lea rcx, [rsp + 0xe0]
mov dword [rcx + 4], 0x7ff00000
mov dword [rsp + 0xe0], 0
test rbx, rbx
je 0x1400e4304
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1400e3f81
cmp dword [rcx + 8], 8
jl 0x1400e3eb7
call fcn.1400a1350
test rsi, rsi
jne 0x1400e3f8a
jmp 0x1400e405b
mov rdi, rsi
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e3f04
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e3efd
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e3f04
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
mov rax, qword [rsp + 0x40]
mov rbp, rax
movsxd rax, dword [rax + 8]
lea rcx, [0x14034d890]
mov rdx, qword [rcx + rax*8]
mov qword [rbp], rdx
mov qword [rcx + rax*8], rbp
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e3f75
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e3f6e
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e3f75
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rsi, rdi
test rsi, rsi
je 0x1400e405b
cmp dword [rsi + 8], 8
jl 0x1400e3f9d
mov rcx, rsi
call fcn.1400a1350
jmp 0x1400e405b
mov rdi, rsi
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e3fea
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e3fe3
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e3fea
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
movsxd rax, dword [rdi + 8]
lea rcx, [0x14034d890]
mov rdx, qword [rcx + rax*8]
mov qword [rdi], rdx
mov qword [rcx + rax*8], rdi
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e4052
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e404b
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e4052
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x1400e421a
cmp dword [rcx + 8], 8
jl 0x1400e40c5
call fcn.1400a1350
cmp dword [rbx + 8], 8
jge 0x1400e4224
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e411a
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e4113
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e411a
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e41a0
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e4199
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e41a0
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
movsxd rax, dword [rbx + 8]
lea rcx, [0x14034d890]
mov rdx, qword [rcx + rax*8]
mov qword [rbx], rdx
mov qword [rcx + rax*8], rbx
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e4182
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e417b
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e4182
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r14, r14
jne 0x1400e4235
jmp 0x1400e4304
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
mov rax, qword [rsp + 0x48]
mov rbp, rax
movsxd rax, dword [rax + 8]
lea rcx, [0x14034d890]
mov rdx, qword [rcx + rax*8]
mov qword [rbp], rdx
mov qword [rcx + rax*8], rbp
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e4211
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e420a
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e4211
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp dword [rbx + 8], 8
jl 0x1400e407e
mov rcx, rbx
call fcn.1400a1350
test r14, r14
je 0x1400e4304
cmp dword [r14 + 8], 8
jl 0x1400e4249
mov rcx, r14
call fcn.1400a1350
jmp 0x1400e4304
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e4293
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e428c
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e4293
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call fcn.14008ae30
movsxd rax, dword [r14 + 8]
lea rcx, [0x14034d890]
mov rdx, qword [rcx + rax*8]
mov qword [r14], rdx
mov qword [rcx + rax*8], r14
mov rsi, qword [0x14034d8d0]
cmp rsi, 1
ja 0x1400e42fb
lea rcx, [0x14034d8d0]
call fcn.140076120
test al, al
je 0x1400e42f4
lea rsi, [0x14034d8d8]
mov rcx, rsi
call fcn.140012f60
lea rcx, [0x14034d8d0]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400761d0
jmp 0x1400e42fb
mov rsi, qword [0x14034d8d0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
call fcn.1401a1ce0
mov dword [rax], 0x22
test r12, r12
jne 0x1400e0bbb
jmp 0x1400e0bc4
mov dword [rsp + 0x2c], 0
cmp dword [rsp + 0x64], r11d
jle 0x1400e2842
xor r15d, r15d
mov rdi, qword [rsp + 0x58]
cmp qword [rsp + 0x40], 0
jne 0x1400e2ac9
jmp 0x1400e2c98
mov rcx, rdx
mov r12d, r15d
mov bl, 0x30
add rcx, 2
mov r9d, 1
xor r10d, r10d
lea r11, [0x1401e3cf0]
xor eax, eax
mov esi, 1
xor r14d, r14d
xor r13d, r13d
xor r15d, r15d
movzx ebp, bl
movzx edi, byte [rbp + r11]
test edi, edi
je 0x1400e43af
and edi, 0xf
test eax, eax
mov ebx, 0
cmove ebx, r15d
cmovne r13d, r15d
test esi, esi
je 0x1400e439d
shld r13d, ebx, 4
shl ebx, 4
or ebx, edi
xor eax, eax
mov r14d, 1
mov r15d, ebx
jmp 0x1400e43c9
cmp bl, 0x21
jae 0x1400e4423
test esi, esi
setne bl
test r14d, r14d
setne dl
test bl, dl
cmovne esi, r10d
cmovne eax, r9d
movzx ebx, byte [rcx]
add rcx, 1
test bl, bl
jne 0x1400e4375
mov rcx, r8
mov qword [rsp + 0x50], rcx
and r13d, 0xfffff
mov eax, r13d
or eax, r15d
je 0x1400e4402
or r13d, 0x7ff00000
mov dword [rsp + 0xe4], r13d
mov dword [rsp + 0xe0], r15d
mov r15d, r12d
mov r12, qword [rsp + 0x68]
test r12, r12
jne 0x1400e0bbb
jmp 0x1400e0bc4
movsx ebp, byte [rcx]
add rcx, 1
test ebp, ebp
je 0x1400e43d4
cmp ebp, 0x29
jne 0x1400e4418
jmp 0x1400e43d7