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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov rbx, qword [rbp + 0xb0]
lea rax, [r8 + 0x68]
mov qword [rbp - 0x38], rax
xor r13d, r13d
mov rax, qword [rcx]
mov r15, rdx
mov qword [rbp - 0x58], rax
mov r14, r8
movzx eax, byte [rbx + 0x34]
mov edi, r9d
mov r11, qword [rbx + 0x50]
lea r10d, [r13 + 1]
imul rdx, rax, 0x70
mov rax, qword [r8 + 8]
mov rsi, rcx
movsxd r8, dword [r8 + 0x294]
add rax, 8
add rax, rdx
mov qword [rsp + 0x78], r13
mov qword [rbp - 0x78], r11
mov edx, r13d
mov qword [rbp - 0x40], rax
mov r9d, dword [rax + 0x44]
mov dword [rsp + 0x40], r9d
test r8, r8
jle 0x14018f20d
mov ecx, r13d
lea rax, [r14 + 0x298]
cmp dword [rax], r9d
je 0x14018f2fd
inc edx
inc rcx
add rax, 4
cmp rcx, r8
jl 0x14018f1f6
mov rax, r13
not rax
mov ecx, edi
and rax, qword [rbp + 0xb8]
mov qword [rbx + 0x58], rax
mov r12d, dword [rsi + 0x44]
mov r10, qword [r14 + 0x60]
dec r12d
mov dword [rsi + 0x44], r12d
shr r10, cl
and r10d, 1
mov dword [rbx + 0x10], r12d
mov dword [rbx + 0xc], r12d
mov eax, dword [rsi + 0x44]
dec eax
mov qword [rsp + 0x58], r10
mov dword [rsi + 0x44], eax
mov dword [rbp - 0x60], eax
mov dword [rbx + 0x18], eax
cmp byte [rbx + 0x34], r13b
jbe 0x14018f287
mov rcx, qword [rbp - 0x40]
test byte [rcx + 0x3c], 8
je 0x14018f287
mov r9d, dword [rsi + 0x38]
xor r8d, r8d
inc r9d
mov rcx, r15
mov dword [rsi + 0x38], r9d
mov dword [rbx], r9d
lea edx, [r8 + 0x45]
call fcn.140123ea0
mov r10, qword [rsp + 0x58]
mov r11, qword [rbp - 0x78]
mov edx, edi
test edi, edi
jle 0x14018f2aa
nop dword [rax]
mov eax, edx
lea rcx, [rax + rax*2]
shl rcx, 5
cmp dword [rcx + r14 + 0x398], r13d
jne 0x14018f2aa
dec edx
test edx, edx
jg 0x14018f290
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbp - 0x40]
shl rcx, 5
mov r8d, dword [rax + 0x40]
mov r9d, dword [rcx + r14 + 0x3a4]
test r8b, 0x10
je 0x14018f3bb
movsxd rcx, dword [r15 + 0x90]
mov ebx, dword [rax + 0x34]
mov edx, dword [rax + 0x30]
cmp dword [r15 + 0x94], ecx
jg 0x14018f30a
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, ebx
mov rcx, r15
lea edx, [r9 + 0xd]
call fcn.140123cf0
jmp 0x14018f338
mov ecx, edx
mov rax, r10
shl rax, cl
jmp 0x14018f210
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r13
movsxd rdx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], edx
jg 0x14018f377
mov r9d, r12d
mov dword [rsp + 0x20], r13d
mov r8d, ebx
mov edx, recv
mov rcx, r15
call fcn.140123cf0
mov r11, qword [rbp + 0xb0]
mov edx, eax
mov dword [r11 + 0x3c], eax
mov byte [r11 + 0x35], reloc.OLEAUT32.dll_VariantChangeType
jmp 0x140191683
mov r11, qword [rbp + 0xb0]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov dword [r11 + 0x3c], edx
mov byte [r11 + 0x35], reloc.OLEAUT32.dll_VariantChangeType
jmp 0x140191683
mov edx, dword [r11 + 0x28]
bt edx, 0xa
jae 0x14018fa8c
movzx r14d, word [r11 + 0x2c]
lea ecx, [r14 + 2]
cmp ecx, 1
jne 0x14018f3f8
movzx eax, byte [rsi + 0x1f]
test al, al
jne 0x14018f3e7
inc dword [rsi + 0x38]
mov esi, dword [rsi + 0x38]
jmp 0x14018f42c
dec al
movzx eax, al
mov byte [rsi + 0x1f], al
mov esi, dword [rsi + rax*4 + 0xd4]
jmp 0x14018f42c
mov r8, qword [rbp + 0x90]
mov esi, dword [rsi + 0x2c]
mov dword [rbp + 0xa8], esi
mov edx, dword [r8 + 0x28]
cmp ecx, edx
jg 0x14018f41f
lea eax, [rsi + rcx]
sub edx, ecx
mov dword [r8 + 0x2c], eax
mov dword [r8 + 0x28], edx
jmp 0x14018f432
mov eax, dword [r8 + 0x38]
lea esi, [rax + 1]
add eax, ecx
mov dword [r8 + 0x38], eax
mov dword [rbp + 0xa8], esi
mov edi, dword [rbx + 0xc]
mov ebx, r13d
mov dword [rsp + 0x60], edi
test r14d, r14d
je 0x14018f4ce
mov r15, qword [rsp + 0x58]
lea r12d, [rsi + 2]
mov rsi, qword [rbp + 0x90]
mov rdi, r13
mov r13, qword [rbp + 0xb0]
nop
mov rax, qword [r11 + 0x38]
mov rdx, qword [rdi + rax]
test rdx, rdx
je 0x14018f4af
test byte [rdx + 0x14], 1
lea r8d, [rbx + r12]
mov rcx, rsi
je 0x14018f499
mov dword [rsp + 0x28], r8d
mov r9d, ebx
mov r8, r13
mov dword [rsp + 0x20], r15d
call fcn.14018dc10
mov eax, dword [r13 + 0x10]
mov dword [rsp + 0x60], eax
jmp 0x14018f4ab
mov rdx, qword [rdx]
mov r9d, 1
mov rdx, qword [rdx + 0x18]
call fcn.14018e9c0
mov r11, qword [rbp - 0x78]
inc ebx
add rdi, 8
cmp ebx, r14d
jl 0x14018f460
mov r15, qword [rbp + 0x98]
xor r13d, r13d
mov esi, dword [rbp + 0xa8]
mov edi, dword [rsp + 0x60]
movsxd rcx, dword [r15 + 0x90]
mov edx, dword [r11 + 0x18]
cmp dword [r15 + 0x94], ecx
jg 0x14018f4fc
mov r8d, edx
mov dword [rsp + 0x20], r13d
mov edx, 0x45
mov r9d, esi
mov rcx, r15
call fcn.140123cf0
jmp 0x14018f52a
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
movsxd rcx, dword [r15 + 0x90]
lea edx, [rsi + 1]
cmp dword [r15 + 0x94], ecx
jg 0x14018f557
mov r9d, edx
mov dword [rsp + 0x20], r13d
mov edx, 0x45
mov r8d, r14d
mov rcx, r15
call fcn.140123cf0
jmp 0x14018f586
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov rcx, qword [rbp - 0x78]
mov edx, 0xfffffff9
mov ebx, dword [rsp + 0x40]
mov eax, 0xffffffff
mov r9d, edi
mov r8d, ebx
cmp byte [rcx + 0x1c], 0
cmovne eax, edx
mov edx, 9
mov dword [rsp + 0x30], eax
mov rax, qword [rcx + 0x20]
mov rcx, r15
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], esi
call fcn.140124230
mov r11, qword [rbp + 0xb0]
lea r12d, [r14 - 1]
mov r9, qword [rbp - 0x78]
mov eax, 0x3d
mov r8, qword [rbp + 0xa0]
mov ecx, VarDecAdd
mov byte [r9 + 0x1c], 0
mov dword [r11 + 0x38], ebx
cmp byte [r8 + 0x42], 0
cmovne eax, ecx
mov byte [r11 + 0x35], al
mov eax, dword [r15 + 0x90]
mov dword [r11 + 0x3c], eax
test r12d, r12d
js 0x140191631
movsxd r8, dword [r11 + 0x40]
lea ecx, [rsi + 2]
add ecx, r12d
lea rsi, [r14*8 - 8]
mov dword [rbp + 0xa8], ecx
mov r14d, 0x48
nop word [rax + rax]
mov rax, qword [r9 + 0x38]
mov rbx, qword [rsi + rax]
lea rax, [r8 - 1]
movzx edx, word [rbx + 0x14]
and dx, 1
cmove rax, r8
mov qword [rbp - 0x30], rax
mov r8, rax
cmp r12d, 0x10
jae 0x14018f6fb
movzx eax, word [r9 + 0x1e]
movzx ecx, r12w
shr ax, cl
test al, 1
je 0x14018f6f5
test byte [rbx + 0x12], 4
mov edx, r13d
jne 0x14018fa55
nop word [rax + rax]
cmp dword [r11], 0
je 0x14018f693
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x14018fa55
mov rax, qword [rbx + 0x38]
test qword [r11 + 0x58], rax
jne 0x14018fa55
test edx, edx
je 0x14018f6be
movzx eax, word [rbx + 0x12]
bt ax, 0xa
jae 0x14018f6be
mov ecx, 0x200
or ax, cx
mov word [rbx + 0x12], ax
jmp 0x14018f6c3
or word [rbx + 0x12], 4
movsxd rcx, dword [rbx + 0x18]
test ecx, ecx
js 0x14018fa55
mov rax, qword [rbx + 8]
mov rbx, rcx
shl rbx, 6
add rbx, qword [rax + 0x20]
add byte [rbx + 0x16], 0xff
jne 0x14018fa55
inc edx
test byte [rbx + 0x12], 4
je 0x14018f680
jmp 0x14018fa55
mov ecx, dword [rbp + 0xa8]
test dx, dx
je 0x14018fa5b
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
movzx eax, byte [rcx]
cmp al, 0xad
jne 0x14018f716
movzx eax, byte [rcx + 2]
cmp al, 0xae
jne 0x14018f720
mov rax, qword [rcx + 0x20]
jmp 0x14018f72c
cmp al, 0x88
jne 0x14018f735
mov rax, qword [rcx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jne 0x14018fa55
mov rax, qword [rbp - 0x58]
cmp byte [rax + 0x61], 0
jne 0x14018f7e8
mov rax, qword [r11 + 0x48]
lea rcx, [r8 + r8*4]
mov edx, dword [rax + rcx*4 + 4]
test edx, edx
jns 0x14018f75c
mov edx, dword [r15 + 0x90]
dec edx
mov rax, qword [r15]
cmp byte [rax + 0x61], 0
je 0x14018f76e
lea rax, [0x14025a1e0]
jmp 0x14018f780
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rcx*8]
movsxd rcx, dword [r15 + 0x90]
mov r10d, dword [rax + 0xc]
mov r9d, dword [rax + 8]
mov r8d, dword [rax + 4]
movzx edx, byte [rax]
cmp dword [r15 + 0x94], ecx
jg 0x14018f7b1
movzx edx, dl
mov rcx, r15
mov dword [rsp + 0x20], r10d
call fcn.140123cf0
jmp 0x14018f7e8
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], r13w
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], 0
mov rax, qword [rbp + 0x90]
mov rcx, qword [rax]
cmp r14w, word [rcx + 0x17c]
jbe 0x14018f81f
cmp dword [rcx + 0x178], 0
jne 0x14018f810
inc dword [rcx + 0x18c]
jmp 0x14018f89d
cmp byte [rcx + 0x61], 0
jne 0x14018fa55
jmp 0x14018f89d
mov rdi, qword [rcx + 0x1b0]
test rdi, rdi
je 0x14018f83d
mov rax, qword [rdi]
mov qword [rcx + 0x1b0], rax
inc dword [rcx + 0x188]
jmp 0x14018f8b1
mov rdi, qword [rcx + 0x1a8]
test rdi, rdi
je 0x14018f85b
mov rax, qword [rdi]
mov qword [rcx + 0x1a8], rax
inc dword [rcx + 0x188]
jmp 0x14018f8b1
mov rdi, qword [rcx + 0x1a0]
test rdi, rdi
je 0x14018f879
mov rax, qword [rdi]
mov qword [rcx + 0x1a0], rax
inc dword [rcx + 0x188]
jmp 0x14018f8b1
mov rdi, qword [rcx + 0x198]
test rdi, rdi
je 0x14018f897
mov rax, qword [rdi]
inc dword [rcx + 0x188]
mov qword [rcx + 0x198], rax
jmp 0x14018f8b1
inc dword [rcx + 0x190]
mov rdx, r14
call fcn.1400fd3f0
mov rdi, rax
test rax, rax
je 0x14018fa55
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rdi], xmm0
mov ecx, r13d
mov edx, r13d
movups xmmword [rdi + 0x10], xmm0
mov dword [rsp + 0x44], ecx
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm0
mov qword [rdi + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [rdi + 0x32], ax
mov rax, qword [rdi + 0x10]
mov byte [rdi], 0x35
test rax, rax
je 0x14018f8f9
mov eax, dword [rax + 0x28]
test eax, eax
jle 0x14018f8f9
mov ecx, eax
mov dword [rsp + 0x44], eax
mov edx, eax
mov rax, qword [rdi + 0x18]
test rax, rax
je 0x14018f90e
mov eax, dword [rax + 0x28]
cmp eax, edx
cmovg ecx, eax
mov dword [rsp + 0x44], ecx
mov r11d, dword [rdi + 4]
bt r11d, 0xb
jae 0x14018f92d
mov rcx, qword [rdi + 0x20]
lea rdx, [rsp + 0x44]
call fcn.14013dd30
mov ecx, dword [rsp + 0x44]
jmp 0x14018f98c
mov r10, qword [rdi + 0x20]
test r10, r10
je 0x14018f98c
movsxd r8, dword [r10]
test r8, r8
jle 0x14018f95c
lea rdx, [r10 + 8]
mov rax, qword [rdx]
test rax, rax
je 0x14018f952
mov eax, dword [rax + 0x28]
cmp eax, ecx
cmovg ecx, eax
add rdx, 0x20
sub r8, 1
jne 0x14018f942
movsxd r9, dword [r10]
mov edx, r13d
test r9, r9
jle 0x14018f980
lea r8, [r10 + 8]
nop dword [rax + rax]
mov rax, qword [r8]
lea r8, [r8 + 0x20]
or edx, dword [rax + 4]
sub r9, 1
jne 0x14018f970
and edx, 0x200104
or edx, r11d
mov dword [rdi + 4], edx
mov r9, qword [rbp + 0x90]
inc ecx
mov dword [rdi + 0x28], ecx
mov rax, qword [r9]
mov r8d, dword [rax + 0x88]
cmp ecx, r8d
jle 0x14018f9b6
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, r9
call fcn.140100f00
mov rax, qword [rbx]
mov edx, 0x49
mov rbx, qword [rbp - 0x58]
mov rcx, qword [rax + 0x10]
mov qword [rdi + 0x10], rcx
mov rcx, rbx
call fcn.1400fd450
mov rcx, rax
test rax, rax
je 0x14018fa42
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov r9d, reloc.WS2_32.dll_recv
mov rdx, rdi
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
mov qword [rcx + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [rcx + 0x32], ax
lea rax, [rcx + 0x48]
mov qword [rcx + 8], rax
mov byte [rcx], 0xad
mov byte [rax], 0
mov eax, 1
mov dword [rcx + 0x28], eax
mov eax, dword [rbp + 0xa8]
mov qword [rdi + 0x18], rcx
mov dword [rcx + 0x2c], eax
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0x90]
mov r8d, dword [rax + 0x18]
call fcn.140145f10
jmp 0x14018fa46
mov qword [rdi + 0x18], rcx
mov rdx, rdi
mov qword [rdi + 0x10], r13
mov rcx, rbx
call fcn.14013e8f0
mov ecx, dword [rbp + 0xa8]
mov r8, qword [rbp - 0x30]
dec ecx
mov r9, qword [rbp - 0x78]
sub rsi, 8
sub r12d, 1
mov r11, qword [rbp + 0xb0]
mov dword [rbp + 0xa8], ecx
jns 0x14018f630
mov rsi, qword [rbp + 0x90]
jmp 0x140191683
test dl, 5
setne cl
bt edx, 8
setb al
test al, cl
je 0x14018fb76
mov rax, qword [r11 + 0x38]
xor r9d, r9d
mov r8, qword [rbp + 0xb0]
mov rcx, rsi
mov rbx, qword [rax]
inc dword [rsi + 0x38]
mov rdx, rbx
mov edi, dword [rsi + 0x38]
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r10d
call fcn.14018dc10
mov edx, eax
cmp eax, edi
je 0x14018fae8
test edi, edi
je 0x14018fae8
movzx eax, byte [rsi + 0x1f]
cmp al, 8
jae 0x14018fae8
mov dword [rsi + rax*4 + 0xd4], edi
inc byte [rsi + 0x1f]
mov r11, qword [rbp + 0xb0]
movsxd rcx, dword [r15 + 0x90]
mov r8d, dword [r11 + 0x10]
cmp dword [r15 + 0x94], ecx
jg 0x14018fb25
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, dword [rsp + 0x40]
mov edx, 0x1f
mov rcx, r15
call fcn.140123cf0
mov r11, qword [rbp + 0xb0]
jmp 0x14018fb59
mov r9d, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x1f
mov dword [rax + rcx*8 + 4], r9d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r13
mov byte [r11 + 0x35], VarDecAdd
mov rax, qword [rbx + 0x38]
test qword [r11 + 0x58], rax
jne 0x140191683
or word [rbx + 0x12], 4
jmp 0x140191683
mov eax, edx
and eax, 0x102
cmp eax, 0x102
jne 0x14018fde1
mov dword [rsp + 0x60], r13d
mov esi, VarDecAdd
mov r14d, esi
mov rdi, r13
mov rbx, r13
test dl, 0x20
je 0x14018fbae
mov rax, qword [r11 + 0x38]
mov ecx, 8
mov rbx, qword [rax]
jmp 0x14018fbb1
mov rcx, r13
test dl, 0x10
je 0x14018fbbe
mov rax, qword [r11 + 0x38]
mov rdi, qword [rcx + rax]
test r10d, r10d
je 0x14018fbcc
mov rax, rbx
mov rbx, rdi
mov rdi, rax
test rbx, rbx
je 0x14018fcab
mov rsi, qword [rbx]
mov dword [rbp + 0xa8], 0x18161719
mov rdx, qword [rsi + 0x18]
mov rcx, rdx
call fcn.14013d660
mov rcx, qword [rbp + 0x90]
test eax, eax
je 0x14018fc43
movzx eax, byte [rcx + 0x1f]
test al, al
jne 0x14018fc09
inc dword [rcx + 0x38]
mov ebx, dword [rcx + 0x38]
jmp 0x14018fc18
dec al
movzx eax, al
mov byte [rcx + 0x1f], al
mov ebx, dword [rcx + rax*4 + 0xd4]
mov rdx, qword [rsi + 0x18]
mov r9d, 1
mov r8d, ebx
call fcn.14018e9c0
movzx eax, byte [rsi]
mov ecx, ebx
inc rax
and eax, 2
or rax, 1
movzx edx, byte [rbp + rax + 0xa8]
jmp 0x14018fc72
lea r8, [rsp + 0x74]
call fcn.140145540
mov rcx, qword [rbp + 0xb0]
mov rdx, rbx
mov dword [rsp + 0x68], eax
call fcn.14018d710
movzx r10d, byte [rsi]
mov ebx, dword [rsp + 0x74]
mov ecx, dword [rsp + 0x68]
movzx edx, byte [rbp + r10 + 0x72]
mov r8d, dword [rsp + 0x40]
mov r9d, r12d
mov dword [rsp + 0x20], ecx
mov rcx, r15
movzx edx, dl
call fcn.140123d50
mov rcx, qword [rbp + 0x90]
mov esi, r14d
test ebx, ebx
je 0x14018fccc
movzx eax, byte [rcx + 0x1f]
cmp al, 8
jae 0x14018fccc
mov dword [rcx + rax*4 + 0xd4], ebx
inc byte [rcx + 0x1f]
jmp 0x14018fccc
mov r8d, dword [rsp + 0x40]
mov edx, r10d
xor edx, 1
mov rcx, r15
lea edx, [rdx*4 + 0x21]
call fcn.140123ea0
mov rcx, qword [rbp + 0x90]
test rdi, rdi
je 0x14018fd42
mov rbx, qword [rdi]
mov r9d, 1
inc dword [rcx + 0x38]
mov eax, dword [rcx + 0x38]
mov r8d, eax
mov dword [rsp + 0x60], eax
mov rdx, qword [rbx + 0x18]
call fcn.14018e9c0
mov rdx, qword [rbx + 0x18]
mov rcx, rdx
call fcn.14013d660
test eax, eax
jne 0x14018fd1a
movzx eax, byte [rbx]
sub al, 0x36
test al, 0xfd
jne 0x14018fd1a
mov eax, dword [rsp + 0x58]
xor eax, 1
lea r14d, [rax*2 + 0x37]
jmp 0x14018fd27
mov rax, qword [rsp + 0x58]
lea r14d, [rax*2 + 0x36]
mov rcx, rdx
call fcn.14013d660
test eax, eax
jne 0x14018fd42
mov rcx, qword [rbp + 0xb0]
mov rdx, rdi
call fcn.14018d710
mov r11, qword [rbp + 0xb0]
mov ecx, dword [r15 + 0x90]
cmp dword [rsp + 0x58], r13d
sete al
mov dword [r11 + 0x3c], ecx
add al, 4
mov byte [r11 + 0x35], al
cmp r14d, esi
mov eax, dword [rsp + 0x40]
mov rsi, qword [rbp + 0x90]
mov dword [r11 + 0x38], eax
je 0x140191683
inc dword [rsi + 0x38]
mov r8d, eax
mov ebx, dword [rsi + 0x38]
mov edx, 0x7f
mov r9d, ebx
mov rcx, r15
call fcn.140123ea0
mov r8d, dword [rsp + 0x60]
mov r9d, r12d
mov edx, r14d
mov dword [rsp + 0x20], ebx
mov rcx, r15
call fcn.140123d50
movsxd rax, dword [r15 + 0x90]
mov r11, qword [rbp + 0xb0]
mov r8, qword [rbp + 0xa0]
test eax, eax
jle 0x14019168a
lea rcx, [rax + rax*2]
mov edx, 0x53
mov rax, qword [r15 + 0x88]
mov word [rax + rcx*8 - 0x16], dx
jmp 0x14019168a
bt edx, 9
jae 0x1401909dc
mov rax, qword [r11 + 0x20]
xor r12b, r12b
movzx r14d, word [r11 + 0x18]
mov ebx, r13d
mov r10, qword [rbp + 0xb0]
mov rsi, r13
movzx edi, word [r11 + 0x1a]
mov r8d, r14d
movzx r9d, word [r11 + 0x1c]
mov qword [rsp + 0x78], rax
mov eax, dword [r10 + 8]
mov dword [rsp + 0x44], eax
mov eax, r14d
mov dword [rsp + 0x4c], eax
mov word [rsp + 0x48], di
mov word [rsp + 0x6c], r9w
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x80], r13
mov byte [rbp + 0xa8], r12b
mov byte [rsp + 0x64], bl
mov dword [rsp + 0x50], r13d
test dl, 0x20
je 0x14018fe62
mov rax, qword [r11 + 0x38]
inc r8d
mov ebx, edi
mov rsi, qword [rax + r14*8]
mov qword [rbp - 0x68], rsi
test dl, 0x10
je 0x14018ff46
mov rax, qword [r11 + 0x38]
cmp ebx, r9d
mov ecx, r8d
mov edi, r9d
cmova edi, ebx
mov r10, qword [rax + rcx*8]
mov eax, 0x100
mov qword [rbp - 0x50], r10
test word [r10 + 0x12], ax
je 0x14018fef5
mov rcx, qword [rbp + 0x90]
mov edx, 0x45
mov rax, qword [rbp + 0xb0]
mov r9d, dword [rcx + 0x38]
lea r8d, [rdx - 0x44]
inc r9d
mov dword [rcx + 0x38], r9d
mov rcx, r15
mov dword [rax + 0x2c], r9d
call fcn.140123ea0
mov eax, dword [r15 + 0x90]
mov ecx, r13d
mov r10, qword [rbp + 0xb0]
mov r9, qword [rsp + 0x78]
mov r11, qword [rbp - 0x78]
shl dword [r10 + 0x2c], 1
mov dword [r10 + 0x30], eax
mov rax, qword [r9 + 0x38]
cmp byte [r14 + rax], 1
sete cl
xor ecx, dword [rsp + 0x58]
or dword [r10 + 0x2c], ecx
jmp 0x14018ff01
mov r10, qword [rbp + 0xb0]
mov r9, qword [rsp + 0x78]
mov rdx, r14
mov ebx, edi
test rsi, rsi
jne 0x14018ff41
mov rax, qword [r9 + 8]
movsx r8, word [rax + rdx*2]
test r8d, r8d
js 0x14018ff2f
mov rax, qword [r9 + 0x18]
mov rdx, r8
shl rdx, 5
mov rcx, qword [rax + 8]
cmp byte [rdx + rcx + 0x18], r12b
je 0x14018ff35
cmp r8d, 0xfffffffe
jne 0x14018ff41
mov r12b, 1
mov ebx, edi
mov byte [rbp + 0xa8], r12b
movzx edi, word [rsp + 0x48]
mov eax, dword [r11 + 0x28]
mov r11, qword [rbp + 0x90]
test al, 0x30
jne 0x14018ffaa
bt eax, 0x13
jae 0x14018ffaa
inc dword [r11 + 0x38]
mov ebx, 1
movzx r12d, bl
mov eax, dword [r11 + 0x38]
mov byte [rbp + 0xa8], bl
mov dword [rsp + 0x50], eax
mov dword [r10 + 0x24], eax
cmp dword [r10], r13d
je 0x14018ff9e
mov r9d, eax
lea edx, [rbx + 0x44]
xor r8d, r8d
mov rcx, r15
call fcn.140123ea0
mov r10, qword [rbp + 0xb0]
mov r11, qword [rbp + 0x90]
dec dword [r11 + 0x44]
mov eax, dword [r11 + 0x44]
mov dword [r10 + 0x28], eax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x58]
movzx r8d, word [rax + 0x5e]
cmp r14w, r8w
jae 0x14018ffd1
mov rax, qword [rax + 0x38]
mov edx, r13d
cmp byte [r14 + rax], r13b
sete dl
cmp ecx, edx
je 0x14018ffdb
test ecx, ecx
je 0x14019000f
cmp r8w, r14w
jne 0x14019000f
mov rdx, qword [rbp - 0x50]
movzx eax, dil
movzx edi, word [rsp + 0x6c]
mov qword [rbp - 0x50], rsi
mov rsi, rdx
mov byte [rsp + 0x64], r12b
movzx r12d, ax
mov word [rsp + 0x48], di
mov qword [rbp - 0x68], rdx
mov byte [rbp + 0xa8], r13b
mov word [rsp + 0x6c], ax
jmp 0x140190015
movzx r12d, word [rsp + 0x6c]
lea rax, [rbp - 0x70]
mov r8d, ecx
mov rcx, r11
mov qword [rsp + 0x20], rax
mov r9d, ebx
mov rdx, r10
call fcn.14018e3a0
mov r8d, eax
mov dword [rsp + 0x54], eax
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x1401900ab
test r12w, r12w
je 0x1401900ab
mov rdi, r14
add rdi, rax
jne 0x140190053
mov qword [rbp - 0x80], r13
jmp 0x1401900a6
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp byte [rdi + rbx], r13b
jne 0x140190060
mov rax, qword [rbp - 0x58]
inc rbx
test rax, rax
je 0x140190082
mov rdx, rbx
mov rcx, rax
call fcn.1400fd450
jmp 0x14019008a
mov rcx, rbx
call fcn.1400fcd60
mov qword [rbp - 0x80], rax
test rax, rax
je 0x1401900a1
mov r8, rbx
mov rdx, rdi
mov rcx, rax
call fcn.1401b2830
mov r8d, dword [rsp + 0x54]
movzx edi, word [rsp + 0x48]
mov edx, dword [rsp + 0x50]
mov rax, qword [rbp + 0xb0]
test edx, edx
je 0x1401900bf
mov eax, dword [rax + 0x28]
jmp 0x1401900c2
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x48], eax
test rsi, rsi
je 0x1401900dd
test byte [rsi + 0x14], 0x28
jne 0x1401900dd
mov dword [rsp + 0x70], r13d
mov ecx, 1
jmp 0x1401900e6
mov ecx, 1
mov dword [rsp + 0x70], ecx
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x1401900fa
test byte [rax + 0x14], 0x28
mov dword [rsp + 0x68], r13d
je 0x1401900fe
mov dword [rsp + 0x68], ecx
mov r10d, 0x48
test rsi, rsi
jne 0x140190152
test r14w, r14w
jne 0x140190152
mov dword [rsp + 0x60], r13d
mov ecx, r14d
movzx ebx, byte [rbp + 0xa8]
mov r12d, ecx
test bl, bl
je 0x140190218
mov dword [rsp + 0x70], r13d
lea r9d, [r14 + r8]
mov edx, r10d
xor r8d, r8d
mov rcx, r15
call fcn.140123ea0
inc r12d
mov dword [rsp + 0x4c], r14d
mov esi, 1
jmp 0x140190229
mov dword [rsp + 0x60], ecx
mov ecx, r14d
mov r12d, r14d
test rsi, rsi
je 0x140190117
mov rax, qword [rsi]
lea esi, [r8 + r14]
mov rcx, qword [rbp + 0x90]
mov r8d, esi
movzx edi, di
mov r9d, edi
mov rbx, qword [rax + 0x18]
mov rdx, rbx
call fcn.14018e9c0
mov r8, qword [rbp - 0x68]
mov rcx, r15
mov rdx, qword [rbp + 0xb0]
call fcn.14018e7b0
mov rcx, rbx
call fcn.140140370
test eax, eax
je 0x1401901b8
mov r9d, dword [rsp + 0x48]
mov r8d, esi
mov edx, gethostbyname
mov rcx, r15
call fcn.140123ea0
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x1401901cf
lea r8, [rax + r14]
mov edx, edi
mov rcx, rbx
call fcn.14018d790
movzx eax, byte [rbx]
add r12d, edi
cmp al, 0xad
jne 0x1401901dd
movzx eax, byte [rbx + 2]
cmp al, 0xae
jne 0x1401901e7
mov rax, qword [rbx + 0x20]
jmp 0x1401901f3
cmp al, 0x88
jne 0x140190204
mov rax, qword [rbx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jle 0x140190204
mov dword [rsp + 0x70], 1
xor bl, bl
jmp 0x140190225
mov rdx, qword [rbp - 0x68]
mov rcx, qword [rbp + 0xb0]
call fcn.14018d710
xor bl, bl
jmp 0x140190225
mov dword [rsp + 0x4c], r14d
test edx, edx
jne 0x14019012e
mov esi, dword [rsp + 0x60]
mov r10, qword [rbp - 0x70]
mov r9d, r12d
movzx edi, bl
mov ebx, dword [rsp + 0x54]
sub r9d, edi
mov dword [rbp + 0xa8], edi
mov r8d, ebx
test r10, r10
je 0x1401902b1
test r9d, r9d
jle 0x140190264
nop dword [rax]
cmp byte [r10], 0x41
jg 0x140190264
dec r9d
inc r8d
inc r10
test r9d, r9d
jg 0x140190250
movsxd rax, r9d
cmp rax, 1
jle 0x140190288
lea rdx, [r10 - 1]
add rdx, rax
cmp byte [rdx], 0x41
jg 0x140190288
dec r9d
dec rax
dec rdx
cmp rax, 1
jg 0x140190274
test r9d, r9d
jle 0x1401902b1
mov rax, qword [rbp + 0x90]
mov edx, 0x5a
mov dword [rsp + 0x30], r9d
mov qword [rsp + 0x28], r10
mov dword [rsp + 0x20], r13d
mov rcx, qword [rax + 0x10]
call fcn.140124230
mov rcx, qword [rbp - 0x78]
lea r14, [0x140000000]
movzx eax, word [rcx + 0x2e]
test ax, ax
je 0x1401902ce
cmp r12d, eax
je 0x14019039f
test dword [rcx + 0x28], 0x40000
je 0x1401902e9
mov r8d, dword [rsp + 0x44]
mov edx, 0x76
mov rcx, r15
call fcn.140123e30
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x140190305
mov edx, 0x45
mov r9d, eax
mov rcx, r15
lea r8d, [rdx - 0x44]
call fcn.140123ea0
mov rcx, qword [rsp + 0x58]
mov ebx, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x44]
mov dword [rsp + 0x28], r12d
lea eax, [rbx + rsi*2]
mov esi, dword [rsp + 0x48]
lea ecx, [rcx + rax*2]
mov r9d, esi
movzx edx, byte [rcx + r14 + 0x1f08a8]
mov rcx, r15
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x20], eax
call fcn.1401247c0
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x1401903a5
mov r9d, dword [r15 + 0x90]
xor r8d, r8d
add r9d, 2
mov rcx, r15
lea edx, [r8 + 0xb]
call fcn.140123ea0
mov r8d, dword [rsp + 0x44]
mov eax, 2
mov edx, 6
mov ecx, r12d
sub ecx, ebx
mov r9d, esi
mov ebx, dword [rsp + 0x54]
cmp r12d, 1
mov dword [rsp + 0x28], ecx
mov rcx, r15
cmova eax, edx
mov dword [rsp + 0x20], ebx
add eax, dword [rsp + 0x58]
movzx edx, byte [rax + r14 + 0x1f08a8]
call fcn.1401247c0
mov eax, dword [rsp + 0x50]
jmp 0x1401903a9
mov ebx, dword [rsp + 0x54]
mov r12, qword [rbp - 0x50]
test r12, r12
je 0x1401904e5
mov rax, qword [r12]
movzx esi, word [rsp + 0x6c]
add ebx, dword [rsp + 0x4c]
mov r9d, esi
mov rcx, qword [rbp + 0x90]
mov r8d, ebx
mov rdi, qword [rax + 0x18]
mov rdx, rdi
call fcn.14018e9c0
mov rdx, qword [rbp + 0xb0]
mov r8, r12
mov rcx, r15
call fcn.14018e7b0
mov rcx, rdi
call fcn.140140370
test eax, eax
je 0x14019040f
mov r9d, dword [rsp + 0x48]
mov r8d, ebx
mov edx, gethostbyname
mov rcx, r15
call fcn.140123ea0
mov r12, qword [rbp - 0x80]
test r12, r12
je 0x140190494
mov r8, r12
mov edx, esi
mov rcx, rdi
call fcn.14018d790
mov r11, r12
mov r9d, esi
test esi, esi
je 0x140190443
nop
cmp byte [r11], 0x41
jg 0x140190443
dec r9d
inc ebx
inc r11
test r9d, r9d
jg 0x140190430
movsxd rax, r9d
cmp rax, 1
jle 0x140190468
lea r10, [rax - 1]
add r10, r11
cmp byte [r10], 0x41
jg 0x140190468
dec r9d
dec rax
dec r10
cmp rax, 1
jg 0x140190453
test r9d, r9d
jle 0x140190494
mov rax, qword [rbp + 0x90]
mov r8d, ebx
mov dword [rsp + 0x30], r9d
mov edx, 0x5a
mov qword [rsp + 0x28], r11
mov dword [rsp + 0x20], r13d
mov rcx, qword [rax + 0x10]
call fcn.140124230
mov ebx, dword [rsp + 0x4c]
movzx eax, byte [rdi]
add ebx, esi
cmp al, 0xad
jne 0x1401904a5
movzx eax, byte [rdi + 2]
cmp al, 0xae
jne 0x1401904af
mov rax, qword [rdi + 0x20]
jmp 0x1401904bb
cmp al, 0x88
jne 0x1401904cd
mov rax, qword [rdi + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jle 0x1401904cd
mov edi, dword [rbp + 0xa8]
mov esi, 1
jmp 0x140190529
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rbp + 0xb0]
call fcn.14018d710
mov edi, dword [rbp + 0xa8]
jmp 0x140190525
mov ebx, dword [rsp + 0x4c]
cmp byte [rsp + 0x64], r13b
je 0x140190521
test eax, eax
jne 0x140190515
mov r9d, dword [rsp + 0x54]
lea edx, [rax + 0x48]
add r9d, ebx
xor r8d, r8d
mov rcx, r15
call fcn.140123ea0
mov r12, qword [rbp - 0x80]
inc ebx
mov esi, r13d
jmp 0x140190529
mov esi, dword [rsp + 0x68]
inc ebx
mov r12, qword [rbp - 0x80]
jmp 0x140190529
mov r12, qword [rbp - 0x80]
mov esi, dword [rsp + 0x68]
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x14019053e
mov rcx, qword [rbp - 0x58]
mov rdx, rax
call fcn.1400fd030
test r12, r12
je 0x140190604
mov rcx, qword [rbp - 0x58]
test rcx, rcx
je 0x1401905a9
cmp qword [rcx + 0x2d8], r13
je 0x140190566
mov rdx, r12
call fcn.1400fcfc0
jmp 0x140190604
cmp r12, qword [rcx + 0x1c8]
jae 0x1401905a9
cmp r12, qword [rcx + 0x1b8]
jb 0x14019058c
mov rax, qword [rcx + 0x1b0]
mov qword [r12], rax
mov qword [rcx + 0x1b0], r12
jmp 0x140190604
cmp r12, qword [rcx + 0x1c0]
jb 0x1401905a9
mov rax, qword [rcx + 0x1a0]
mov qword [r12], rax
mov qword [rcx + 0x1a0], r12
jmp 0x140190604
cmp dword [0x14024ed50], r13d
je 0x1401905fb
mov rcx, qword [0x14025a3f8]
test rcx, rcx
je 0x1401905c4
call qword [0x14024edd0]
mov rcx, r12
call qword [0x14024ed88]
dec qword [0x14025a188]
movsxd rcx, eax
sub qword [0x14025a140], rcx
mov rcx, r12
call qword [0x14024ed78]
mov rcx, qword [0x14025a3f8]
test rcx, rcx
je 0x140190604
call qword [0x14024ede0]
jmp 0x140190604
mov rcx, r12
call qword [0x14024ed78]
mov rcx, qword [rbp + 0xb0]
mov eax, dword [r15 + 0x90]
mov r12d, dword [rsp + 0x50]
mov dword [rcx + 0x3c], eax
test ebx, ebx
je 0x140190671
test r12d, r12d
je 0x14019063e
mov r9d, dword [r15 + 0x90]
mov r8d, r12d
add r9d, 3
mov edx, socket
mov rcx, r15
call fcn.140123ea0
mov rax, qword [rsp + 0x58]
mov rcx, r15
mov r8d, dword [rsp + 0x44]
mov dword [rsp + 0x28], ebx
lea eax, [rsi + rax*2]
mov esi, dword [rsp + 0x48]
movzx edx, byte [rax + r14 + 0x1f42d8]
mov r9d, esi
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x20], eax
call fcn.1401247c0
jmp 0x140190675
mov esi, dword [rsp + 0x48]
test r12d, r12d
je 0x1401906cc
mov r9d, dword [r15 + 0x90]
mov r8d, r12d
add r9d, 2
mov edx, send
mov rcx, r15
call fcn.140123ea0
mov rax, qword [rsp + 0x58]
lea r8d, [rbx + rdi]
mov r12d, dword [rsp + 0x44]
mov r9d, esi
mov dword [rsp + 0x28], r8d
mov rcx, r15
mov r8d, r12d
lea eax, [rdi + rax*2]
movzx edx, byte [rax + r14 + 0x1f42d8]
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x20], eax
call fcn.1401247c0
jmp 0x1401906d1
mov r12d, dword [rsp + 0x44]
mov rdi, qword [rbp - 0x78]
test dword [rdi + 0x28], 0x40000
je 0x140190708
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x140190731
mov r9d, 1
mov dword [rsp + 0x20], r13d
mov r8d, r12d
mov rcx, r15
lea edx, [r9 + 0x75]
call fcn.140123cf0
mov edx, 1
test byte [rdi + 0x28], 0x40
je 0x140190763
mov rbx, qword [rbp + 0xa0]
test byte [rbx + 0x3c], 0x20
jne 0x140190763
mov ecx, dword [rsp + 0x40]
mov r14d, edx
mov r10, qword [rsp + 0x78]
jmp 0x14019093f
lea eax, [rcx + 1]
mov edx, 1
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x76
mov dword [rax + rcx*8 + 4], r12d
mov qword [rax + rcx*8 + 8], rdx
mov qword [rax + rcx*8 + 0x10], r13
jmp 0x14019070d
mov r10, qword [rsp + 0x78]
mov r14d, r13d
mov rbx, qword [r10 + 0x18]
test byte [rbx + 0x40], 0x80
jne 0x14019080d
mov rbx, qword [rbp + 0xa0]
movzx eax, word [rbx + 0x3c]
bt ax, 0xa
jb 0x1401907c0
bt ax, 0xc
jae 0x14019079f
cmp byte [rbx + 0x42], 1
je 0x1401907c0
cmp word [rdi + 0x2c], r13w
je 0x1401907c0
mov r8d, dword [rsp + 0x40]
mov r9d, r12d
mov rdx, r10
mov rcx, rbx
call fcn.14018e810
mov ecx, dword [rsp + 0x40]
mov r10, qword [rsp + 0x78]
jmp 0x14019093f
mov rsi, qword [rbp + 0x90]
mov r8d, r12d
mov edx, 0x86
mov rcx, r15
inc dword [rsi + 0x38]
mov ebx, dword [rsi + 0x38]
mov r9d, ebx
call fcn.140123ea0
mov r8d, dword [rsp + 0x40]
xor r9d, r9d
mov rcx, r15
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 0x20]
call fcn.140123d50
mov ecx, dword [rsp + 0x40]
mov r10, qword [rsp + 0x78]
mov rbx, qword [rbp + 0xa0]
jmp 0x140190946
mov ecx, dword [rsp + 0x40]
cmp ecx, r12d
je 0x140190938
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x140190835
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140190835
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140190823
movzx edx, word [rbx + 0x5e]
mov rcx, qword [rbp + 0x90]
call fcn.140147410
mov esi, eax
mov edi, r13d
movzx eax, word [rbx + 0x5e]
cmp r13w, ax
jae 0x14019090a
mov r14, 0xffffffffffffffff
nop
movzx r8d, word [r10 + 0x60]
mov edx, r13d
test r8d, r8d
je 0x140190891
mov rax, qword [rbx + 8]
mov r9, qword [r10 + 8]
movsxd rcx, edi
movzx r10d, word [rax + rcx*2]
nop dword [rax]
movsxd rax, edx
cmp r10w, word [r9 + rax*2]
je 0x140190895
inc edx
cmp edx, r8d
jl 0x140190880
movzx edx, r14w
movsxd rcx, dword [r15 + 0x90]
movsx r8d, dx
lea edx, [rdi + rsi]
cmp dword [r15 + 0x94], ecx
jg 0x1401908c5
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, r12d
mov edx, 0x59
mov rcx, r15
call fcn.140123cf0
jmp 0x1401908f4
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x59
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r13
movzx eax, word [rbx + 0x5e]
inc edi
mov r10, qword [rsp + 0x78]
cmp edi, eax
jl 0x140190860
mov r14d, r13d
mov r9d, dword [rbp - 0x60]
mov edx, 0x1d
mov r8d, dword [rsp + 0x40]
mov rcx, r15
movzx eax, ax
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], esi
call fcn.1401247c0
mov ecx, dword [rsp + 0x40]
mov r10, qword [rsp + 0x78]
mov rdi, qword [rbp - 0x78]
mov rbx, qword [rbp + 0xa0]
mov rsi, qword [rbp + 0x90]
mov rax, qword [rbp + 0xb0]
cmp dword [rax], r13d
jne 0x140190983
test byte [rbx + 0x3c], 0x20
jne 0x140190968
mov edx, ecx
mov r9, rbx
mov rcx, r10
mov r8d, r12d
call fcn.14018ec10
mov rcx, qword [rsp + 0x78]
mov rcx, qword [rcx + 0x48]
test rcx, rcx
je 0x140190983
mov edx, dword [rsp + 0x40]
lea r8, [rbx + 0x68]
call fcn.14018eea0
mov r11, qword [rbp + 0xb0]
mov eax, 0x1000
test dword [rdi + 0x28], eax
je 0x14019099b
mov byte [r11 + 0x35], VarDecAdd
jmp 0x1401909a9
cmp dword [rsp + 0x58], r13d
sete al
add al, 4
mov byte [r11 + 0x35], al
mov dword [r11 + 0x38], r12d
movzx eax, byte [rdi + 0x2a]
and al, 1
mov byte [r11 + 0x36], al
test byte [rdi + 0x28], 0xf
jne 0x1401909c2
mov byte [r11 + 0x37], 1
mov r8, qword [rbp + 0xa0]
test r14d, r14d
je 0x14019168a
mov qword [rsp + 0x78], r13
jmp 0x14019168a
bt edx, 0xd
jae 0x14019163a
dec dword [rsi + 0x44]
mov r12, r13
inc dword [rsi + 0x38]
mov eax, dword [rsi + 0x34]
mov edx, dword [rsi + 0x38]
mov rcx, qword [rbp - 0x40]
mov dword [rsp + 0x74], eax
inc eax
mov dword [rsi + 0x34], eax
mov eax, dword [rsi + 0x44]
mov rcx, qword [rcx + 0x20]
mov dword [rsp + 0x60], eax
mov rax, qword [r11 + 0x38]
mov qword [rbp - 0x28], r13
mov dword [rsp + 0x68], edx
mov dword [rsp + 0x50], r13d
mov rsi, qword [rax]
mov dword [rsp + 0x4c], r13d
mov dword [rsp + 0x70], r13d
mov qword [rbp - 0x68], r13
mov rax, qword [rsi + 0x28]
mov qword [rbp - 0x30], rax
mov byte [rbx + 0x35], 0x41
mov dword [rbx + 0x38], edx
movzx eax, byte [r14 + 0x40]
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x20], rsi
cmp al, 1
jbe 0x140190c97
mov r8, qword [rbp - 0x58]
mov ebx, eax
sub ebx, edi
dec ebx
movsxd rax, ebx
imul rcx, rax, 0x70
add rcx, 0x78
test r8, r8
je 0x140190b65
movzx eax, word [r8 + 0x17c]
cmp rcx, rax
jbe 0x140190ab5
cmp dword [r8 + 0x178], r12d
jne 0x140190a9e
inc dword [r8 + 0x18c]
mov rdx, rcx
mov rcx, r8
call fcn.1400fd3f0
jmp 0x140190b6a
cmp byte [r8 + 0x61], r12b
je 0x140190b58
mov r14, r13
mov qword [rsp + 0x58], r13
jmp 0x140190b72
cmp rcx, 0x80
ja 0x140190b09
mov r14, qword [r8 + 0x1b0]
mov qword [rsp + 0x58], r14
test r14, r14
je 0x140190ae5
mov rax, qword [r14]
mov qword [r8 + 0x1b0], rax
inc dword [r8 + 0x188]
jmp 0x140190b72
mov r14, qword [r8 + 0x1a8]
mov qword [rsp + 0x58], r14
test r14, r14
je 0x140190b09
mov rax, qword [r14]
mov qword [r8 + 0x1a8], rax
inc dword [r8 + 0x188]
jmp 0x140190b72
mov r14, qword [r8 + 0x1a0]
mov qword [rsp + 0x58], r14
test r14, r14
je 0x140190b2d
mov rax, qword [r14]
mov qword [r8 + 0x1a0], rax
inc dword [r8 + 0x188]
jmp 0x140190b72
mov r14, qword [r8 + 0x198]
mov qword [rsp + 0x58], r14
test r14, r14
je 0x140190b51
mov rax, qword [r14]
inc dword [r8 + 0x188]
mov qword [r8 + 0x198], rax
jmp 0x140190b72
inc dword [r8 + 0x190]
mov rdx, rcx
mov rcx, r8
call fcn.1400fd3f0
jmp 0x140190b6a
call fcn.1400fcd60
mov r14, rax
mov qword [rsp + 0x58], rax
test r14, r14
jne 0x140190b83
mov rax, qword [rbp + 0xb8]
jmp 0x140191aac
mov r11, qword [rbp + 0xa0]
lea eax, [rbx + 1]
movzx ecx, al
mov rax, qword [rbp - 0x40]
mov dword [r14 + 4], ecx
mov dword [r14], ecx
movups xmm0, xmmword [rax]
movups xmmword [r14 + 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r14 + 0x18], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [r14 + 0x28], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [r14 + 0x38], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [r14 + 0x48], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [r14 + 0x58], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [r14 + 0x68], xmm0
mov r10, qword [r11 + 8]
cmp ebx, 1
jl 0x140190c5c
mov r8, qword [rbp + 0xb0]
lea rdx, [r14 + 0x78]
add r8, 0x94
mov r9d, ebx
nop word [rax + rax]
movzx eax, byte [r8]
lea rdx, [rdx + 0x70]
imul rcx, rax, 0x70
lea r8, [r8 + 0x60]
movups xmm0, xmmword [rcx + r10 + 8]
movups xmmword [rdx - 0x70], xmm0
movups xmm1, xmmword [rcx + r10 + 0x18]
movups xmmword [rdx - 0x60], xmm1
movups xmm0, xmmword [rcx + r10 + 0x28]
movups xmmword [rdx - 0x50], xmm0
movups xmm1, xmmword [rcx + r10 + 0x38]
movups xmmword [rdx - 0x40], xmm1
movups xmm0, xmmword [rcx + r10 + 0x48]
movups xmmword [rdx - 0x30], xmm0
movups xmm1, xmmword [rcx + r10 + 0x58]
movups xmmword [rdx - 0x20], xmm1
movups xmm0, xmmword [rcx + r10 + 0x68]
movups xmmword [rdx - 0x10], xmm0
sub r9, 1
jne 0x140190c00
mov rcx, qword [rbp - 0x70]
test byte [r11 + 0x3c], 0x10
mov edx, 0x48
jne 0x140190d09
test byte [rcx + 0x40], 0x80
jne 0x140190ca9
mov rbx, qword [rbp + 0x90]
xor r8d, r8d
mov rcx, r15
inc dword [rbx + 0x38]
mov eax, dword [rbx + 0x38]
mov r9d, eax
mov dword [rsp + 0x50], eax
call fcn.140123ea0
jmp 0x140190cff
mov r14, qword [r14 + 8]
mov r11, qword [rbp + 0xa0]
mov qword [rsp + 0x58], r14
jmp 0x140190c60
mov rbx, qword [rcx + 0x10]
test rbx, rbx
je 0x140190cc4
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140190cc4
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140190cb2
mov rcx, qword [rbp + 0x90]
mov edx, WSAAsyncSelect
mov edi, dword [rcx + 0x34]
mov r8d, edi
mov dword [rsp + 0x50], edi
lea eax, [rdi + 1]
mov dword [rcx + 0x34], eax
mov rcx, r15
movzx r9d, word [rbx + 0x5e]
call fcn.140123ea0
mov rdx, rbx
mov rbx, qword [rbp + 0x90]
mov rcx, rbx
call fcn.140125220
inc dword [rbx + 0x38]
mov eax, dword [rbx + 0x38]
mov dword [rsp + 0x4c], eax
movsxd rdx, dword [r15 + 0x90]
mov dword [rsp + 0x6c], edx
cmp dword [r15 + 0x94], edx
jg 0x140190d3c
mov r9d, dword [rsp + 0x68]
xor r8d, r8d
mov rcx, r15
mov dword [rsp + 0x20], r13d
lea edx, [r8 + 0x45]
call fcn.140123cf0
mov dword [rsp + 0x6c], eax
jmp 0x140190d6b
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov edx, dword [rsp + 0x68]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov rax, qword [rbp - 0x38]
cmp dword [rax + 0x14], 1
jle 0x140190f54
mov r14, qword [rbp + 0x90]
mov ebx, r13d
mov r15, qword [rbp - 0x58]
mov rdi, r13
mov r8d, 0x1fff
mov rcx, qword [rax + 0x20]
movsxd rax, ebx
shl rax, 6
add rax, rcx
mov rdx, qword [rdi + rcx]
cmp rax, rsi
je 0x140190de5
test byte [rdi + rcx + 0x12], 6
jne 0x140190de5
test word [rdi + rcx + 0x14], r8w
je 0x140190de5
test rdx, rdx
je 0x140190dcb
xor r9d, r9d
xor r8d, r8d
mov rcx, r15
call fcn.14013eb20
jmp 0x140190dce
mov rax, r13
mov r8, rax
mov rdx, r12
mov rcx, r14
call fcn.14013e370
mov r12, rax
mov r8d, 0x1fff
mov rax, qword [rbp - 0x38]
inc ebx
add rdi, 0x40
cmp ebx, dword [rax + 0x14]
jl 0x140190d90
mov r15, qword [rbp + 0x98]
mov r14, qword [rsp + 0x58]
mov rdi, qword [rbp + 0x90]
mov qword [rbp - 0x68], r12
test r12, r12
je 0x140190f60
mov rcx, qword [rdi]
mov eax, 0x48
cmp ax, word [rcx + 0x17c]
jbe 0x140190e5a
cmp dword [rcx + 0x178], r13d
jne 0x140190e39
inc dword [rcx + 0x18c]
jmp 0x140190ed8
cmp byte [rcx + 0x61], r13b
je 0x140190ed8
mov rbx, r13
mov rcx, qword [rdi]
mov rdx, r12
call fcn.14013e8f0
mov qword [rbp - 0x68], rbx
jmp 0x140190f63
mov rbx, qword [rcx + 0x1b0]
test rbx, rbx
je 0x140190e78
mov rax, qword [rbx]
mov qword [rcx + 0x1b0], rax
inc dword [rcx + 0x188]
jmp 0x140190eec
mov rbx, qword [rcx + 0x1a8]
test rbx, rbx
je 0x140190e96
mov rax, qword [rbx]
mov qword [rcx + 0x1a8], rax
inc dword [rcx + 0x188]
jmp 0x140190eec
mov rbx, qword [rcx + 0x1a0]
test rbx, rbx
je 0x140190eb4
mov rax, qword [rbx]
mov qword [rcx + 0x1a0], rax
inc dword [rcx + 0x188]
jmp 0x140190eec
mov rbx, qword [rcx + 0x198]
test rbx, rbx
je 0x140190ed2
mov rax, qword [rbx]
inc dword [rcx + 0x188]
mov qword [rcx + 0x198], rax
jmp 0x140190eec
inc dword [rcx + 0x190]
mov rdx, rax
call fcn.1400fd3f0
mov rbx, rax
test rax, rax
je 0x140190e46
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov rcx, rbx
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
mov qword [rbx + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [rbx + 0x32], ax
mov byte [rbx], 0x2c
mov qword [rbx + 0x18], r12
mov eax, dword [r12 + 4]
and eax, 0x200104
or dword [rbx + 4], eax
call fcn.14013de30
mov rax, qword [rdi]
mov r8d, dword [rax + 0x88]
cmp dword [rbx + 0x28], r8d
jle 0x140190e51
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, rdi
call fcn.140100f00
mov qword [rbp - 0x68], rbx
jmp 0x140190f63
mov rdi, qword [rbp + 0x90]
mov rbx, r13
jmp 0x140190f63
mov rbx, r12
mov rax, qword [rbp + 0xa0]
lea r8, str.MULTI_INDEX_OR
mov r12d, 0x400
mov edx, 1
mov rcx, rdi
movzx eax, word [rax + 0x3c]
and ax, r12w
or ax, 0x20
mov word [rbp + 0xa8], ax
call fcn.1401244f0
mov rax, qword [rbp - 0x30]
mov edi, r13d
mov dword [rsp + 0x44], r13d
cmp dword [rax + 0x14], r13d
jle 0x14019143f
mov ecx, dword [rsp + 0x40]
mov r12, r13
mov qword [rbp - 0x48], r13
nop dword [rax + rax]
mov rax, qword [rax + 0x20]
cmp dword [r12 + rax + 0x1c], ecx
je 0x140190fdc
mov edx, 0x400
test word [r12 + rax + 0x14], dx
je 0x140191416
mov rbx, qword [r12 + rax]
mov esi, r13d
mov rax, qword [rbp - 0x68]
mov dword [rbp - 0x78], r13d
test rax, rax
je 0x140190ff7
mov qword [rax + 0x10], rbx
mov rbx, rax
mov rcx, qword [rbp + 0x90]
lea r9d, [rdi + 1]
lea r8, str.INDEX__d
mov edx, 1
call fcn.1401244f0
mov eax, dword [rsp + 0x74]
xor r9d, r9d
mov rcx, qword [rbp + 0x90]
mov r8, rbx
mov dword [rsp + 0x30], eax
mov rdx, r14
movzx eax, word [rbp + 0xa8]
mov word [rsp + 0x28], ax
mov qword [rsp + 0x20], r13
call fcn.14019b380
mov qword [rbp - 0x80], rax
mov rbx, rax
test rax, rax
je 0x140191412
mov rcx, qword [rbp + 0x90]
lea r8, [rax + 0x398]
xor r9d, r9d
mov rdx, r14
call fcn.14018d320
mov rax, qword [rbp + 0xa0]
test byte [rax + 0x3c], 0x10
jne 0x1401912c0
mov rax, qword [rbp - 0x30]
mov ebx, edi
mov ecx, dword [rax + 0x14]
mov rax, 0xffffffffffffffff
dec ecx
cmp edi, ecx
cmove ebx, eax
mov rax, qword [rbp - 0x70]
mov dword [rbp - 0x50], ebx
test byte [rax + 0x40], 0x80
jne 0x1401910db
mov esi, dword [rsp + 0x4c]
mov edx, 0x7f
mov r8d, dword [rsp + 0x40]
mov r9d, esi
mov rcx, r15
call fcn.140123ea0
mov r8d, dword [rsp + 0x50]
xor r9d, r9d
mov dword [rsp + 0x28], ebx
mov rcx, r15
mov dword [rsp + 0x20], esi
lea edx, [r9 + 0x2d]
call fcn.1401247c0
mov esi, eax
jmp 0x1401912bc
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1401910f6
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1401910f6
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1401910e4
movzx r12d, word [rbx + 0x5e]
mov rdx, qword [rbp + 0x90]
cmp r12d, 1
jne 0x140191129
movzx eax, byte [rdx + 0x1f]
test al, al
jne 0x140191118
inc dword [rdx + 0x38]
mov esi, dword [rdx + 0x38]
jmp 0x140191153
dec al
movzx eax, al
mov byte [rdx + 0x1f], al
mov esi, dword [rdx + rax*4 + 0xd4]
jmp 0x140191153
mov ecx, dword [rdx + 0x28]
mov esi, dword [rdx + 0x2c]
mov dword [rsp + 0x54], esi
cmp r12d, ecx
jg 0x140191147
lea eax, [rsi + r12]
sub ecx, r12d
mov dword [rdx + 0x2c], eax
mov dword [rdx + 0x28], ecx
jmp 0x140191157
mov eax, dword [rdx + 0x38]
lea esi, [rax + 1]
add eax, r12d
mov dword [rdx + 0x38], eax
mov dword [rsp + 0x54], esi
mov rdi, r13
mov r14, r12
test r12d, r12d
je 0x14019119b
mov r13, qword [rbp - 0x70]
mov r12d, dword [rsp + 0x40]
nop dword [rax + rax]
mov rax, qword [rbx + 8]
mov r8d, r12d
mov rdx, r13
mov dword [rsp + 0x20], esi
mov rcx, r15
movsx r9d, word [rax + rdi*2]
call fcn.1401439b0
inc esi
inc rdi
cmp rdi, r14
jl 0x140191170
xor r13d, r13d
mov r12d, r14d
mov edi, dword [rbp - 0x50]
mov ebx, dword [rsp + 0x54]
mov r14d, dword [rsp + 0x50]
test edi, edi
je 0x1401911d2
xor r9d, r9d
mov dword [rsp + 0x28], r12d
mov r8d, r14d
mov dword [rsp + 0x20], ebx
mov rcx, r15
lea edx, [r9 + 0x1e]
call fcn.1401247c0
mov esi, eax
test edi, edi
js 0x140191272
jmp 0x1401911d5
mov esi, dword [rbp - 0x78]
movsxd rcx, dword [r15 + 0x90]
mov edx, dword [rsp + 0x4c]
cmp dword [r15 + 0x94], ecx
jg 0x140191202
mov dword [rsp + 0x20], edx
mov r9d, r12d
mov edx, 0x5b
mov r8d, ebx
mov rcx, r15
call fcn.140123cf0
jmp 0x140191230
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x5b
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r13
mov r9d, dword [rsp + 0x4c]
mov r8d, r14d
mov dword [rsp + 0x28], r12d
mov edx, 0x82
mov rcx, r15
mov dword [rsp + 0x20], ebx
call fcn.1401247c0
test edi, edi
je 0x140191272
movsxd rax, dword [r15 + 0x90]
test eax, eax
jle 0x140191272
lea rcx, [rax + rax*2]
mov edx, reloc.WS2_32.dll_recv
mov rax, qword [r15 + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov edi, dword [rsp + 0x44]
mov r14, qword [rsp + 0x58]
cmp r12d, 1
jne 0x1401912a4
test ebx, ebx
je 0x1401912b8
mov rdx, qword [rbp + 0x90]
mov r12, qword [rbp - 0x48]
movzx eax, byte [rdx + 0x1f]
cmp al, 8
jae 0x1401912bc
mov dword [rdx + rax*4 + 0xd4], ebx
inc byte [rdx + 0x1f]
jmp 0x1401912bc
mov rdx, qword [rbp + 0x90]
cmp r12d, dword [rdx + 0x28]
jle 0x1401912b8
mov dword [rdx + 0x28], r12d
mov dword [rdx + 0x2c], ebx
mov r12, qword [rbp - 0x48]
mov rbx, qword [rbp - 0x80]
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x1401912ee
mov r9d, dword [rsp + 0x60]
mov edx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov r8d, dword [rsp + 0x68]
mov rcx, r15
mov dword [rsp + 0x20], r13d
call fcn.140123cf0
jmp 0x140191324
mov edx, dword [rsp + 0x68]
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x60]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
test esi, esi
je 0x14019135b
mov edx, dword [r15 + 0x90]
jns 0x140191334
lea esi, [rdx - 1]
mov rax, qword [r15]
cmp byte [rax + 0x61], 0
je 0x140191346
lea rax, [0x14025a1e0]
jmp 0x140191358
movsxd rax, esi
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
test byte [rbx + 0x44], 2
mov ecx, 1
mov eax, dword [rsp + 0x70]
mov rdx, qword [rbx + 0x3e8]
cmovne eax, ecx
mov dword [rsp + 0x70], eax
mov eax, 0x200
test dword [rdx + 0x28], eax
je 0x1401913b1
test edi, edi
je 0x14019138e
mov rax, qword [rbp - 0x28]
cmp qword [rdx + 0x20], rax
jne 0x1401913b1
mov rax, qword [rbp - 0x70]
test byte [rax + 0x40], 0x80
je 0x1401913a7
mov rax, qword [rdx + 0x20]
mov ecx, dword [rax + 0x64]
and cl, 3
cmp cl, 2
je 0x1401913b1
mov rsi, qword [rdx + 0x20]
mov qword [rbp - 0x28], rsi
jmp 0x1401913b5
mov qword [rbp - 0x28], r13
mov rcx, rbx
call fcn.14019c3a0
mov r8, qword [rbp + 0x90]
mov ecx, dword [r8 + 0x128]
test ecx, ecx
jne 0x1401913d4
mov eax, r13d
jmp 0x14019140b
mov rdx, qword [r8 + 0x10]
test ecx, ecx
jns 0x1401913e4
mov ecx, dword [rdx + 0x90]
dec ecx
mov rax, qword [rdx]
cmp byte [rax + 0x61], 0
je 0x1401913f6
lea rax, [0x14025a1e0]
jmp 0x140191408
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x88]
lea rax, [rax + rcx*8]
mov eax, dword [rax + 8]
mov dword [r8 + 0x128], eax
mov ecx, dword [rsp + 0x40]
mov rax, qword [rbp - 0x30]
inc edi
add r12, 0x40
mov dword [rsp + 0x44], edi
mov qword [rbp - 0x48], r12
cmp edi, dword [rax + 0x14]
jl 0x140190fc0
mov rsi, qword [rbp - 0x20]
mov r12d, 0x400
mov rbx, qword [rbp - 0x68]
mov r8, qword [rbp + 0x90]
mov ecx, dword [r8 + 0x128]
test ecx, ecx
jne 0x140191456
mov eax, r13d
jmp 0x14019148d
mov rdx, qword [r8 + 0x10]
test ecx, ecx
jns 0x140191466
mov ecx, dword [rdx + 0x90]
dec ecx
mov rax, qword [rdx]
cmp byte [rax + 0x61], 0
je 0x140191478
lea rax, [0x14025a1e0]
jmp 0x14019148a
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x88]
lea rax, [rax + rcx*8]
mov eax, dword [rax + 8]
mov dword [r8 + 0x128], eax
mov rax, qword [rbp - 0x28]
mov r8, qword [rbp + 0xb0]
mov qword [r8 + 0x40], rax
test rax, rax
je 0x1401914b0
mov eax, dword [rsp + 0x74]
mov dword [r8 + 8], eax
test rbx, rbx
je 0x1401914d1
mov qword [rbx + 0x10], r13
mov rdx, rbx
mov rbx, qword [rbp - 0x58]
mov rcx, rbx
call fcn.14013e8f0
mov r8, qword [rbp + 0xb0]
jmp 0x1401914d5
mov rbx, qword [rbp - 0x58]
mov ecx, dword [rsp + 0x6c]
mov edx, dword [r15 + 0x90]
test ecx, ecx
jns 0x1401914e7
lea ecx, [rdx - 1]
mov rax, qword [r15]
cmp byte [rax + 0x61], 0
je 0x1401914f9
lea rax, [0x14025a1e0]
jmp 0x14019150b
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 4], edx
movsxd rcx, dword [r15 + 0x90]
mov edx, dword [r8 + 0xc]
cmp dword [r15 + 0x94], ecx
jg 0x14019153b
xor r8d, r8d
mov dword [rsp + 0x20], r13d
mov r9d, edx
mov rcx, r15
lea edx, [r8 + 0xb]
call fcn.140123cf0
jmp 0x140191566
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], reloc.OLEAUT32.dll_VariantChangeType
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov rcx, qword [r15 + 0x18]
mov edx, dword [rsp + 0x60]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140191585
mov r8d, edx
mov rdx, r15
call fcn.1401248e0
jmp 0x140191596
mov rcx, qword [rcx + 0x50]
mov eax, dword [r15 + 0x90]
movsxd rdx, edx
mov dword [rcx + rdx*4], eax
mov r8, qword [rbp + 0xa0]
cmp byte [r8 + 0x40], 1
jbe 0x1401915bb
test r14, r14
je 0x1401915bb
mov rdx, r14
mov rcx, rbx
call fcn.1400fd030
mov r8, qword [rbp + 0xa0]
cmp dword [rsp + 0x70], 0
mov r11, qword [rbp + 0xb0]
jne 0x140191631
test byte [rsi + 0x12], 4
mov edx, r13d
jne 0x140191631
cmp dword [r11], 0
je 0x1401915e1
mov rax, qword [rsi]
test byte [rax + 4], 1
je 0x140191631
mov rax, qword [rsi + 0x38]
test qword [r11 + 0x58], rax
jne 0x140191631
test edx, edx
je 0x140191607
movzx eax, word [rsi + 0x12]
test r12w, ax
je 0x140191607
mov ecx, 0x200
or ax, cx
mov word [rsi + 0x12], ax
jmp 0x14019160c
or word [rsi + 0x12], 4
movsxd rcx, dword [rsi + 0x18]
test ecx, ecx
js 0x140191631
mov rax, qword [rsi + 8]
mov rsi, rcx
shl rsi, 6
add rsi, qword [rax + 0x20]
add byte [rsi + 0x16], 0xff
jne 0x140191631
inc edx
test byte [rsi + 0x12], 4
je 0x1401915d2
mov rsi, qword [rbp + 0x90]
jmp 0x14019168a
test r8b, 0x20
je 0x140191646
mov byte [rbx + 0x35], VarDecAdd
jmp 0x140191680
mov ecx, r10d
lea r14, [0x140000000]
movzx eax, byte [rcx + r14 + 0x1f1064]
movzx edx, byte [rcx + r14 + 0x1f1988]
mov rcx, r15
mov byte [rbx + 0x35], al
mov eax, dword [rsp + 0x40]
mov r8d, eax
mov dword [rbx + 0x38], eax
call fcn.140123ea0
inc eax
mov byte [rbx + 0x37], 1
mov dword [rbx + 0x3c], eax
mov r11, rbx
mov r8, qword [rbp + 0xa0]
mov r9, qword [rsp + 0x78]
lea r10, [r8 + 0x68]
mov rax, r9
neg rax
sbb edx, edx
add edx, 2
mov dword [rbp + 0xa8], edx
nop dword [rax]
nop dword [rax + rax]
mov r14d, dword [r10 + 0x14]
mov r12d, r13d
mov rbx, qword [r10 + 0x20]
test r14d, r14d
jle 0x1401917a0
nop dword [rax]
nop dword [rax + rax]
movzx ecx, word [rbx + 0x12]
mov edi, r13d
test cl, 6
jne 0x14019176b
mov rax, qword [rbx + 0x38]
test qword [r11 + 0x58], rax
je 0x1401916f1
or dword [r8 + 0x44], 2
jmp 0x14019176b
mov rax, qword [rbp - 0x40]
mov rsi, qword [rbx]
test byte [rax + 0x3c], 8
je 0x140191704
test byte [rsi + 4], 1
je 0x140191764
cmp edx, 1
jne 0x14019191f
mov eax, dword [r11 + 4]
xorps xmm0, xmm0
mov dword [rbp - 0x18], eax
lea rax, [0x140146d90]
mov qword [rbp - 8], rax
lea rax, [rbp - 0x20]
mov qword [rbp + 0x18], rax
mov qword [rbp - 0x10], r13
mov qword [rbp + 0x10], r13
mov qword [rbp - 0x20], r9
movdqu xmmword [rbp], xmm0
test rsi, rsi
je 0x140191753
mov rdx, rsi
lea rcx, [rbp - 0x10]
call fcn.1401395a0
mov r11, qword [rbp + 0xb0]
cmp word [rbp + 0x14], 0
je 0x140191924
mov r12d, 2
mov rsi, qword [rbp + 0x90]
mov edx, dword [rbp + 0xa8]
dec r14d
mov r11, qword [rbp + 0xb0]
add rbx, 0x40
mov r8, qword [rbp + 0xa0]
mov r9, qword [rsp + 0x78]
test r14d, r14d
jg 0x1401916d0
mov r10, qword [rbp - 0x38]
mov rbx, qword [r10 + 0x20]
mov r14d, dword [r10 + 0x14]
mov r11, qword [rbp + 0xb0]
mov edx, r12d
mov r8, qword [rbp + 0xa0]
mov dword [rbp + 0xa8], edx
test r12d, r12d
jg 0x1401916b0
test r14d, r14d
jle 0x1401918d3
mov r15d, dword [rsp + 0x40]
add rbx, 0x14
mov r12, qword [rbp + 0xb8]
nop dword [rax]
test byte [rbx - 2], 6
jne 0x1401918b8
movzx eax, word [rbx]
mov edx, reloc.OLEAUT32.dll_VariantChangeType
test al, 0x82
setne cl
bt ax, dx
setb al
test al, cl
je 0x1401918b8
cmp dword [rbx + 8], r15d
jne 0x1401918b8
mov rax, qword [rbp - 0x40]
test byte [rax + 0x3c], 8
jne 0x1401918b8
mov r8d, dword [rbx + 0x14]
mov r9, r12
mov rdi, qword [rbx - 0x14]
mov edx, r15d
mov qword [rsp + 0x28], r13
mov rcx, r10
mov dword [rsp + 0x20], 0x83
call fcn.140195580
mov rdx, rax
test rax, rax
je 0x1401918b8
test byte [rax + 0x12], 4
jne 0x1401918b8
test byte [rax + 0x14], 1
je 0x14019186e
mov rax, qword [rax]
test dword [rax + 4], 0x800
je 0x14019186e
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
jg 0x1401918b8
mov rax, qword [rdx]
mov r9d, reloc.WS2_32.dll_recv
mov r8d, dword [rbp - 0x60]
lea rdx, [rbp - 0x10]
mov rcx, rsi
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x20], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rbp + 0x30], xmm0
mov rax, qword [rdi + 0x10]
mov qword [rbp], rax
call fcn.140145f10
mov r10, qword [rbp - 0x38]
dec r14d
add rbx, 0x40
test r14d, r14d
jg 0x1401917e0
mov r15, qword [rbp + 0x98]
mov rdi, qword [rbp + 0xb0]
mov r9d, dword [rdi]
test r9d, r9d
je 0x140191aa8
mov eax, dword [r15 + 0x90]
mov dword [rdi + 0x1c], eax
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x140191a2e
mov edx, 0x45
mov dword [rsp + 0x20], r13d
mov rcx, r15
lea r8d, [rdx - 0x44]
call fcn.140123cf0
jmp 0x140191a62
cmp edx, 3
jge 0x14019194a
movzx ecx, word [rbx + 0x12]
bt cx, 0xc
jae 0x14019194a
mov rsi, qword [rbp + 0x90]
test r12d, r12d
jne 0x14019176b
mov r12d, 3
jmp 0x14019176b
bt cx, 9
jae 0x1401919c3
mov eax, dword [r11 + 0x2c]
test eax, eax
je 0x1401919c3
movsxd rdi, dword [r15 + 0x90]
mov r8d, eax
and eax, 1
shr r8d, 1
lea edx, [rax*2 + 0x12]
cmp dword [r15 + 0x94], edi
jg 0x14019198d
xor r9d, r9d
mov dword [rsp + 0x20], r13d
mov rcx, r15
call fcn.140123cf0
mov edi, eax
jmp 0x1401919c3
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], r13w
mov dword [rax + rcx*8 + 4], r8d
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], 0
mov r8d, dword [rbp - 0x60]
mov rdx, rsi
mov rsi, qword [rbp + 0x90]
mov r9d, reloc.WS2_32.dll_recv
mov rcx, rsi
call fcn.140145f10
test edi, edi
je 0x140191a24
mov rax, qword [r15]
mov edx, dword [r15 + 0x90]
cmp byte [rax + 0x61], 0
je 0x140191a07
lea rax, [0x14025a1e0]
mov dword [rax + 8], edx
or word [rbx + 0x12], 4
jmp 0x14019176b
lea eax, [rdx - 1]
test edi, edi
cmovns eax, edi
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 8], edx
lea rax, [rax + rcx*8]
or word [rbx + 0x12], 4
jmp 0x14019176b
lea eax, [rcx + 1]
mov edx, 1
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov r14, qword [rbp - 0x38]
cmp dword [r14 + 0x14], 0
mov rbx, qword [r14 + 0x20]
jle 0x140191aa8
test byte [rbx + 0x12], 6
jne 0x140191a9b
mov rax, qword [rbx + 0x38]
test qword [rdi + 0x58], rax
jne 0x140191a9b
mov r8d, dword [rbp - 0x60]
mov r9d, reloc.WS2_32.dll_recv
mov rdx, qword [rbx]
mov rcx, rsi
call fcn.140145f10
or word [rbx + 0x12], 4
inc r13d
add rbx, 0x40
cmp r13d, dword [r14 + 0x14]
jl 0x140191a71
mov rax, qword [rdi + 0x58]
add rsp, 0x148
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret