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

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xf8
mov eax, dword [rdx + 8]
mov rbx, rdx
add rdx, 0xfa24
xor ecx, ecx
mov qword [rsp + 0xa8], rdx
lea r8, [rbx + 0xfa28]
mov qword [rsp + 0xb0], r8
lea r10, [rbx + 0xfa2c]
mov qword [rsp + 0xb8], r10
lea r11, [rbx + 0xfa30]
mov qword [rsp + 0xc0], r11
lea rdi, [rbx + 0xfa34]
mov qword [rsp + 0xc8], rdi
lea rsi, [rbx + 0xfa38]
mov qword [rsp + 0xd0], rsi
lea r14, [rbx + 0xfa3c]
mov qword [rsp + 0xd8], r14
lea r15, [rbx + 0xfa40]
mov qword [rsp + 0xe0], r15
lea rbp, [rbx + 0xfa44]
mov qword [rsp + 0xe8], rbp
cmp eax, 0xa
jne 0x1401aa2f5
mov dword [rdx], ecx
mov dword [r8], ecx
mov dword [r10], ecx
mov dword [r11], ecx
mov dword [rdi], ecx
mov dword [rsi], ecx
mov dword [r14], ecx
mov dword [r15], ecx
mov dword [rbp], ecx
mov qword [rbx + 0xfa48], rcx
mov qword [rbx + 0xfa50], rcx
mov qword [rbx + 0xfa58], rcx
mov qword [rbx + 0xfa60], rcx
mov qword [rbx + 0xfa68], rcx
mov qword [rbx + 0xfa70], rcx
mov qword [rbx + 0xfa78], rcx
mov qword [rbx + 0xfa80], rcx
mov qword [rbx + 0xfa88], rcx
jmp 0x1401aa33d
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xb0], r8
mov qword [rsp + 0xb8], r10
mov qword [rsp + 0xc0], r11
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0xe8], rbp
mov ecx, dword [r8]
add eax, 0xfffffff6
mov r9d, dword [rdx]
mov edx, dword [rbx + 0xfa58]
mov r13d, dword [rbp]
mov r8, qword [rbx + 0xfa88]
mov r12d, dword [rbx + 0xfa48]
mov ebp, dword [rbx + 0xfa6c]
mov dword [rsp + 0x158], ecx
mov ecx, dword [r10]
mov r10, qword [rbx + 0xfa78]
mov dword [rsp + 0x40], ecx
mov ecx, dword [r11]
mov r11d, dword [r15]
mov r15d, dword [rbx + 0xfa54]
mov dword [rsp + 0x58], ecx
mov ecx, dword [rdi]
mov edi, dword [rbx + 0xfa64]
mov dword [rsp + 0x150], ecx
mov ecx, dword [rsi]
mov esi, dword [rbx + 0xfa68]
mov dword [rsp + 0x4c], ecx
mov ecx, dword [r14]
mov r14d, dword [rbx + 0xfa50]
mov dword [rsp + 0x80], ecx
mov ecx, dword [rbx + 0xfa4c]
mov dword [rsp + 0x60], ecx
mov ecx, dword [rbx + 0xfa5c]
mov dword [rsp + 0x48], ecx
mov ecx, dword [rbx + 0xfa60]
mov dword [rsp + 0xa0], ecx
mov ecx, dword [rbx + 0xfa70]
mov dword [rsp + 0x64], edx
mov rdx, qword [rbx + 0xfa80]
mov dword [rsp + 0x68], ecx
mov ecx, dword [rbx + 0xfa74]
mov dword [rsp + 0x54], ecx
mov dword [rsp + 0x148], r9d
mov dword [rsp + 0x50], r11d
mov dword [rsp + 0x9c], r12d
mov dword [rsp + 0x5c], r14d
mov dword [rsp + 0x98], r15d
mov dword [rsp + 0x90], esi
mov dword [rsp + 0x94], ebp
mov qword [rsp + 0x88], r10
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], r8
cmp eax, 0x28
ja case.default.0x1401aa466
cdqe
lea rcx, [0x140000000]
mov dword [rsp + 0x84], 1
mov ecx, dword [rcx + rax*4 + 0x1acae8]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0xa
cmp r9d, 8
jge 0x1401aa4c7
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aa4bd
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aa480
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x42
je case.0x1401aa466.11
mov r10d, 0xffffffce
mov r9d, dword [rsp + 0x148]
jmp 0x1401aa4f6
mov r9d, dword [rsp + 0x148]
xor r10d, r10d
mov r14d, dword [rsp + 0x150]
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0xb0]
mov dword [rbx + 0xfa48], r12d
mov dword [rbx + 0xfa54], r15d
mov dword [rax], r9d
mov eax, dword [rsp + 0x158]
mov r9d, dword [rsp + 0x4c]
mov dword [rcx], eax
mov eax, dword [rsp + 0x40]
mov rcx, qword [rsp + 0xb8]
mov dword [rbx + 0xfa64], edi
mov dword [rbx + 0xfa68], esi
mov dword [rbx + 0xfa6c], ebp
mov dword [rcx], eax
mov rcx, qword [rsp + 0xc0]
mov eax, dword [rsp + 0x58]
mov dword [rcx], eax
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xd8]
mov dword [rax], r14d
mov rax, qword [rsp + 0xd0]
mov dword [rax], r9d
mov eax, dword [rsp + 0x80]
mov dword [rcx], eax
mov rcx, qword [rsp + 0xe0]
mov eax, dword [rsp + 0x50]
mov dword [rcx], eax
mov rax, qword [rsp + 0xe8]
mov ecx, dword [rsp + 0x5c]
mov dword [rbx + 0xfa50], ecx
mov ecx, dword [rsp + 0x64]
mov dword [rax], r13d
mov eax, dword [rsp + 0x60]
mov dword [rbx + 0xfa4c], eax
mov eax, dword [rsp + 0xa0]
mov dword [rbx + 0xfa58], ecx
mov ecx, dword [rsp + 0x48]
mov dword [rbx + 0xfa60], eax
mov rax, qword [rsp + 0x70]
mov dword [rbx + 0xfa5c], ecx
mov ecx, dword [rsp + 0x68]
mov dword [rbx + 0xfa70], ecx
mov ecx, dword [rsp + 0x54]
mov qword [rbx + 0xfa80], rax
mov rax, qword [rsp + 0x78]
mov dword [rbx + 0xfa74], ecx
mov rcx, qword [rsp + 0x88]
mov qword [rbx + 0xfa88], rax
mov eax, r10d
mov qword [rbx + 0xfa78], rcx
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], reloc.WS2_32.dll_inet_addr
cmp r9d, 8
jge 0x1401aa68b
nop dword [rax]
nop word [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aa681
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aa640
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x5a
je case.0x1401aa466.12
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffcd
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], reloc.WS2_32.dll_inet_ntoa
cmp r9d, 8
jge 0x1401aa70b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aa701
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aa6c0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x68
je case.0x1401aa466.13
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffcc
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], select
cmp r9d, 8
jge 0x1401aa78b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aa781
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aa740
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
movzx edx, al
mov dword [rbx + 0x24], ecx
mov dword [rbx + 0x28], edx
lea eax, [rdx - 0x31]
cmp eax, 8
ja 0x1401aa808
lea eax, [rdx - 0x30]
imul ecx, eax, 0x186a0
cmp byte [rbx + 0x2c], 0
mov dword [rbx + 0x28], eax
je 0x1401aa7fa
call fcn.1400119a0
imul ecx, dword [rbx + 0x28], 0x186a0
mov qword [rbx + 0xc58], rax
sar ecx, 1
call fcn.140011960
cmp qword [rbx + 0xc58], 0
mov qword [rbx + 0xc60], rax
je 0x1401aa7e7
test rax, rax
jne case.0x1401aa466.14
mov r9d, dword [rsp + 0x148]
mov r10d, 0xfffffffd
jmp 0x1401aa4f6
call fcn.1400119f0
mov qword [rbx + 0xc50], rax
jmp 0x1401aa7e2
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffcb
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], select
cmp r9d, 8
jge 0x1401aa87b
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aa871
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aa830
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x17
je case.0x1401aa466.42
cmp al, 0x31
je case.0x1401aa466.15
mov r9d, dword [rsp + 0x148]
mov r10d, 0xfffffff1
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], reloc.WS2_32.dll_ntohs
cmp r9d, 8
jge 0x1401aa90b
nop word [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aa901
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aa8c0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x41
je case.0x1401aa466.16
mov r9d, dword [rsp + 0x148]
mov r10d, 0xfffffff0
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], reloc.WS2_32.dll_recv
cmp r9d, 8
jge 0x1401aa98b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aa981
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aa940
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
je case.0x1401aa466.17
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffef
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], setsockopt
cmp r9d, 8
jge 0x1401aaa0b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aaa01
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aa9c0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x26
je case.0x1401aa466.18
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffee
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], reloc.WS2_32.dll_select
cmp r9d, 8
jge 0x1401aaa8b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aaa81
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aaa40
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x53
je case.0x1401aa466.19
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffec
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], reloc.WS2_32.dll_send
cmp r9d, 8
jge 0x1401aab0b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aab01
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aaac0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
je 0x1401aab2e
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffeb
jmp 0x1401aa4f6
inc dword [rbx + 0x30]
xor r10d, r10d
mov dword [rbx + 0xc68], r10d
jmp 0x1401aab40
xor r10d, r10d
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], setsockopt
cmp r9d, 8
jge 0x1401aab9c
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4e1
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aab92
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aab51
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc68]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc68], ecx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], reloc.WS2_32.dll_setsockopt
cmp r9d, 8
jge 0x1401aac1b
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aac11
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aabd0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc68]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc68], ecx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], reloc.WS2_32.dll_shutdown
cmp r9d, 8
jge 0x1401aac9b
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aac91
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aac50
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc68]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc68], ecx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], reloc.WS2_32.dll_socket
cmp r9d, 8
jge 0x1401aad1b
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aad11
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aacd0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc68]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc68], ecx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x18
cmp r9d, 1
jge 0x1401aad9b
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aad91
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 1
jl 0x1401aad50
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 1]
shr eax, cl
and al, 1
mov dword [rbx + 0x24], ecx
xor r10d, r10d
mov byte [rbx + 0x14], al
mov dword [rbx + 0x38], r10d
jmp 0x1401aadb8
xor r10d, r10d
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x19
cmp r9d, 8
jge 0x1401aae1b
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4e1
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aae11
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aadd0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0x38]
shl eax, 8
or ecx, eax
mov dword [rbx + 0x38], ecx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x1a
cmp r9d, 8
jge 0x1401aae9b
nop word [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aae91
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aae50
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0x38]
shl eax, 8
or ecx, eax
mov dword [rbx + 0x38], ecx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x1b
cmp r9d, 8
jge 0x1401aaf1b
nop word [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aaf11
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aaed0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0x38]
shl eax, 8
or ecx, eax
mov dword [rbx + 0x38], ecx
jge 0x1401aaf4a
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffea
jmp 0x1401aa4f6
imul eax, dword [rbx + 0x28], 0x186a0
add eax, 0xa
cmp ecx, eax
jle 0x1401aaf6b
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffe9
jmp 0x1401aa4f6
xor r11d, r11d
jmp 0x1401aaff7
mov r11d, dword [rsp + 0x148]
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x1c
cmp r9d, 1
jge 0x1401aafdb
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aafd1
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 1
jl 0x1401aaf90
mov edx, dword [rbx + 0x20]
lea ecx, [r9 - 1]
movsxd rax, r11d
shr edx, cl
and dl, 1
mov dword [rbx + 0x24], ecx
inc r11d
mov byte [rax + rbx + 0xd7c], dl
mov dword [rsp + 0x148], r11d
cmp r11d, 0x10
jl 0x1401aaf7b
lea rcx, [rbx + 0xc7c]
xorps xmm0, xmm0
mov rax, rcx
mov edx, 2
nop dword [rax + rax]
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
lea rax, [rax + 0x80]
movups xmmword [rax - 0x10], xmm0
sub rdx, 1
jne 0x1401ab020
xor r9d, r9d
jmp 0x1401ab11b
mov r10d, r9d
mov dword [rbx + 8], 0x1d
mov r9d, dword [rbx + 0x24]
cmp r9d, 1
jge 0x1401ab0bb
nop dword [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ab0b1
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 1
jl 0x1401ab070
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 1]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x1401ab0e6
mov eax, dword [rsp + 0x148]
shl eax, 4
add eax, dword [rsp + 0x158]
cdqe
mov byte [rax + rbx + 0xc7c], 1
mov eax, dword [rsp + 0x158]
mov r9d, r10d
inc eax
mov dword [rsp + 0x148], r10d
mov dword [rsp + 0x158], eax
cmp eax, 0x10
jl case.0x1401aa466.29
mov dword [rsp + 0x158], eax
inc r9d
lea rcx, [rbx + 0xc7c]
mov dword [rsp + 0x148], r9d
cmp r9d, 0x10
jge 0x1401ab146
movsxd rax, r9d
cmp byte [rax + rbx + 0xd7c], 0
je 0x1401ab111
mov dword [rsp + 0x158], 0
jmp case.0x1401aa466.29
xor r10d, r10d
mov r8d, 0x100
mov dword [rbx + 0xc78], r10d
mov edx, r10d
nop dword [rax]
cmp byte [rcx], r10b
je 0x1401ab179
movsxd rax, dword [rbx + 0xc78]
mov byte [rax + rbx + 0xd8c], dl
inc dword [rbx + 0xc78]
inc edx
inc rcx
cmp edx, r8d
jl 0x1401ab160
mov eax, dword [rbx + 0xc78]
test eax, eax
jne 0x1401ab196
lea r10d, [rax - 0x18]
jmp 0x1401aa4f6
add eax, 2
mov dword [rsp + 0x58], eax
jmp 0x1401ab1a2
xor r10d, r10d
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x1e
cmp r9d, 3
jge 0x1401ab20b
nop dword [rax]
nop word [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4e1
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ab201
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 3
jl 0x1401ab1c0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 3]
shr eax, cl
and eax, 7
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x150], eax
add eax, 0xfffffffe
cmp eax, 4
jbe case.0x1401aa466.31
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffe7
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x1f
cmp r9d, 0xf
jge 0x1401ab29b
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ab291
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 0xf
jl 0x1401ab250
mov edx, dword [rbx + 0x20]
lea ecx, [r9 - 0xf]
mov r14d, dword [rsp + 0x150]
shr edx, cl
and edx, 0x7fff
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x4c], edx
cmp edx, 1
jae 0x1401ab2d1
mov r10d, 0xffffffe6
mov r9d, dword [rsp + 0x148]
jmp 0x1401aa4fe
xor r10d, r10d
mov r11d, r10d
mov dword [rsp + 0x148], r10d
jmp 0x1401ab387
mov r11d, dword [rsp + 0x148]
xor r10d, r10d
mov r14d, dword [rsp + 0x150]
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x20
cmp r9d, 1
jge 0x1401ab357
nop dword [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401ab2c4
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ab34d
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 1
jl 0x1401ab310
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 1]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
jne 0x1401ab399
mov ecx, dword [rsp + 0x158]
mov edx, dword [rsp + 0x4c]
movsxd rax, r11d
inc r11d
mov dword [rsp + 0x148], r11d
mov byte [rax + rbx + 0x651e], cl
cmp r11d, edx
jge 0x1401ab3c5
mov dword [rsp + 0x158], r10d
jmp 0x1401ab2f7
mov eax, dword [rsp + 0x158]
inc eax
mov dword [rsp + 0x158], eax
cmp eax, r14d
jl 0x1401ab2f7
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffe5
jmp 0x1401aa4fe
mov r14d, dword [rsp + 0x150]
xor cl, cl
test r14d, r14d
jle 0x1401ab3f1
nop dword [rax]
nop dword [rax + rax]
movzx eax, cl
mov byte [rsp + rax + 0x40], cl
inc cl
movzx eax, cl
cmp eax, r14d
jl 0x1401ab3e0
mov dword [rsp + 0x148], r10d
test edx, edx
jle 0x1401ab450
lea r8, [rbx + 0x1ecc]
mov r10d, edx
mov dword [rsp + 0x148], edx
nop
movzx edx, byte [r8 + 0x4652]
lea rcx, [rsp + 0x40]
add rcx, rdx
movzx r9d, byte [rcx]
test dl, dl
je 0x1401ab43f
nop dword [rax + rax]
movzx eax, byte [rcx - 1]
mov byte [rcx], al
lea rcx, [rcx - 1]
add dl, 0xff
jne 0x1401ab430
mov byte [r8], r9b
inc r8
mov byte [rsp + 0x40], r9b
sub r10, 1
jne 0x1401ab410
mov r11d, dword [rsp + 0x58]
mov r8d, r10d
mov dword [rsp + 0x40], r10d
jmp 0x1401ab5ca
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x23
cmp r9d, 1
jge 0x1401ab4cb
nop dword [rax]
nop word [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ab4c1
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 1
jl 0x1401ab480
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 1]
mov r10d, dword [rsp + 0x48]
mov r9d, dword [rsp + 0x148]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
jne 0x1401ab4ed
inc r10d
jmp 0x1401ab4f0
dec r10d
mov dword [rsp + 0x48], r10d
lea eax, [r10 - 1]
cmp eax, 0x13
jbe 0x1401ab50e
mov r10d, 0xffffffe4
jmp 0x1401aa4f6
mov r10d, dword [rsp + 0x48]
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x22
cmp r9d, 1
jge 0x1401ab56b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ab561
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 1
jl 0x1401ab520
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 1]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
jne case.0x1401aa466.35
movsxd r9, dword [rsp + 0x148]
movsxd r8, dword [rsp + 0x40]
imul rax, r8, 0x102
add rax, rbx
mov byte [r9 + rax + 0xab70], r10b
inc r9d
mov r11d, dword [rsp + 0x58]
mov dword [rsp + 0x148], r9d
cmp r9d, r11d
jl 0x1401ab4f5
mov r14d, dword [rsp + 0x150]
inc r8d
mov dword [rsp + 0x40], r8d
xor r10d, r10d
cmp r8d, r14d
jge 0x1401ab65f
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x21
cmp r9d, 5
jge 0x1401ab63b
nop dword [rax]
nop dword [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ab631
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 5
jl 0x1401ab5f0
mov r10d, dword [rbx + 0x20]
lea ecx, [r9 - 5]
mov r8d, dword [rsp + 0x40]
shr r10d, cl
and r10d, 0x1f
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x48], r10d
xor r9d, r9d
jmp 0x1401ab5a1
mov dword [rsp + 0x40], r10d
movsxd r13, r14d
test r14d, r14d
jle 0x1401ab758
mov rbp, qword [rsp + 0x140]
lea r12, [rbx + 0xfa0c]
lea r15, [rbx + 0xab70]
mov esi, r10d
nop dword [rax]
mov r14d, 0x20
test r11d, r11d
jle 0x1401ab6c1
mov rdx, r15
mov r8d, r11d
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
mov eax, r10d
mov r10d, ecx
cmp ecx, eax
cmovle r10d, eax
cmp ecx, r14d
cmovl r14d, ecx
sub r8, 1
jne 0x1401ab6a1
mov dword [rsp + 0x38], r11d
movsxd rcx, esi
imul rdx, rcx, 0x408
imul rax, rcx, 0x102
mov dword [rsp + 0x30], r10d
lea rcx, [rbx + 0xab70]
add rdx, rbx
mov dword [rsp + 0x28], r14d
add rcx, rax
lea r9, [rdx + 0xe1dc]
lea r8, [rdx + 0xc9ac]
mov qword [rsp + 0x20], rcx
add rdx, 0xb17c
mov rcx, rbp
call fcn.1401d0280
mov r11d, dword [rsp + 0x58]
inc esi
mov dword [r12], r14d
add r15, 0x102
add r12, 4
mov r10d, 0
sub r13, 1
jne 0x1401ab690
mov ebp, dword [rsp + 0x94]
mov r15d, dword [rsp + 0x98]
mov r12d, dword [rsp + 0x9c]
mov dword [rsp + 0x40], esi
mov esi, dword [rsp + 0x90]
mov eax, dword [rbx + 0xc78]
mov r13d, r10d
inc eax
xorps xmm0, xmm0
mov dword [rsp + 0x80], eax
mov ecx, 8
imul eax, dword [rbx + 0x28], 0x186a0
mov dword [rsp + 0x60], eax
lea rax, [rbx + 0x44]
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
lea rax, [rax + 0x80]
movups xmmword [rax - 0x10], xmm0
sub rcx, 1
jne 0x1401ab781
mov r11d, 0x100
lea r9d, [rcx + 0xf]
mov dword [rsp + 0x148], r11d
lea r14, [rbx + 0x1e8b]
lea r11, [rbx + 0x1ec8]
mov r10d, 0x1000
nop dword [rax]
nop word [rax + rax]
movzx r8d, r9b
sub r10d, 0x10
shl r8b, 4
mov rdx, r14
sub r14, 0x10
mov ecx, reloc.WS2_32.dll_ntohs
nop dword [rax + rax]
lea eax, [r8 + rcx]
sub ecx, 1
mov byte [rdx], al
lea rdx, [rdx - 1]
jns 0x1401ab800
mov dword [r11], r10d
sub r11, 4
sub r9d, 1
jns 0x1401ab7e0
xor eax, eax
mov r14d, eax
mov dword [rsp + 0x5c], eax
mov r11d, eax
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x4c], eax
jg 0x1401ab845
mov r9d, dword [rsp + 0x148]
mov r10d, 0xfffffff4
jmp 0x1401aa4f6
movzx eax, byte [rbx + 0x1ecc]
lea r10, [rbx + 0xb17c]
mov dword [rsp + 0x68], eax
lea rcx, [rbx + 0xe1dc]
mov r13d, 0x31
mov edx, dword [rbx + rax*4 + 0xfa0c]
mov edi, edx
imul rax, rax, 0x408
mov dword [rsp + 0x54], edx
add r10, rax
add rcx, rax
add rax, 0xc9ac
mov qword [rsp + 0x88], r10
add rax, rbx
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x70], rax
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x24
cmp r9d, edi
jge 0x1401ab8fa
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ab8f1
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, edi
jl 0x1401ab8b0
mov esi, dword [rbx + 0x20]
sub r9d, edi
mov ecx, r9d
mov eax, 1
shr esi, cl
mov ecx, edi
shl eax, cl
dec eax
and esi, eax
jmp 0x1401ab98d
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x25
cmp r9d, 1
jge 0x1401ab97b
nop word [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ab971
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 1
jl 0x1401ab930
mov ebp, dword [rbx + 0x20]
dec r9d
mov ecx, r9d
add esi, esi
shr ebp, cl
and ebp, 1
or esi, ebp
mov dword [rbx + 0x24], r9d
cmp edi, 0x14
jg 0x1401ab9e4
movsxd rax, edi
lea rax, [rax*4]
cmp esi, dword [rax + r10]
jle 0x1401ab9ae
inc edi
jmp case.0x1401aa466.37
mov rdx, qword [rsp + 0x70]
mov ecx, esi
sub ecx, dword [rax + rdx]
cmp ecx, 0x101
ja 0x1401ab9d1
movsxd rax, ecx
mov rcx, qword [rsp + 0x78]
mov r12d, dword [rcx + rax*4]
jmp 0x1401abaac
mov r9d, dword [rsp + 0x148]
mov r10d, 0xfffffff2
jmp 0x1401aa4f6
mov r9d, dword [rsp + 0x148]
mov r10d, 0xfffffff3
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x29
cmp r9d, 1
jge 0x1401aba65
nop dword [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aba51
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 1
jl 0x1401aba10
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov ebp, dword [rbx + 0x20]
lea ecx, [r9 - 1]
shr ebp, cl
add esi, esi
and ebp, 1
mov dword [rbx + 0x24], ecx
or esi, ebp
cmp edi, 0x14
jg 0x1401ab9e4
movsxd rax, edi
lea rcx, [rax*4]
cmp esi, dword [rcx + r10]
jg 0x1401ac1a5
mov eax, esi
sub eax, dword [rcx + rdx]
cmp eax, 0x101
ja 0x1401ab9d1
cdqe
mov r12d, dword [r8 + rax*4]
cmp r12d, dword [rsp + 0x80]
je 0x1401ac1e5
cmp r12d, 1
ja 0x1401abd52
mov edx, 1
lea r15d, [rdx - 2]
jmp 0x1401abad3
mov edx, dword [rsp + 0x64]
test r12d, r12d
jne 0x1401abadd
add r15d, edx
jmp 0x1401abae7
cmp r12d, 1
jne 0x1401abae7
lea r15d, [r15 + rdx*2]
add edx, edx
mov dword [rsp + 0x64], edx
test r13d, r13d
jne 0x1401abb5d
inc r11d
mov dword [rsp + 0x50], r11d
cmp r11d, dword [rsp + 0x4c]
jge 0x1401ab832
movsxd rax, r11d
lea r10, [rbx + 0xb17c]
lea r8, [rbx + 0xe1dc]
mov r13d, 0x32
movzx eax, byte [rax + rbx + 0x1ecc]
mov dword [rsp + 0x68], eax
mov edx, dword [rbx + rax*4 + 0xfa0c]
imul rax, rax, 0x408
mov dword [rsp + 0x54], edx
add r10, rax
add r8, rax
add rax, 0xc9ac
mov qword [rsp + 0x88], r10
add rax, rbx
mov qword [rsp + 0x78], r8
mov qword [rsp + 0x70], rax
jmp 0x1401abb61
mov edx, dword [rsp + 0x54]
dec r13d
mov edi, edx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x26
cmp r9d, edi
jge 0x1401abbca
nop word [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401abbc1
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, edi
jl 0x1401abb80
mov esi, dword [rbx + 0x20]
sub r9d, edi
mov ecx, r9d
mov dword [rbx + 0x24], r9d
shr esi, cl
mov eax, 1
mov ecx, edi
shl eax, cl
dec eax
and esi, eax
cmp edi, 0x14
jg 0x1401ab9e4
movsxd rax, edi
lea rax, [rax*4]
cmp esi, dword [rax + r10]
jle 0x1401abc83
inc edi
mov r8d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x27
cmp r8d, 1
jge 0x1401abc6b
nop word [rax + rax]
mov r9, qword [rbx]
cmp dword [r9 + 8], 0
je 0x1401aa4eb
mov rax, qword [r9]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r8 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r9]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401abc61
inc dword [rax + 0x10]
mov r8d, dword [rbx + 0x24]
cmp r8d, 1
jl 0x1401abc20
mov ebp, dword [rbx + 0x20]
lea ecx, [r8 - 1]
shr ebp, cl
add esi, esi
and ebp, 1
mov dword [rbx + 0x24], ecx
or esi, ebp
jmp 0x1401abbe6
mov rdx, qword [rsp + 0x70]
mov ecx, esi
sub ecx, dword [rax + rdx]
cmp ecx, 0x101
ja 0x1401ab9d1
movsxd rax, ecx
mov rcx, qword [rsp + 0x78]
mov r12d, dword [rcx + rax*4]
test r12d, r12d
je 0x1401abacf
cmp r12d, 1
je 0x1401abacf
movsxd rax, dword [rbx + 0x1e8c]
inc r15d
movsxd r9, dword [rsp + 0x60]
movsxd rdx, r14d
movzx ecx, byte [rax + rbx + 0xe8c]
movzx r8d, byte [rcx + rbx + 0xd8c]
add dword [rbx + r8*4 + 0x44], r15d
cmp byte [rbx + 0x2c], 0
je 0x1401abd1d
test r15d, r15d
jle 0x1401abaac
nop
cmp rdx, r9
jge 0x1401ac1bf
mov rax, qword [rbx + 0xc58]
inc r14d
dec r15d
mov dword [rsp + 0x5c], r14d
mov word [rax + rdx*2], r8w
inc rdx
test r15d, r15d
jg 0x1401abcf0
jmp 0x1401abaac
test r15d, r15d
jle 0x1401abaac
cmp rdx, r9
jge 0x1401ac1d2
mov rax, qword [rbx + 0xc50]
inc r14d
dec r15d
mov dword [rsp + 0x5c], r14d
mov dword [rax + rdx*4], r8d
inc rdx
test r15d, r15d
jg 0x1401abd26
jmp 0x1401abaac
cmp r14d, dword [rsp + 0x60]
jge 0x1401ac1ac
lea edx, [r12 - 1]
cmp edx, 0x10
jae 0x1401abe09
movsxd r10, dword [rbx + 0x1e8c]
lea r8d, [r10 + rdx]
movzx r11d, byte [r8 + rbx + 0xe8c]
cmp edx, 3
jbe 0x1401abdd7
lea r9d, [rdx - 4]
shr r9d, 2
inc r9d
nop
movsxd rcx, r8d
add edx, 0xfffffffc
add rcx, rbx
add r8d, 0xfffffffc
movzx eax, byte [rcx + 0xe8b]
mov byte [rcx + 0xe8c], al
movzx eax, byte [rcx + 0xe8a]
mov byte [rcx + 0xe8b], al
movzx eax, byte [rcx + 0xe89]
mov byte [rcx + 0xe8a], al
movzx eax, byte [rcx + 0xe88]
mov byte [rcx + 0xe89], al
sub r9, 1
jne 0x1401abd90
test edx, edx
je 0x1401abdfc
lea ecx, [r10 + rdx]
mov r8d, edx
lea edx, [rcx - 1]
movzx eax, byte [rdx + rbx + 0xe8c]
mov byte [rcx + rbx + 0xe8c], al
mov ecx, edx
sub r8, 1
jne 0x1401abde2
mov byte [r10 + rbx + 0xe8c], r11b
jmp 0x1401ac054
mov eax, edx
lea r8, [rbx + 0x1e8c]
shr eax, 4
lea r10, [rbx + 0xe8c]
mov ecx, dword [r8 + rax*4]
lea r8, [r8 + rax*4]
and edx, 0xf
mov r9d, eax
add edx, ecx
movsxd rax, edx
add r10, rax
movzx r11d, byte [r10]
cmp edx, ecx
jle 0x1401abe55
nop word [rax + rax]
movzx eax, byte [r10 - 1]
dec edx
mov byte [r10], al
lea r10, [r10 - 1]
mov ecx, dword [r8]
cmp edx, ecx
jg 0x1401abe40
lea eax, [rcx + 1]
mov dword [r8], eax
test r9d, r9d
je 0x1401abe88
movsxd rcx, dword [r8]
lea r8, [r8 - 4]
dec r9d
lea eax, [rcx - 1]
mov dword [r8 + 4], eax
movsxd rax, dword [r8]
movzx eax, byte [rax + rbx + 0xe9b]
mov byte [rcx + rbx + 0xe8b], al
test r9d, r9d
jg 0x1401abe60
movsxd rcx, dword [rbx + 0x1e8c]
lea eax, [rcx - 1]
mov dword [rbx + 0x1e8c], eax
mov byte [rcx + rbx + 0xe8b], r11b
cmp dword [rbx + 0x1e8c], 0
jne 0x1401ac054
mov r8d, 0xfff
lea r9, [rbx + 0x1ec8]
mov r10d, reloc.WS2_32.dll_ntohs
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe9b]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe9a]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe99]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe98]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe97]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe96]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe95]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe94]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe93]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe92]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe91]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe90]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe8f]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe8e]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
mov edx, r8d
movzx eax, byte [rax + rbx + 0xe8d]
mov byte [rcx + rbx + 0xe8c], al
movsxd rax, dword [r9]
movsxd rcx, r8d
dec r8d
movzx eax, byte [rax + rbx + 0xe8c]
mov byte [rcx + rbx + 0xe8c], al
sub r10, 1
mov dword [r9], edx
lea r9, [r9 - 4]
jns 0x1401abec0
movzx ecx, r11b
movsxd rdx, r14d
movzx eax, byte [rcx + rbx + 0xd8c]
inc dword [rbx + rax*4 + 0x44]
cmp byte [rbx + 0x2c], 0
movzx eax, byte [rcx + rbx + 0xd8c]
je 0x1401ac085
movzx ecx, ax
mov rax, qword [rbx + 0xc58]
mov word [rax + rdx*2], cx
jmp 0x1401ac091
mov ecx, eax
mov rax, qword [rbx + 0xc50]
mov dword [rax + rdx*4], ecx
mov r11d, dword [rsp + 0x50]
inc r14d
mov dword [rsp + 0x5c], r14d
test r13d, r13d
jne 0x1401ac10e
inc r11d
mov dword [rsp + 0x50], r11d
cmp r11d, dword [rsp + 0x4c]
jge 0x1401ab832
movsxd rax, r11d
lea r10, [rbx + 0xb17c]
lea rcx, [rbx + 0xe1dc]
mov r13d, 0x32
movzx eax, byte [rax + rbx + 0x1ecc]
mov dword [rsp + 0x68], eax
mov edx, dword [rbx + rax*4 + 0xfa0c]
imul rax, rax, 0x408
mov dword [rsp + 0x54], edx
add r10, rax
add rcx, rax
add rax, 0xc9ac
mov qword [rsp + 0x88], r10
add rax, rbx
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x70], rax
jmp 0x1401ac11a
mov r10, qword [rsp + 0x88]
mov edx, dword [rsp + 0x54]
dec r13d
mov edi, edx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x28
cmp r9d, edi
jge 0x1401ac17a
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ac171
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, edi
jl 0x1401ac130
mov esi, dword [rbx + 0x20]
sub r9d, edi
mov r8, qword [rsp + 0x78]
mov ecx, r9d
mov rdx, qword [rsp + 0x70]
mov eax, 1
shr esi, cl
mov ecx, edi
shl eax, cl
dec eax
mov dword [rbx + 0x24], r9d
and esi, eax
jmp 0x1401aba78
inc edi
jmp case.0x1401aa466.41
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffe1
jmp 0x1401aa4f6
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffe3
jmp 0x1401aa4f6
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffe2
jmp 0x1401aa4f6
mov eax, dword [rbx + 0x38]
test eax, eax
js 0x1401ac623
cmp eax, r14d
jge 0x1401ac623
xor eax, eax
mov dword [rbx + 8], 2
lea rdx, [rbx + 0x448]
mov dword [rbx + 0x10], eax
lea r9, [rbx + 0x44c]
mov byte [rbx + 0xc], al
mov r11d, 0x40
mov dword [rdx], eax
mov rcx, r9
mov dword [rbx + 0xc70], 0xffffffff
mov r10d, r11d
lea r8, [rbx + 0x44]
mov eax, dword [r8]
lea r8, [r8 + 0x10]
mov dword [rcx], eax
lea rcx, [rcx + 0x10]
mov eax, dword [r8 - 0xc]
mov dword [rcx - 0xc], eax
mov eax, dword [r8 - 8]
mov dword [rcx - 8], eax
mov eax, dword [r8 - 4]
mov dword [rcx - 4], eax
sub r10, 1
jne 0x1401ac232
mov ecx, 0x100
nop
mov eax, dword [r9 - 4]
add dword [r9], eax
lea r9, [r9 + 4]
sub rcx, 1
jne 0x1401ac260
cmp byte [rbx + 0x2c], cl
je 0x1401ac563
lea rcx, [rbx + 0x84c]
mov eax, dword [rdx]
lea rdx, [rdx + 0x10]
mov dword [rcx], eax
lea rcx, [rcx + 0x10]
mov eax, dword [rdx - 0xc]
mov dword [rcx - 0xc], eax
mov eax, dword [rdx - 8]
mov dword [rcx - 8], eax
mov eax, dword [rdx - 4]
mov dword [rcx - 4], eax
sub r11, 1
jne 0x1401ac281
mov eax, dword [rdx]
mov dword [rcx], eax
xor eax, eax
mov r10d, eax
test r14d, r14d
jle 0x1401ac32c
mov r11d, eax
nop word [rax + rax]
mov rax, qword [rbx + 0xc58]
mov rdx, r11
sar rdx, 1
lea rcx, [rax + r11*2]
movzx eax, byte [rax + r11*2]
lea r9, [rbx + rax*4]
movzx eax, word [r9 + 0x84c]
mov word [rcx], ax
add rdx, qword [rbx + 0xc60]
mov ecx, dword [r9 + 0x84c]
movzx r8d, byte [rdx]
test r10b, 1
jne 0x1401ac309
sar ecx, 0x10
and r8b, 0xf0
or cl, r8b
jmp 0x1401ac318
mov eax, ecx
sar ecx, 0xc
sar eax, 0xc
xor al, r8b
and al, 0xf
xor cl, al
mov byte [rdx], cl
inc r10d
inc dword [r9 + 0x84c]
inc r11
cmp r10d, r14d
jl 0x1401ac2c0
movsxd r11, dword [rbx + 0x38]
mov rax, qword [rbx + 0xc60]
mov rdx, r11
sar rdx, 1
mov ecx, r11d
and ecx, 1
mov dword [rsp + 0x148], r11d
shl ecx, 2
movzx r14d, byte [rdx + rax]
mov rax, qword [rbx + 0xc58]
shr r14d, cl
and r14d, 0xf
shl r14d, 0x10
movzx ecx, word [rax + r11*2]
or r14d, ecx
jmp 0x1401ac378
mov r11d, dword [rsp + 0x148]
mov rax, qword [rbx + 0xc58]
mov r8d, r14d
mov ecx, r14d
and r8d, 1
mov r9d, r14d
shr r9, 1
lea rdx, [rax + rcx*2]
mov rax, qword [rbx + 0xc60]
lea ecx, [r8*4]
movzx r10d, byte [r9 + rax]
movzx eax, word [rdx]
shr r10d, cl
mov word [rdx], r11w
and r10d, 0xf
mov rdx, qword [rbx + 0xc60]
add rdx, r9
shl r10d, 0x10
mov r9d, dword [rsp + 0x148]
or r10d, eax
movzx ecx, byte [rdx]
test r8d, r8d
jne 0x1401ac3e2
sar r9d, 0x10
and cl, 0xf0
or r9b, cl
jmp 0x1401ac3f3
mov eax, r9d
sar r9d, 0xc
sar eax, 0xc
xor al, cl
and al, 0xf
xor r9b, al
mov byte [rdx], r9b
mov r9d, r14d
mov dword [rsp + 0x148], r14d
mov r14d, r10d
mov dword [rsp + 0x158], r10d
mov r10d, dword [rbx + 0x38]
cmp r9d, r10d
jne 0x1401ac370
xor eax, eax
mov dword [rbx + 0x3c], r10d
lea r14, [rbx + 0x444]
mov dword [r14], eax
cmp byte [rbx + 0x14], al
je 0x1401ac4de
mov qword [rbx + 0x18], rax
mov r11d, eax
mov r8d, 0x100
nop
lea edx, [r8 + r11]
sar edx, 1
movsxd rax, edx
cmp r10d, dword [rbx + rax*4 + 0x448]
cmovl r8d, edx
cmovl edx, r11d
mov eax, r8d
mov r11d, edx
sub eax, edx
cmp eax, 1
jne 0x1401ac440
mov rax, qword [rbx + 0xc60]
mov rcx, r10
mov dword [rbx + 0x40], edx
shr rcx, 1
movzx r8d, byte [rcx + rax]
xor ecx, ecx
mov rax, qword [rbx + 0xc58]
movzx r9d, word [rax + r10*2]
mov eax, dword [0x1402b63f0]
dec eax
mov dword [rbx + 0x1c], 1
cmp eax, 1
mov dword [rbx + 0x18], eax
sete cl
and r10d, 1
xor ecx, edx
shl r10d, 2
mov dword [rbx + 0x40], ecx
mov edx, r8d
mov r8d, dword [rsp + 0x84]
movzx ecx, r10b
shr edx, cl
and edx, 0xf
shl edx, 0x10
or edx, r9d
mov r9d, dword [rsp + 0x148]
mov dword [rbx + 0x3c], edx
xor r10d, r10d
mov dword [r14], r8d
jmp 0x1401aa4f6
mov r8d, eax
mov r11d, 0x100
lea edx, [r11 + r8]
sar edx, 1
movsxd rax, edx
cmp r10d, dword [rbx + rax*4 + 0x448]
cmovl r11d, edx
cmovl edx, r8d
mov eax, r11d
mov r8d, edx
sub eax, edx
cmp eax, 1
jne 0x1401ac4e7
mov dword [rbx + 0x40], edx
mov r8, r10
mov rdx, r10
mov dword [rsp + 0x84], eax
mov rax, qword [rbx + 0xc60]
and r10d, 1
shr rdx, 1
shl r10d, 2
movzx ecx, r10b
movzx edx, byte [rdx + rax]
mov rax, qword [rbx + 0xc58]
shr edx, cl
and edx, 0xf
shl edx, 0x10
movzx ecx, word [rax + r8*2]
mov r8d, dword [rsp + 0x84]
or edx, ecx
mov dword [rbx + 0x3c], edx
xor r10d, r10d
mov dword [r14], r8d
jmp 0x1401aa4f6
xor r10d, r10d
mov r9d, r10d
test r14d, r14d
jle 0x1401ac5a7
mov r8d, r10d
mov rcx, qword [rbx + 0xc50]
lea r8, [r8 + 4]
movzx eax, byte [rcx + r8 - 4]
lea rdx, [rbx + rax*4]
movsxd rax, dword [rdx + 0x448]
lea rcx, [rcx + rax*4]
mov eax, r9d
shl eax, 8
inc r9d
or dword [rcx], eax
inc dword [rdx + 0x448]
cmp r9d, r14d
jl 0x1401ac571
mov rdx, qword [rbx + 0xc50]
lea r14, [rbx + 0x444]
movsxd rax, dword [rbx + 0x38]
mov r8d, 1
mov ecx, dword [rdx + rax*4]
shr ecx, 8
mov eax, ecx
mov dword [rbx + 0x3c], eax
mov dword [r14], r10d
lea rcx, [rdx + rcx*4]
cmp byte [rbx + 0x14], r10b
je 0x1401ac60d
mov qword [rbx + 0x18], r10
mov edx, dword [rcx]
mov ecx, r10d
mov eax, edx
mov dword [rbx + 0x1c], r8d
shr eax, 8
mov dword [rbx + 0x3c], eax
mov eax, dword [0x1402b63f0]
dec eax
cmp eax, r8d
mov dword [rbx + 0x18], eax
movzx eax, dl
sete cl
xor ecx, eax
mov dword [rbx + 0x40], ecx
mov dword [r14], r8d
jmp 0x1401aa4f6
mov ecx, dword [rcx]
movzx eax, cl
shr ecx, 8
mov dword [rbx + 0x3c], ecx
mov dword [rbx + 0x40], eax
mov dword [r14], r8d
jmp 0x1401aa4f6
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffe0
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x2a
cmp r9d, 8
jge 0x1401ac69b
nop word [rax + rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ac691
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401ac650
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x72
je case.0x1401aa466.43
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffdf
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x2b
cmp r9d, 8
jge 0x1401ac71b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ac711
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401ac6d0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x45
je case.0x1401aa466.44
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffde
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x2c
cmp r9d, 8
jge 0x1401ac79b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ac791
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401ac750
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x38
je case.0x1401aa466.45
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffdd
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x2d
cmp r9d, 8
jge 0x1401ac81b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ac811
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401ac7d0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x50
je case.0x1401aa466.46
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffdc
jmp 0x1401aa4f6
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x2e
cmp r9d, 8
jge 0x1401ac89b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ac891
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401ac850
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x90
je 0x1401ac8be
mov r9d, dword [rsp + 0x148]
mov r10d, 0xffffffdb
jmp 0x1401aa4f6
xor r10d, r10d
mov dword [rbx + 0xc6c], r10d
jmp 0x1401ac8cd
xor r10d, r10d
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x2f
cmp r9d, 8
jge 0x1401ac92b
nop
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4e1
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ac921
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401ac8e0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc6c]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc6c], ecx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x30
cmp r9d, 8
jge 0x1401ac9ab
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401ac9a1
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401ac960
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc6c]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc6c], ecx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x31
cmp r9d, 8
jge 0x1401aca2b
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401aca21
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401ac9e0
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc6c]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc6c], ecx
mov r9d, dword [rbx + 0x24]
mov dword [rbx + 8], 0x32
cmp r9d, 8
jge 0x1401acaab
nop dword [rax]
mov r8, qword [rbx]
cmp dword [r8 + 8], 0
je 0x1401aa4eb
mov rax, qword [r8]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [r9 + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [r8]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jne 0x1401acaa1
inc dword [rax + 0x10]
mov r9d, dword [rbx + 0x24]
cmp r9d, 8
jl 0x1401aca60
mov eax, dword [rbx + 0x20]
lea ecx, [r9 - 8]
mov r9d, dword [rsp + 0x148]
mov r10d, 4
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc6c]
shl eax, 8
or ecx, eax
mov dword [rbx + 8], 1
mov dword [rbx + 0xc6c], ecx
jmp 0x1401aa4f6