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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x170
mov rax, qword [0x140125080]
xor rax, rsp
mov qword [rsp + 0x160], rax
mov r15, qword [rcx]
lea rax, [rcx + 0x60]
mov r11, rcx
movsxd r10, edx
mov qword [rsp + 0xe0], rax
xor r13d, r13d
mov qword [rsp + 0xa8], rcx
mov rdi, r8
mov rax, qword [r15]
mov edx, r13d
mov rsi, qword [r15 + 0x10]
lea r14, [r11 + 0x390]
imul rcx, r10, 0x58
mov qword [rsp + 0x88], rax
mov r12d, 1
add r14, rcx
mov qword [rsp + 0xf8], r8
movsxd r8, dword [r11 + 0x288]
mov dword [rsp + 0x78], r10d
mov qword [rsp + 0xb0], r15
movzx eax, byte [r14 + 0x2c]
mov r9, qword [r14 + 0x48]
imul rbx, rax, 0x78
mov qword [rsp + 0xd0], rsi
add rbx, qword [r11 + 8]
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x70], r9
mov ebp, dword [rbx + 0x50]
mov dword [rsp + 0x54], ebp
test r8, r8
jle 0x14009199d
mov ecx, r13d
lea rax, [r11 + 0x28c]
cmp dword [rax], ebp
je 0x140091a50
inc edx
inc rcx
add rax, 4
cmp rcx, r8
jl 0x140091987
mov rax, r13
not rax
mov ecx, r10d
and rax, rdi
mov qword [r14 + 0x50], rax
mov rdi, qword [r11 + 0x50]
shr rdi, cl
and edi, r12d
test byte [r9 + 0x28], 0x40
mov qword [rsp + 0x80], rdi
je 0x1400919d5
test byte [r11 + 0x38], 0x20
mov dword [rsp + 0x98], r12d
je 0x1400919dd
mov dword [rsp + 0x98], r13d
mov rcx, rsi
call fcn.14002c340
mov rcx, rsi
mov dword [rsp + 0x68], eax
mov r12d, eax
mov dword [r14 + 0x10], eax
mov dword [r14 + 0xc], eax
call fcn.14002c340
mov r11, r14
mov dword [rsp + 0xb8], eax
mov dword [r14 + 0x18], eax
cmp byte [r14 + 0x2c], r13b
jbe 0x140091a8c
test byte [rbx + 0x44], 8
je 0x140091a8c
mov edx, dword [r15 + 0x38]
inc edx
mov dword [r15 + 0x38], edx
mov dword [r14], edx
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x140091a5d
mov r9d, edx
mov dword [rsp + 0x20], r13d
mov edx, 0x4c
xor r8d, r8d
mov rcx, rsi
call fcn.14002bc90
mov r11, r14
jmp 0x140091a8c
mov ecx, edx
mov rax, r12
shl rax, cl
jmp 0x1400919a0
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x4c
mov byte [rax + rcx*8 + 3], r13b
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov r8d, dword [rbx + 0x48]
test r8b, 0x10
je 0x140091b72
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
mov edi, dword [rbx + 0x3c]
mov edx, dword [rbx + 0x38]
cmp dword [rax + 0x3c], ecx
jg 0x140091ac9
mov dword [rsp + 0x20], edx
xor r9d, r9d
mov edx, send
mov r8d, edi
mov rcx, rsi
call fcn.14002bc90
jmp 0x140091af7
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], send
mov byte [rax + rcx*8 + 3], r13b
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r13
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x140091b32
mov r9d, r12d
mov dword [rsp + 0x20], r13d
mov r8d, edi
mov edx, send
mov rcx, rsi
call fcn.14002bc90
mov edx, eax
mov dword [r14 + 0x34], eax
mov r11, r14
mov byte [r14 + 0x2d], 0xd
jmp 0x14009204f
lea rcx, [rdx + rdx*2]
mov r11, r14
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], send
mov byte [rax + rcx*8 + 3], r13b
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov dword [r14 + 0x34], edx
mov byte [r14 + 0x2d], 0xd
jmp 0x14009204f
mov r9, qword [rsp + 0x70]
mov edx, dword [r9 + 0x28]
bt edx, 0xa
jae 0x1400920af
movzx ebp, word [r9 + 0x2c]
inc dword [r15 + 0x4c]
lea ecx, [rbp + 2]
cmp ecx, 1
jne 0x140091bbc
movzx eax, byte [r15 + 0x1f]
test al, al
jne 0x140091ba9
inc dword [r15 + 0x38]
mov r14d, dword [r15 + 0x38]
jmp 0x140091beb
dec al
movzx eax, al
mov byte [r15 + 0x1f], al
mov r14d, dword [r15 + rax*4 + 0x18c]
jmp 0x140091beb
mov edx, dword [r15 + 0x28]
mov r14d, dword [r15 + 0x2c]
mov dword [rsp + 0x40], r14d
cmp ecx, edx
jg 0x140091bdd
lea eax, [rcx + r14]
sub edx, ecx
mov dword [r15 + 0x2c], eax
mov dword [r15 + 0x28], edx
jmp 0x140091bf0
mov eax, dword [r15 + 0x38]
lea r14d, [rax + 1]
add eax, ecx
mov dword [r15 + 0x38], eax
mov dword [rsp + 0x40], r14d
mov r13d, dword [r11 + 0xc]
xor edi, edi
mov ebx, edi
test ebp, ebp
je 0x140091c7d
mov rsi, qword [rsp + 0x80]
lea r12d, [r14 + 2]
mov r14d, 1
mov rax, qword [r9 + 0x38]
mov rdx, qword [rdi + rax]
test rdx, rdx
je 0x140091c64
lea r8d, [r12 + rbx]
mov rcx, r15
test byte [rdx + 0x14], r14b
je 0x140091c4b
mov dword [rsp + 0x28], r8d
mov r9d, ebx
mov r8, r11
mov dword [rsp + 0x20], esi
call fcn.140090410
mov r11, qword [rsp + 0x48]
mov r13d, dword [r11 + 0x10]
jmp 0x140091c5f
mov rdx, qword [rdx]
mov r9d, r14d
mov rdx, qword [rdx + 0x18]
call fcn.1400917a0
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x70]
inc ebx
add rdi, 8
cmp ebx, ebp
jl 0x140091c12
mov rsi, qword [rsp + 0xd0]
xor edi, edi
mov r14d, dword [rsp + 0x40]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
mov edx, dword [r9 + 0x18]
cmp dword [rax + 0x3c], ecx
jg 0x140091caa
mov r8d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x4c
mov r9d, r14d
mov rcx, rsi
call fcn.14002bc90
jmp 0x140091cd8
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x4c
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov rax, qword [rsi + 0x18]
lea edx, [r14 + 1]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x140091d05
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x4c
mov r8d, ebp
mov rcx, rsi
call fcn.14002bc90
jmp 0x140091d32
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x4c
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov rcx, qword [rsp + 0x70]
mov edx, 0xfffffff5
mov ebx, dword [rsp + 0x54]
mov eax, 0xfffffffe
mov r9d, r13d
mov r8d, ebx
cmp byte [rcx + 0x1c], 0
cmovne eax, edx
mov edx, reloc.WS2_32.dll_inet_addr
mov dword [rsp + 0x30], eax
mov rax, qword [rcx + 0x20]
mov rcx, rsi
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r14d
call fcn.14002bff0
mov r11, qword [rsp + 0x48]
lea r12d, [rbp - 1]
mov rdx, qword [rsp + 0x70]
mov eax, 0x46
mov ecx, 0xa1
mov byte [rdx + 0x1c], 0
mov dword [r11 + 0x30], ebx
mov rbx, qword [rsp + 0xa8]
cmp byte [rbx + 0x3d], 0
cmovne eax, ecx
mov byte [r11 + 0x2d], al
mov eax, dword [rsi + 0xb8]
mov dword [r11 + 0x34], eax
test r12d, r12d
js 0x140092044
movsxd rax, dword [r11 + 0x38]
lea ecx, [r12 + 2]
lea r13, [rax + rax*2]
shl r13, 2
add ecx, r14d
lea r14, [rbp*8 - 8]
mov dword [rsp + 0x50], ecx
nop word [rax + rax]
mov rax, qword [rdx + 0x38]
mov rbx, qword [r14 + rax]
cmp r12d, 0x10
jae 0x140091e93
movzx eax, word [rdx + 0x1e]
movzx ecx, r12w
shr ax, cl
test al, 1
je 0x140091e8f
mov r8d, edi
test rbx, rbx
je 0x14009202c
movzx ecx, word [rbx + 0x12]
test cl, 4
jne 0x140092027
cmp dword [r11], 0
je 0x140091e31
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x140092027
mov rax, qword [rbx + 0x38]
test qword [r11 + 0x50], rax
jne 0x140092027
test r8d, r8d
je 0x140091e55
bt cx, 0xa
jae 0x140091e55
mov eax, 0x200
or cx, ax
jmp 0x140091e59
or cx, 4
mov edx, send
mov rax, rbx
mov word [rbx + rdx], cx
movsxd rcx, dword [rbx + 0x18]
test ecx, ecx
js 0x140092027
mov rax, qword [rbx + 8]
mov rbx, rcx
shl rbx, 6
add rbx, qword [rax + 0x20]
add byte [rbx + 0x16], 0xff
jne 0x140092027
inc r8d
jmp 0x140091e11
mov ecx, dword [rsp + 0x50]
test byte [rbx + 0x14], 1
je 0x140092030
mov rbp, qword [rsp + 0x88]
cmp byte [rbp + 0x55], 0
jne 0x140091f4c
mov rax, qword [r11 + 0x40]
sub r13, 0xc
mov ecx, dword [rax + r13 + 4]
test ecx, ecx
jns 0x140091ec8
mov ecx, dword [rsi + 0xb8]
dec ecx
mov rax, qword [rsi]
cmp byte [rax + 0x55], 0
je 0x140091eda
lea rax, [0x14012aae0]
jmp 0x140091ee9
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rax, [rax + rcx*8]
mov r8d, dword [rax + 0xc]
mov r9d, dword [rax + 8]
mov r10d, dword [rax + 4]
movzx edx, byte [rax]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x140091f1a
mov dword [rsp + 0x20], r8d
mov rcx, rsi
mov r8d, r10d
call fcn.14002bc90
jmp 0x140091f4c
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], dl
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r10d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rdi
mov byte [rax + rcx*8 + 1], 0
mov rcx, qword [r15]
mov r9d, 1
xor r8d, r8d
mov edx, 0x25
call fcn.1400443c0
mov rdi, rax
test rax, rax
je 0x140092020
mov rcx, rax
call fcn.1400442d0
mov rax, qword [r15]
mov r8d, dword [rax + 0x7c]
cmp dword [rdi + 0x28], r8d
jle 0x140091f92
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, r15
call fcn.140009d30
mov rax, qword [rbx]
mov edx, 0x49
mov rcx, qword [rax + 0x10]
mov qword [rdi + 0x10], rcx
mov rcx, rbp
call fcn.140006e60
mov rcx, rax
test rax, rax
je 0x140092009
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rcx], xmm0
xor r9d, r9d
mov rdx, rdi
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
mov qword [rcx + 0x40], rax
lea rax, [rcx + 0x48]
mov qword [rcx + 8], rax
mov byte [rcx], 0x9d
mov word [rcx + 0x32], 0xffff
mov byte [rax], 0
mov eax, dword [rsp + 0x50]
mov dword [rcx + 0x28], 1
mov qword [rdi + 0x18], rcx
mov dword [rcx + 0x2c], eax
mov rcx, qword [rsp + 0x48]
mov r8d, dword [rcx + 0x18]
mov rcx, r15
call fcn.14004c660
jmp 0x14009200d
mov qword [rdi + 0x18], rcx
mov rdx, rdi
mov qword [rdi + 0x10], 0
mov rcx, rbp
call fcn.140044c80
mov r11, qword [rsp + 0x48]
xor edi, edi
mov rdx, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x50]
dec ecx
sub r14, 8
sub r12d, 1
mov dword [rsp + 0x50], ecx
jns 0x140091de0
mov rcx, r15
call fcn.140049ac0
xor r13d, r13d
mov r12, qword [rsp + 0xe0]
mov ebp, dword [r12 + 0x14]
mov rdi, qword [r12 + 0x20]
test ebp, ebp
jle 0x1400944e8
mov r12d, dword [rsp + 0xb8]
nop dword [rax]
nop word [rax + rax]
movzx ecx, word [rdi + 0x12]
mov ebx, r13d
test cl, 6
jne 0x1400944cd
mov rax, qword [rdi + 0x38]
test qword [r11 + 0x50], rax
je 0x1400943ff
mov rax, qword [rsp + 0xa8]
mov byte [rax + 0x3e], 1
jmp 0x1400944cd
test dl, 5
setne cl
bt edx, 8
setb al
test al, cl
je 0x1400921c1
mov rax, qword [r9 + 0x38]
mov r8, r11
xor r9d, r9d
mov rcx, r15
mov rdx, qword [rax]
inc dword [r15 + 0x38]
mov ebx, dword [r15 + 0x38]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], edi
call fcn.140090410
mov edi, eax
cmp eax, ebx
je 0x140092131
test ebx, ebx
je 0x140092131
cmp byte [r15 + 0x1f], 8
jae 0x140092131
movzx r8d, byte [r15 + 0x25]
lea rcx, [r15 + 0xc4]
mov edx, r13d
test r8b, r8b
je 0x140092120
nop
cmp dword [rcx + 0xc], ebx
je 0x14009215e
inc edx
add rcx, 0x14
cmp edx, r8d
jl 0x140092110
movzx eax, byte [r15 + 0x1f]
mov dword [r15 + rax*4 + 0x18c], ebx
inc byte [r15 + 0x1f]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
mov edx, dword [r14 + 0x10]
cmp dword [rax + 0x3c], ecx
jg 0x140092164
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x20
mov r8d, ebp
mov rcx, rsi
call fcn.14002bc90
jmp 0x140092191
mov byte [rcx + 6], 1
jmp 0x140092131
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x20
mov byte [rax + rcx*8 + 3], r13b
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], r13
mov r8d, 1
mov edx, edi
mov rcx, r15
call fcn.140049a20
mov r9d, edi
mov edx, ebp
mov rcx, r15
mov r8d, 0xffffffff
call fcn.1400498d0
mov r11, r14
mov byte [r14 + 0x2d], 0xa1
jmp 0x14009204f
mov eax, edx
and eax, 0x102
cmp eax, 0x102
jne 0x1400926fd
xor r8d, r8d
mov ebp, 0xa1
mov dword [rsp + 0x40], r8d
mov r13d, ebp
mov r14d, r8d
mov edi, r8d
mov ebx, r8d
test dl, 0x20
je 0x1400921ff
mov rax, qword [r9 + 0x38]
mov ecx, 8
mov rbx, qword [rax]
jmp 0x140092202
mov rcx, r8
test dl, 0x10
je 0x14009220f
mov rax, qword [r9 + 0x38]
mov rdi, qword [rcx + rax]
mov rax, qword [rsp + 0x80]
test eax, eax
je 0x14009222c
mov rax, rbx
mov rbx, rdi
mov rdi, rax
mov rax, qword [rsp + 0x80]
test rbx, rbx
je 0x14009246b
mov r14, qword [rbx]
mov dword [rsp + 0x5c], 0x1917181a
mov rdx, qword [r14 + 0x18]
movzx eax, byte [rdx]
cmp al, 0x9d
jne 0x14009224f
movzx eax, byte [rdx + 0x36]
cmp al, 0x9e
jne 0x140092259
lea rax, [rdx + 0x20]
jmp 0x140092261
cmp al, 0x77
jne 0x1400922ba
mov rax, qword [rdx + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jle 0x1400922ba
movzx eax, byte [r15 + 0x1f]
test al, al
jne 0x14009227c
inc dword [r15 + 0x38]
mov ebx, dword [r15 + 0x38]
jmp 0x14009228d
dec al
movzx eax, al
mov byte [r15 + 0x1f], al
mov ebx, dword [r15 + rax*4 + 0x18c]
mov rdx, qword [r14 + 0x18]
mov r9d, 1
mov r8d, ebx
mov rcx, r15
call fcn.1400917a0
movzx eax, byte [r14]
mov ebp, ebx
sub rax, 0x26
or rax, 1
movzx edx, byte [rsp + rax + 0x5c]
jmp 0x140092365
lea r8, [rsp + 0xbc]
mov rcx, r15
call fcn.14004ba60
mov rsi, qword [rsp + 0x48]
mov ebp, eax
xor r8d, r8d
mov r12d, 0x200
nop word [rax + rax]
movzx ecx, word [rbx + 0x12]
test cl, 4
jne 0x140092348
cmp dword [rsi], 0
je 0x1400922f7
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x140092348
mov rax, qword [rbx + 0x38]
test qword [rsi + 0x50], rax
jne 0x140092348
test r8d, r8d
je 0x140092313
bt cx, 0xa
jae 0x140092313
or cx, r12w
jmp 0x140092317
or cx, 4
mov edx, send
mov rax, rbx
mov word [rbx + rdx], cx
movsxd rax, dword [rbx + 0x18]
test eax, eax
js 0x140092348
mov rcx, rax
mov rax, qword [rbx + 8]
shl rcx, 6
mov rbx, rcx
add rbx, qword [rax + 0x20]
add byte [rbx + 0x16], 0xff
jne 0x140092348
inc r8d
jmp 0x1400922e0
movzx eax, byte [r14]
mov ebx, dword [rsp + 0xbc]
mov rsi, qword [rsp + 0xd0]
mov r12d, dword [rsp + 0x68]
movzx edx, byte [rsp + rax + 0x36]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14009238e
mov r8d, dword [rsp + 0x54]
mov r9d, r12d
movzx edx, dl
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.14002bc90
jmp 0x1400923c6
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], dl
mov edx, dword [rsp + 0x54]
mov dword [rax + rcx*8 + 4], edx
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], 0
mov byte [rax + rcx*8 + 1], 0
mov r8d, 1
mov edx, ebp
mov rcx, r15
call fcn.140049a20
test ebx, ebx
je 0x140092415
cmp byte [r15 + 0x1f], 8
jae 0x140092415
movzx r8d, byte [r15 + 0x25]
lea rcx, [r15 + 0xc4]
xor edx, edx
test r8b, r8b
je 0x140092404
cmp dword [rcx + 0xc], ebx
je 0x140092465
inc edx
add rcx, 0x14
cmp edx, r8d
jl 0x1400923f4
movzx eax, byte [r15 + 0x1f]
mov dword [r15 + rax*4 + 0x18c], ebx
inc byte [r15 + 0x1f]
mov r14d, dword [rsp + 0x40]
mov ebp, 0xa1
test rdi, rdi
je 0x1400925cf
mov rbx, qword [rdi]
mov r9d, 1
inc dword [r15 + 0x38]
mov rcx, r15
mov r14d, dword [r15 + 0x38]
mov r8d, r14d
mov rdx, qword [rbx + 0x18]
call fcn.1400917a0
mov rcx, qword [rbx + 0x18]
movzx edx, byte [rcx]
movzx eax, dl
cmp dl, 0x9d
jne 0x14009245b
movzx eax, byte [rcx + 0x36]
cmp al, 0x9e
jne 0x1400924d6
lea rax, [rcx + 0x20]
jmp 0x1400924de
mov byte [rcx + 6], 1
jmp 0x140092415
movsxd rcx, dword [rsi + 0xb8]
xor eax, 1
lea edx, [rax*4 + 0x35]
mov rax, qword [rsi + 0x18]
cmp dword [rax + 0x3c], ecx
jg 0x14009249c
mov dword [rsp + 0x20], r8d
mov r9d, r12d
mov r8d, dword [rsp + 0x54]
mov rcx, rsi
call fcn.14002bc90
jmp 0x14009241f
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], dl
mov edx, dword [rsp + 0x54]
mov dword [rax + rcx*8 + 4], edx
mov byte [rax + rcx*8 + 3], r8b
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov byte [rax + rcx*8 + 1], r8b
jmp 0x14009241f
cmp al, 0x77
jne 0x1400924e6
mov rax, qword [rcx + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jg 0x1400924ef
movzx eax, byte [rbx]
sub al, 0x26
test al, 0xfd
je 0x140092501
mov rax, qword [rsp + 0x80]
lea r13d, [rax*2 + 0x26]
jmp 0x140092513
mov eax, dword [rsp + 0x80]
xor eax, 1
lea r13d, [rax*2 + 0x27]
cmp dl, 0x9d
jne 0x14009251c
movzx edx, byte [rcx + 0x36]
cmp dl, 0x9e
jne 0x140092527
lea rax, [rcx + 0x20]
jmp 0x140092530
cmp dl, 0x77
jne 0x14009253c
mov rax, qword [rcx + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jg 0x1400925cf
mov rsi, qword [rsp + 0x48]
xor r9d, r9d
mov r8d, r9d
mov r12d, 0x200
nop dword [rax]
movzx ecx, word [rdi + 0x12]
test cl, 4
jne 0x1400925b8
cmp dword [rsi], r9d
je 0x140092567
mov rax, qword [rdi]
test byte [rax + 4], 1
je 0x1400925b8
mov rax, qword [rdi + 0x38]
test qword [rsi + 0x50], rax
jne 0x1400925b8
test r8d, r8d
je 0x140092583
bt cx, 0xa
jae 0x140092583
or cx, r12w
jmp 0x140092587
or cx, 4
mov rax, rdi
mov edx, send
mov word [rax + rdx], cx
movsxd rax, dword [rdi + 0x18]
test eax, eax
js 0x1400925b8
mov rcx, rax
mov rax, qword [rdi + 8]
shl rcx, 6
mov rdi, rcx
add rdi, qword [rax + 0x20]
add byte [rdi + 0x16], 0xff
jne 0x1400925b8
inc r8d
jmp 0x140092550
mov rsi, qword [rsp + 0xd0]
mov r15, qword [rsp + 0xb0]
mov r12d, dword [rsp + 0x68]
jmp 0x1400925d2
xor r9d, r9d
mov r11, qword [rsp + 0x48]
mov ecx, dword [rsi + 0xb8]
cmp dword [rsp + 0x80], 0
mov edi, dword [rsp + 0x54]
sete al
mov dword [r11 + 0x30], edi
add al, 6
mov dword [r11 + 0x34], ecx
mov byte [r11 + 0x2d], al
cmp r13d, ebp
je 0x14009204c
inc dword [r15 + 0x38]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
mov ebx, dword [r15 + 0x38]
cmp dword [rax + 0x3c], ecx
jg 0x140092635
mov dword [rsp + 0x20], r9d
mov r8d, edi
mov r9d, ebx
mov edx, 0x7b
mov rcx, rsi
call fcn.14002bc90
jmp 0x140092663
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x7b
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov r9d, ebx
mov r8d, 0xffffffff
mov edx, edi
mov rcx, r15
call fcn.1400498d0
mov rax, qword [rsi + 0x18]
movsxd r9, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], r9d
jg 0x1400926a1
mov r9d, r12d
mov dword [rsp + 0x20], ebx
mov r8d, r14d
mov edx, r13d
mov rcx, rsi
call fcn.14002bc90
xor r13d, r13d
jmp 0x1400926d7
lea rcx, [r9 + r9*2]
lea eax, [r9 + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], r13b
xor r13d, r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], r13b
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebx
movsxd rax, dword [rsi + 0xb8]
mov r11, qword [rsp + 0x48]
test eax, eax
jle 0x14009204f
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8 - 0x15], 0x53
jmp 0x14009204f
bt edx, 9
jae 0x1400935de
movzx ebp, word [r9 + 0x18]
xor edi, edi
movzx r10d, word [r9 + 0x1c]
xor r12b, r12b
mov rcx, qword [rsp + 0x48]
mov ebx, edi
mov r11, qword [rsp + 0x70]
mov r14d, edi
movzx r13d, word [r9 + 0x1a]
mov r9d, edi
mov word [rsp + 0x50], bp
mov eax, dword [rcx + 8]
mov r11, qword [r11 + 0x20]
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0xa8]
mov word [rsp + 0x78], r10w
mov qword [rsp + 0x90], rdi
mov byte [rsp + 0x64], bl
test byte [rax + 0x38], 1
mov qword [rsp + 0xa0], r11
je 0x14009277a
cmp byte [rax + 0x3b], bl
jle 0x14009277a
cmp word [r11 + 0x5e], bp
jbe 0x14009277a
mov r12b, 1
mov r9d, 1
mov r8, rbp
test dl, 0x20
je 0x140092799
mov rax, qword [rsp + 0x70]
inc r8d
cmp r9d, r13d
cmovbe r9d, r13d
mov rax, qword [rax + 0x38]
mov rbx, qword [rax + rbp*8]
mov rax, qword [rsp + 0x70]
mov edx, pe_nt_image_headers64
test byte [rax + 0x28], 0x10
je 0x1400928b6
mov rax, qword [rax + 0x38]
cmp r9d, r10d
mov edi, r10d
cmova edi, r9d
mov r14, qword [rax + r8*8]
test word [r14 + 0x12], dx
je 0x14009287f
inc dword [r15 + 0x38]
mov r9, rcx
mov edx, dword [r15 + 0x38]
mov dword [rcx + 0x24], edx
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14009281d
mov r9d, edx
mov dword [rsp + 0x20], 0
mov edx, 0x4c
mov r8d, 1
mov rcx, rsi
call fcn.14002bc90
movzx r10d, word [rsp + 0x78]
xor edx, edx
mov r11, qword [rsp + 0xa0]
mov r9, qword [rsp + 0x48]
jmp 0x140092850
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8 + 8], edx
xor edx, edx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov word [rax + rcx*8], 0x4c
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], 1
mov eax, dword [rsi + 0xb8]
mov r8d, dword [r9 + 0x24]
add r8d, r8d
mov dword [r9 + 0x28], eax
mov dword [r9 + 0x24], r8d
mov rax, qword [r11 + 0x38]
cmp byte [rbp + rax], 1
sete dl
xor edx, dword [rsp + 0x80]
or edx, r8d
mov dword [r9 + 0x24], edx
mov r9d, edi
test rbx, rbx
jne 0x1400928b4
mov rax, qword [r11 + 8]
movsx rdx, word [rax + rbp*2]
test edx, edx
js 0x1400928a9
mov rax, qword [r11 + 0x18]
mov rcx, rdx
shl rcx, 5
mov rax, qword [rax + 8]
cmp byte [rax + rcx + 0x18], bl
je 0x1400928ae
cmp edx, 0xfffffffe
jne 0x1400928b4
mov r12b, 1
mov r9d, edi
xor edi, edi
movzx r8d, word [r11 + 0x5e]
mov rcx, qword [rsp + 0x80]
cmp bp, r8w
jae 0x1400928db
mov rax, qword [r11 + 0x38]
mov edx, edi
cmp byte [rbp + rax], 0
sete dl
cmp ecx, edx
je 0x1400928e5
test ecx, ecx
je 0x140092903
cmp r8w, bp
jne 0x140092903
mov rax, r14
mov byte [rsp + 0x64], r12b
mov r14, rbx
xor r12b, r12b
mov rbx, rax
movzx eax, r13b
mov word [rsp + 0x78], ax
movzx r13d, r10w
mov rdx, qword [rsp + 0x48]
lea rax, [rsp + 0xd8]
mov r8d, ecx
mov qword [rsp + 0x20], rax
mov rcx, r15
call fcn.140091020
mov r10d, eax
mov dword [rsp + 0x58], eax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xc8], rax
test rax, rax
je 0x1400929bb
cmp word [rsp + 0x78], 0
je 0x1400929bb
add rbp, rax
jne 0x140092953
mov qword [rsp + 0x90], rdi
jmp 0x1400929b6
mov rdi, 0xffffffffffffffff
nop word [rax + rax]
inc rdi
cmp byte [rdi + rbp], 0
jne 0x140092960
mov rax, qword [rsp + 0x88]
and edi, 0x3fffffff
inc rdi
test rax, rax
je 0x14009298c
mov rdx, rdi
mov rcx, rax
call fcn.140006e60
jmp 0x140092994
mov rcx, rdi
call fcn.1400065b0
mov qword [rsp + 0x90], rax
test rax, rax
je 0x1400929af
mov r8, rdi
mov rdx, rbp
mov rcx, rax
call fcn.1400f3b10
mov r10d, dword [rsp + 0x58]
xor edi, edi
movzx ebp, word [rsp + 0x50]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x5c], eax
test rbx, rbx
je 0x1400929db
test byte [rbx + 0x14], 0x28
jne 0x1400929db
mov ecx, edi
mov edx, 1
jmp 0x1400929e2
mov edx, 1
mov ecx, edx
mov dword [rsp + 0x40], ecx
test r14, r14
je 0x1400929f6
test byte [r14 + 0x14], 0x28
mov dword [rsp + 0x60], edi
je 0x1400929fa
mov dword [rsp + 0x60], edx
test rbx, rbx
jne 0x140092a4b
test bp, bp
jne 0x140092a4b
mov dword [rsp + 0x7c], edi
movzx r13d, bp
test r12b, r12b
je 0x140092cdb
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
movzx edx, bp
add edx, r10d
cmp dword [rax + 0x3c], ecx
jg 0x140092c9d
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x4f
xor r8d, r8d
mov rcx, rsi
call fcn.14002bc90
jmp 0x140092cca
mov dword [rsp + 0x7c], edx
test rbx, rbx
je 0x140092a08
mov rax, qword [rbx]
mov rcx, r15
movzx r8d, bp
movzx r9d, r13w
add r8d, r10d
mov rdi, qword [rax + 0x18]
mov rdx, rdi
call fcn.1400917a0
mov eax, pe_nt_image_headers64
test word [rbx + 0x12], ax
je 0x140092ac1
mov rax, qword [rsi]
mov ecx, dword [rsi + 0xb8]
dec ecx
cmp byte [rax + 0x55], 0
je 0x140092a96
lea rcx, [0x14012aae0]
jmp 0x140092aa5
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rcx, [rax + rcx*8]
mov r12, qword [rsp + 0x48]
mov eax, dword [r12 + 0x24]
shr eax, 1
mov dword [rcx + 0xc], eax
movzx eax, byte [r12 + 0x24]
and al, 1
mov byte [rcx + 3], al
jmp 0x140092ac6
mov r12, qword [rsp + 0x48]
mov rcx, rdi
nop dword [rax]
movzx edx, byte [rcx]
lea eax, [rdx + 0x65]
cmp al, 1
ja 0x140092ae0
mov rcx, qword [rcx + 0x10]
jmp 0x140092ad0
cmp dl, 0x9d
jne 0x140092ae9
movzx edx, byte [rcx + 0x36]
movzx edx, dl
sub edx, 0x61
je 0x140092bba
sub edx, 0x23
je 0x140092bba
sub edx, 1
je 0x140092bba
sub edx, 1
je 0x140092bba
cmp edx, 0x12
jne 0x140092b4b
test dword [rcx + 4], 0x100000
jne 0x140092b42
movsx rdx, word [rcx + 0x30]
test dx, dx
js 0x140092b3e
mov rax, qword [rcx + 0x40]
mov rcx, rdx
shl rcx, 5
mov rax, qword [rax + 8]
cmp byte [rax + rcx + 0x18], 0
je 0x140092b42
xor eax, eax
jmp 0x140092b47
mov eax, 1
test eax, eax
je 0x140092bba
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
movzx edx, bp
add edx, dword [rsp + 0x58]
cmp dword [rax + 0x3c], ecx
jg 0x140092b81
mov r9d, dword [rsp + 0x5c]
mov r8d, edx
mov edx, 0x22
mov dword [rsp + 0x20], 0
mov rcx, rsi
call fcn.14002bc90
jmp 0x140092bba
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x5c]
mov dword [rax + rcx*8 + 8], edx
mov word [rax + rcx*8], 0x22
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 0xc], 0
mov qword [rax + rcx*8 + 0x10], 0
mov rax, qword [rsp + 0xc8]
test rax, rax
je 0x140092bda
movzx r8d, bp
mov rcx, rdi
add r8, rax
movzx edx, r13w
call fcn.1400902c0
movzx eax, r13w
movzx r13d, bp
add r13d, eax
movzx eax, byte [rdi]
cmp al, 0x9d
jne 0x140092bf0
movzx eax, byte [rdi + 0x36]
cmp al, 0x9e
jne 0x140092bfa
lea rax, [rdi + 0x20]
jmp 0x140092c02
cmp al, 0x77
jne 0x140092c1d
mov rax, qword [rdi + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jle 0x140092c1d
mov eax, 1
xor r12b, r12b
mov ecx, eax
mov dword [rsp + 0x40], eax
jmp 0x140092cdb
xor r8d, r8d
mov esi, 0x200
movzx ecx, word [rbx + 0x12]
test cl, 4
jne 0x140092c8c
cmp dword [r12], 0
je 0x140092c3e
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x140092c8c
mov rax, qword [rbx + 0x38]
test qword [r12 + 0x50], rax
jne 0x140092c8c
test r8d, r8d
je 0x140092c5a
bt cx, 0xa
jae 0x140092c5a
or cx, si
jmp 0x140092c5e
or cx, 4
mov edx, send
mov rax, rbx
mov word [rbx + rdx], cx
movsxd rcx, dword [rbx + 0x18]
test ecx, ecx
js 0x140092c8c
mov rax, qword [rbx + 8]
mov rbx, rcx
shl rbx, 6
add rbx, qword [rax + 0x20]
add byte [rbx + 0x16], 0xff
jne 0x140092c8c
inc r8d
jmp 0x140092c25
mov rsi, qword [rsp + 0xd0]
xor r12b, r12b
mov ecx, dword [rsp + 0x40]
jmp 0x140092cdb
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x4f
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov ecx, edi
mov dword [rsp + 0x7c], 1
mov dword [rsp + 0x40], ecx
inc r13d
mov r8, qword [rsp + 0xc8]
mov ebx, r13d
mov edi, dword [rsp + 0x58]
movzx eax, r12b
sub ebx, eax
test r8, r8
je 0x140092d6e
test ebx, ebx
jle 0x140092d11
nop dword [rax]
cmp byte [r8], 0x41
jne 0x140092d11
dec ebx
inc edi
inc r8
test ebx, ebx
jg 0x140092d00
movsxd rax, ebx
cmp rax, 1
jle 0x140092d34
lea rdx, [rax - 1]
add rdx, r8
cmp byte [rdx], 0x41
jne 0x140092d34
dec ebx
dec rax
dec rdx
cmp rax, 1
jg 0x140092d21
test ebx, ebx
jle 0x140092d6e
mov rcx, qword [r15 + 0x10]
mov r9d, ebx
mov dword [rsp + 0x30], ebx
mov edx, 0x62
mov qword [rsp + 0x28], r8
mov r8d, edi
mov dword [rsp + 0x20], 0
call fcn.14002bff0
mov r8d, ebx
mov edx, edi
mov rcx, r15
call fcn.140049a20
mov ecx, dword [rsp + 0x40]
mov rax, qword [rsp + 0x70]
lea rbx, [0x140000000]
movzx eax, word [rax + 0x2e]
test ax, ax
je 0x140092d88
cmp r13d, eax
je 0x140092dc5
mov eax, dword [rsp + 0x7c]
mov r9d, dword [rsp + 0x5c]
mov r8d, dword [rsp + 0x68]
mov dword [rsp + 0x28], r13d
mov r13d, dword [rsp + 0x58]
lea eax, [rcx + rax*2]
mov rcx, qword [rsp + 0x80]
mov dword [rsp + 0x20], r13d
lea ecx, [rcx + rax*2]
movzx edx, byte [rcx + rbx + 0x10b0e8]
mov rcx, rsi
call fcn.14002c260
jmp 0x140092dca
mov r13d, dword [rsp + 0x58]
movzx r12d, bp
test r14, r14
je 0x1400930a7
mov rax, qword [r14]
mov r8d, 1
movzx edi, word [rsp + 0x50]
mov rcx, r15
mov rbp, qword [rax + 0x18]
lea ebx, [rdi + r13]
mov edx, ebx
call fcn.140049a20
movzx r13d, word [rsp + 0x78]
mov r8d, ebx
mov r9d, r13d
mov rdx, rbp
mov rcx, r15
call fcn.1400917a0
mov eax, pe_nt_image_headers64
test word [r14 + 0x12], ax
je 0x140092e59
mov rax, qword [rsi]
mov ecx, dword [rsi + 0xb8]
dec ecx
cmp byte [rax + 0x55], 0
je 0x140092e34
lea rcx, [0x14012aae0]
jmp 0x140092e43
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rcx, [rax + rcx*8]
mov rdx, qword [rsp + 0x48]
mov eax, dword [rdx + 0x24]
shr eax, 1
mov dword [rcx + 0xc], eax
movzx eax, byte [rdx + 0x24]
and al, 1
mov byte [rcx + 3], al
mov rcx, rbp
nop dword [rax]
movzx edx, byte [rcx]
lea eax, [rdx + 0x65]
cmp al, 1
ja 0x140092e70
mov rcx, qword [rcx + 0x10]
jmp 0x140092e60
cmp dl, 0x9d
jne 0x140092e79
movzx edx, byte [rcx + 0x36]
movzx edx, dl
sub edx, 0x61
je 0x140092f49
sub edx, 0x23
je 0x140092f49
sub edx, 1
je 0x140092f49
sub edx, 1
je 0x140092f49
cmp edx, 0x12
jne 0x140092edb
test dword [rcx + 4], 0x100000
jne 0x140092ed2
movsx rdx, word [rcx + 0x30]
test dx, dx
js 0x140092ece
mov rax, qword [rcx + 0x40]
mov rcx, rdx
shl rcx, 5
mov rax, qword [rax + 8]
cmp byte [rax + rcx + 0x18], 0
je 0x140092ed2
xor eax, eax
jmp 0x140092ed7
mov eax, 1
test eax, eax
je 0x140092f49
mov rax, qword [rsi + 0x18]
mov r8d, edi
add r8d, dword [rsp + 0x58]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x140092f0f
mov r9d, dword [rsp + 0x5c]
mov edx, 0x22
mov rcx, rsi
mov dword [rsp + 0x20], 0
call fcn.14002bc90
jmp 0x140092f49
mov edx, dword [rsp + 0x5c]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x22
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], 0
mov qword [rax + rcx*8 + 0x10], 0
mov rbx, qword [rsp + 0x90]
test rbx, rbx
je 0x140092fe2
mov edx, r13d
mov r8, rbx
mov rcx, rbp
call fcn.1400902c0
add edi, dword [rsp + 0x58]
mov r8, rbx
mov ebx, r13d
test r13d, r13d
je 0x140092f88
cmp byte [r8], 0x41
jne 0x140092f88
dec ebx
inc edi
inc r8
test ebx, ebx
jg 0x140092f77
movsxd rax, ebx
cmp rax, 1
jle 0x140092fac
lea r9, [rax - 1]
add r9, r8
cmp byte [r9], 0x41
jne 0x140092fac
dec ebx
dec rax
dec r9
cmp rax, 1
jg 0x140092f98
test ebx, ebx
jle 0x140092fe2
mov rcx, qword [r15 + 0x10]
mov r9d, ebx
mov dword [rsp + 0x30], ebx
mov edx, 0x62
mov qword [rsp + 0x28], r8
mov r8d, edi
mov dword [rsp + 0x20], 0
call fcn.14002bff0
mov r8d, ebx
mov edx, edi
mov rcx, r15
call fcn.140049a20
movzx eax, byte [rbp]
add r12d, r13d
cmp al, 0x9d
jne 0x140092ff1
movzx eax, byte [rbp + 0x36]
cmp al, 0x9e
jne 0x140092ffb
lea rax, [rbp + 0x20]
jmp 0x140093003
cmp al, 0x77
jne 0x14009301d
mov rax, qword [rbp + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jle 0x14009301d
mov r14d, 1
lea rbx, [0x140000000]
jmp 0x14009312c
xor r8d, r8d
movzx ecx, word [r14 + 0x12]
test cl, 4
jne 0x140093120
mov rdx, qword [rsp + 0x48]
cmp dword [rdx], 0
je 0x140093045
mov rax, qword [r14]
test byte [rax + 4], 1
je 0x140093120
mov rax, qword [r14 + 0x38]
test qword [rdx + 0x50], rax
jne 0x140093120
test r8d, r8d
je 0x140093069
bt cx, 0xa
jae 0x140093069
mov eax, 0x200
or cx, ax
jmp 0x14009306d
or cx, 4
mov edx, send
mov rax, r14
mov word [rax + rdx], cx
movsxd rcx, dword [r14 + 0x18]
test ecx, ecx
js 0x140093120
mov rax, qword [r14 + 8]
mov r14, rcx
shl r14, 6
add r14, qword [rax + 0x20]
add byte [r14 + 0x16], 0xff
jne 0x140093120
inc r8d
jmp 0x140093020
cmp byte [rsp + 0x64], 0
je 0x140093127
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
movzx r8d, bp
add r8d, r13d
xor r13d, r13d
cmp dword [rax + 0x3c], ecx
jg 0x1400930e8
mov r9d, r8d
mov dword [rsp + 0x20], r13d
xor r8d, r8d
mov edx, 0x4f
mov rcx, rsi
call fcn.14002bc90
inc r12d
mov r14d, r13d
jmp 0x14009312f
lea eax, [rcx + 1]
mov r14d, r13d
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
inc r12d
mov word [rax + rcx*8], 0x4f
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
jmp 0x14009312f
lea rbx, [0x140000000]
mov r14d, dword [rsp + 0x60]
xor r13d, r13d
mov rdi, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x88]
test rdi, rdi
je 0x1400931f2
test rcx, rcx
je 0x14009318f
cmp qword [rcx + 0x298], 0
je 0x140093164
mov rdx, rdi
call fcn.140006a00
jmp 0x1400931ea
cmp rdi, qword [rcx + 0x180]
jb 0x14009318f
cmp rdi, qword [rcx + 0x188]
jae 0x14009318f
mov rax, qword [rcx + 0x178]
mov qword [rdi], rax
dec dword [rcx + 0x160]
mov qword [rcx + 0x178], rdi
jmp 0x1400931f2
cmp dword [0x140126d50], 0
je 0x1400931e1
mov rcx, qword [0x14012acd8]
test rcx, rcx
je 0x1400931aa
call qword [0x140126dd8]
mov rcx, rdi
call qword [0x140126d90]
dec qword [0x14012aa88]
movsxd rcx, eax
sub qword [0x14012aa40], rcx
mov rcx, rdi
call qword [0x140126d80]
mov rcx, qword [0x14012acd8]
test rcx, rcx
je 0x1400931ea
call qword [0x140126de8]
jmp 0x1400931ea
mov rcx, rdi
call qword [0x140126d80]
mov rcx, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x90]
test rdi, rdi
je 0x1400932a5
test rcx, rcx
je 0x14009324a
cmp qword [rcx + 0x298], 0
je 0x14009321f
mov rdx, rdi
call fcn.140006a00
jmp 0x1400932a5
cmp rdi, qword [rcx + 0x180]
jb 0x14009324a
cmp rdi, qword [rcx + 0x188]
jae 0x14009324a
mov rax, qword [rcx + 0x178]
mov qword [rdi], rax
dec dword [rcx + 0x160]
mov qword [rcx + 0x178], rdi
jmp 0x1400932a5
cmp dword [0x140126d50], 0
je 0x14009329c
mov rcx, qword [0x14012acd8]
test rcx, rcx
je 0x140093265
call qword [0x140126dd8]
mov rcx, rdi
call qword [0x140126d90]
dec qword [0x14012aa88]
movsxd rcx, eax
sub qword [0x14012aa40], rcx
mov rcx, rdi
call qword [0x140126d80]
mov rcx, qword [0x14012acd8]
test rcx, rcx
je 0x1400932a5
call qword [0x140126de8]
jmp 0x1400932a5
mov rcx, rdi
call qword [0x140126d80]
mov rcx, qword [rsp + 0x48]
mov eax, dword [rsi + 0xb8]
mov ebp, dword [rsp + 0x68]
mov dword [rcx + 0x34], eax
test r12d, r12d
je 0x1400932ed
mov rax, qword [rsp + 0x80]
mov r8d, ebp
mov r9d, dword [rsp + 0x5c]
mov rcx, rsi
mov dword [rsp + 0x28], r12d
lea eax, [r14 + rax*2]
movzx edx, byte [rax + rbx + 0x10a7b0]
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x20], eax
call fcn.14002c260
cmp dword [rsp + 0x98], 0
jne 0x140093591
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rdx + 0x18]
test byte [rbx + 0x46], 0x20
jne 0x140093415
mov rax, qword [rsp + 0xa8]
mov ecx, 0x400
test word [rax + 0x38], cx
je 0x140093400
inc dword [r15 + 0x38]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
mov ebx, dword [r15 + 0x38]
cmp dword [rax + 0x3c], ecx
jg 0x14009335a
mov r9d, ebx
mov dword [rsp + 0x20], r13d
mov r8d, ebp
mov edx, 0x81
mov rcx, rsi
call fcn.14002bc90
jmp 0x140093388
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x81
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov edi, dword [rsp + 0x54]
mov r9d, ebx
mov edx, edi
mov r8d, 0xffffffff
mov rcx, r15
call fcn.1400498d0
mov rax, qword [rsi + 0x18]
movsxd r9, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], r9d
jg 0x1400933cc
xor r9d, r9d
mov dword [rsp + 0x20], ebx
mov r8d, edi
mov edx, 0x21
mov rcx, rsi
call fcn.14002bc90
jmp 0x140093591
lea rcx, [r9 + r9*2]
lea eax, [r9 + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x21
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], r13
jmp 0x140093591
mov r8d, dword [rsp + 0x54]
mov r9d, ebp
mov rcx, rax
call fcn.1400915f0
jmp 0x140093591
mov r12d, dword [rsp + 0x54]
cmp r12d, ebp
je 0x140093591
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x140093442
nop dword [rax]
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140093442
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140093430
movzx ecx, word [rbx + 0x5e]
cmp ecx, 1
jne 0x140093471
movzx eax, byte [r15 + 0x1f]
test al, al
jne 0x14009345e
inc dword [r15 + 0x38]
mov r14d, dword [r15 + 0x38]
jmp 0x14009349b
dec al
movzx eax, al
mov byte [r15 + 0x1f], al
mov r14d, dword [r15 + rax*4 + 0x18c]
jmp 0x14009349b
mov edx, dword [r15 + 0x28]
mov r14d, dword [r15 + 0x2c]
cmp ecx, edx
jg 0x14009348d
lea eax, [rcx + r14]
sub edx, ecx
mov dword [r15 + 0x2c], eax
mov dword [r15 + 0x28], edx
jmp 0x14009349b
mov eax, dword [r15 + 0x38]
lea r14d, [rax + 1]
add eax, ecx
mov dword [r15 + 0x38], eax
movzx eax, word [rbx + 0x5e]
mov edi, r13d
cmp r13w, ax
jae 0x14009356d
mov r15, qword [rsp + 0xa0]
nop dword [rax]
nop dword [rax + rax]
movzx r8d, word [r15 + 0x60]
mov edx, r13d
test r8d, r8d
je 0x1400934f1
mov rax, qword [rbx + 8]
mov r9, qword [r15 + 8]
movsxd rcx, edi
movzx r10d, word [rax + rcx*2]
nop dword [rax]
movsxd rax, edx
cmp r10w, word [r9 + rax*2]
je 0x1400934f8
inc edx
cmp edx, r8d
jl 0x1400934e0
mov rdx, 0xffffffffffffffff
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
movsx r8d, dx
lea edx, [r14 + rdi]
cmp dword [rax + 0x3c], ecx
jg 0x140093529
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, ebp
mov edx, 0x60
mov rcx, rsi
call fcn.14002bc90
jmp 0x140093557
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x60
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebp
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
cmp edi, eax
jl 0x1400934c0
mov r15, qword [rsp + 0xb0]
mov r9d, dword [rsp + 0xb8]
mov r8d, r12d
movzx eax, ax
mov edx, 0x1e
mov dword [rsp + 0x28], eax
mov rcx, rsi
mov dword [rsp + 0x20], r14d
call fcn.14002c260
mov rcx, qword [rsp + 0x70]
mov r11, qword [rsp + 0x48]
test dword [rcx + 0x28], 0x1000
je 0x1400935ab
mov byte [r11 + 0x2d], 0xa1
jmp 0x1400935bc
cmp dword [rsp + 0x80], 0
sete al
add al, 6
mov byte [r11 + 0x2d], al
mov dword [r11 + 0x30], ebp
movzx eax, byte [rcx + 0x2a]
and al, 1
mov byte [r11 + 0x2e], al
test byte [rcx + 0x28], 0xf
jne 0x14009204f
mov byte [r11 + 0x2f], 1
jmp 0x14009204f
bt edx, 0xd
jae 0x140094350
mov eax, dword [r15 + 0x34]
mov rcx, rsi
inc dword [r15 + 0x38]
mov edi, dword [r15 + 0x38]
mov dword [rsp + 0x98], eax
inc eax
mov dword [r15 + 0x34], eax
mov qword [rsp + 0xc8], r13
mov dword [rsp + 0x5c], edi
mov dword [rsp + 0x40], r13d
mov dword [rsp + 0x60], r13d
call fcn.14002c340
mov rcx, qword [rbx + 0x28]
mov rbp, qword [rsp + 0x48]
mov r12, qword [rsp + 0xa8]
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x70]
mov dword [rsp + 0x7c], r13d
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0xb0], rcx
mov rax, qword [rax + 0x38]
mov r14, qword [rax]
mov qword [rsp + 0x100], r14
mov rax, qword [r14 + 0x28]
mov qword [rsp + 0xd8], rax
mov byte [rbp + 0x2d], 0x48
mov dword [rbp + 0x30], edi
movzx eax, byte [r12 + 0x3a]
cmp al, 1
jbe 0x14009381f
mov edi, eax
sub edi, dword [rsp + 0x78]
dec edi
movsxd rax, edi
imul rcx, rax, 0x78
mov rax, qword [rsp + 0x88]
sub rcx, 0xffffffffffffff80
test rax, rax
je 0x1400936ab
mov rdx, rcx
mov rcx, rax
call fcn.140006e60
jmp 0x1400936b0
call fcn.1400065b0
mov qword [rsp + 0xc0], rax
mov r12, rax
test rax, rax
jne 0x1400936cd
mov rax, qword [rsp + 0xf8]
jmp 0x140094703
lea eax, [rdi + 1]
movzx ecx, al
mov dword [r12 + 4], ecx
mov dword [r12], ecx
movups xmm0, xmmword [rbx + 8]
movups xmmword [r12 + 8], xmm0
movups xmm1, xmmword [rbx + 0x18]
movups xmmword [r12 + 0x18], xmm1
movups xmm0, xmmword [rbx + 0x28]
movups xmmword [r12 + 0x28], xmm0
movups xmm1, xmmword [rbx + 0x38]
movups xmmword [r12 + 0x38], xmm1
movups xmm0, xmmword [rbx + 0x48]
movups xmmword [r12 + 0x48], xmm0
movups xmm1, xmmword [rbx + 0x58]
movups xmmword [r12 + 0x58], xmm1
movups xmm0, xmmword [rbx + 0x68]
movups xmmword [r12 + 0x68], xmm0
movsd xmm1, qword [rbx + 0x78]
mov rbx, qword [rsp + 0xa8]
movsd qword [r12 + 0x78], xmm1
mov r10, qword [rbx + 8]
cmp edi, 1
jl 0x1400937c8
lea rdx, [r12 + 0x80]
mov r9d, edi
lea r8, [rbp + 0x84]
nop word [rax + rax]
movzx eax, byte [r8]
lea rdx, [rdx + 0x78]
imul rcx, rax, 0x78
lea r8, [r8 + 0x58]
movups xmm0, xmmword [rcx + r10 + 8]
movups xmmword [rdx - 0x78], xmm0
movups xmm1, xmmword [rcx + r10 + 0x18]
movups xmmword [rdx - 0x68], xmm1
movups xmm0, xmmword [rcx + r10 + 0x28]
movups xmmword [rdx - 0x58], xmm0
movups xmm1, xmmword [rcx + r10 + 0x38]
movups xmmword [rdx - 0x48], xmm1
movups xmm0, xmmword [rcx + r10 + 0x48]
movups xmmword [rdx - 0x38], xmm0
movups xmm1, xmmword [rcx + r10 + 0x58]
movups xmmword [rdx - 0x28], xmm1
movups xmm0, xmmword [rcx + r10 + 0x68]
movups xmmword [rdx - 0x18], xmm0
movsd xmm1, qword [rcx + r10 + 0x78]
movsd qword [rdx - 8], xmm1
sub r9, 1
jne 0x140093760
mov rcx, qword [rsp + 0xb0]
test byte [rbx + 0x38], 0x10
jne 0x140093961
test byte [rcx + 0x46], 0x20
jne 0x14009386a
mov edx, dword [r15 + 0x38]
inc edx
mov dword [r15 + 0x38], edx
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
mov dword [rsp + 0x40], edx
cmp dword [rax + 0x3c], ecx
jg 0x140093836
mov r9d, edx
mov dword [rsp + 0x20], r13d
mov edx, 0x4f
xor r8d, r8d
mov rcx, rsi
call fcn.14002bc90
jmp 0x140093953
mov r12, qword [r12 + 8]
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 0xc0], r12
jmp 0x1400937d0
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x4f
mov byte [rax + rcx*8 + 3], r13b
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
jmp 0x140093953
mov rbx, qword [rcx + 0x10]
test rbx, rbx
je 0x140093885
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140093885
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140093873
mov r8d, dword [r15 + 0x34]
mov dword [rsp + 0x40], r8d
lea eax, [r8 + 1]
mov dword [r15 + 0x34], eax
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
movzx edx, word [rbx + 0x5e]
cmp dword [rax + 0x3c], ecx
jg 0x1400938c1
mov r9d, edx
mov dword [rsp + 0x20], r13d
mov edx, 0x6b
mov rcx, rsi
call fcn.14002bc90
jmp 0x1400938f0
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x6b
mov byte [rax + rcx*8 + 3], r13b
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov rdi, qword [r15 + 0x10]
mov rdx, rbx
mov rcx, r15
call fcn.14005d910
mov rcx, qword [rdi]
mov r8, rax
cmp byte [rcx + 0x55], r13b
je 0x140093917
mov edx, 0xfffffffa
call fcn.14002ca30
jmp 0x140093953
movsxd rax, dword [rdi + 0xb8]
lea rdx, [rax + rax*2]
mov rax, qword [rdi + 0x68]
cmp byte [rax + rdx*8 - 0x17], r13b
lea r10, [rax + rdx*8]
je 0x140093945
mov r9d, 0xfffffffa
lea rdx, [r10 - 0x18]
mov rcx, rdi
call fcn.14002cd50
jmp 0x140093953
test r8, r8
je 0x140093953
mov qword [r10 - 8], r8
mov byte [r10 - 0x17], 0xfa
mov edi, dword [r15 + 0x38]
inc edi
mov dword [rsp + 0x60], edi
mov dword [r15 + 0x38], edi
movsxd rdx, dword [rsi + 0xb8]
mov rax, qword [rsi + 0x18]
mov dword [rsp + 0xbc], edx
cmp dword [rax + 0x3c], edx
jg 0x14009399b
mov r9d, dword [rsp + 0x5c]
xor r8d, r8d
mov edx, 0x4c
mov dword [rsp + 0x20], r13d
mov rcx, rsi
call fcn.14002bc90
mov dword [rsp + 0xbc], eax
jmp 0x1400939ce
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov edx, dword [rsp + 0x5c]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x4c
mov byte [rax + rcx*8 + 3], r13b
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov rax, qword [rsp + 0xe0]
cmp dword [rax + 0x14], 1
jle 0x140093afd
mov r12, qword [rsp + 0x88]
mov ebx, r13d
mov rdi, r13
mov r8d, 0x1fff
mov rbp, r13
mov rsi, rax
nop word [rax + rax]
mov rcx, qword [rsi + 0x20]
movsxd rax, ebx
shl rax, 6
add rax, rcx
mov rdx, qword [rcx + rdi]
cmp rax, r14
je 0x140093a51
test byte [rdx + 4], 1
jne 0x140093a51
test byte [rcx + rdi + 0x12], 6
jne 0x140093a51
test word [rcx + rdi + 0x14], r8w
je 0x140093a51
xor r9d, r9d
xor r8d, r8d
mov rcx, r12
call fcn.140044f70
mov r8, rax
mov rdx, rbp
mov rcx, r12
call fcn.1400446f0
mov rbp, rax
mov r8d, 0x1fff
inc ebx
add rdi, 0x40
cmp ebx, dword [rsi + 0x14]
jl 0x140093a00
mov rsi, qword [rsp + 0xd0]
test rbp, rbp
mov r12, qword [rsp + 0xc0]
mov qword [rsp + 0xa0], rbp
mov rbp, qword [rsp + 0x48]
je 0x140093b02
mov rcx, qword [r15]
mov r9d, 1
xor r8d, r8d
mov edx, 0x1c
call fcn.1400443c0
mov rdx, qword [rsp + 0xa0]
mov rbx, rax
test rax, rax
jne 0x140093abd
mov rcx, qword [r15]
call fcn.140044c80
mov rcx, rbx
mov qword [rsp + 0xa0], rbx
jmp 0x140093b0a
mov qword [rax + 0x18], rdx
mov rcx, rbx
mov eax, dword [rdx + 4]
and eax, 0x200100
or dword [rbx + 4], eax
call fcn.1400442d0
mov rax, qword [r15]
mov r8d, dword [rax + 0x7c]
cmp dword [rbx + 0x28], r8d
jle 0x140093af0
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, r15
call fcn.140009d30
mov rcx, rbx
mov qword [rsp + 0xa0], rbx
jmp 0x140093b0a
mov rcx, r13
jmp 0x140093b0a
mov rcx, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0xa8]
mov r10d, 0x400
mov rax, qword [rsp + 0xd8]
mov dword [rsp + 0x58], r13d
movzx r9d, word [rdi + 0x38]
and r9w, r10w
or r9w, 0x20
mov word [rsp + 0x50], r9w
cmp dword [rax + 0x14], r13d
jle 0x140094114
mov r8d, dword [rsp + 0x54]
mov rdx, r13
mov qword [rsp + 0xf0], rdx
mov r14d, r13d
nop word [rax + rax]
mov rax, qword [rax + 0x20]
cmp dword [rdx + rax + 0x1c], r8d
je 0x140093b77
test word [rdx + rax + 0x14], r10w
je 0x1400940d6
mov r8, qword [rdx + rax]
mov ebx, r13d
mov dword [rsp + 0x70], ebx
test rcx, rcx
je 0x140093b95
test byte [r8 + 4], 1
jne 0x140093b95
mov qword [rcx + 0x10], r8
mov r8, rcx
mov eax, dword [rsp + 0x98]
mov rdx, r12
mov dword [rsp + 0x30], eax
mov rcx, r15
mov word [rsp + 0x28], r9w
xor r9d, r9d
mov qword [rsp + 0x20], r13
call fcn.14009e240
mov qword [rsp + 0x90], rax
mov rdi, rax
test rax, rax
je 0x1400940bd
movzx ecx, byte [rbp + 0x2c]
lea r8, [rax + 0x390]
mov r9d, dword [rsp + 0x78]
mov rdx, r12
mov word [rsp + 0x28], r13w
mov dword [rsp + 0x20], ecx
mov rcx, r15
call fcn.14008fe80
mov rax, qword [rsp + 0xa8]
test byte [rax + 0x38], 0x10
jne 0x140093fb3
mov rax, qword [rsp + 0xd8]
mov ebx, r14d
mov eax, dword [rax + 0x14]
dec eax
cmp r14d, eax
mov rax, 0xffffffffffffffff
cmove ebx, eax
mov rax, qword [rsp + 0xb0]
mov dword [rsp + 0x80], ebx
test byte [rax + 0x46], 0x20
jne 0x140093d4c
movzx r8d, byte [r15 + 0x25]
lea rdx, [r15 + 0xc4]
mov r10, qword [r15 + 0x10]
mov ecx, r13d
mov r11d, dword [rsp + 0x54]
test r8b, r8b
je 0x140093c6e
cmp dword [rdx], r11d
jne 0x140093c63
cmp word [rdx + 4], 0xffff
je 0x140093ca4
inc ecx
add rdx, 0x14
cmp ecx, r8d
jl 0x140093c57
mov rax, qword [r10 + 0x18]
movsxd rdx, dword [r10 + 0xb8]
mov r9d, dword [rsp + 0x60]
cmp dword [rax + 0x3c], edx
jg 0x140093ce3
mov r8d, r11d
mov dword [rsp + 0x20], r13d
mov edx, 0x7b
mov rcx, r10
call fcn.14002bc90
mov r9d, dword [rsp + 0x60]
mov r11d, dword [rsp + 0x54]
jmp 0x140093d14
mov eax, dword [r15 + 0x50]
mov r8d, r13d
mov dword [rdx + 0x10], eax
inc dword [r15 + 0x50]
cmp byte [r15 + 0x25], 0
mov r9d, dword [rdx + 0xc]
jbe 0x140093cde
lea rcx, [r15 + 0xca]
cmp dword [rcx + 6], r9d
jne 0x140093ccd
mov byte [rcx], 0
movzx eax, byte [r15 + 0x25]
inc r8d
add rcx, 0x14
cmp r8d, eax
jl 0x140093cc4
mov eax, dword [rdx + 0xc]
jmp 0x140093d28
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r10 + 0xb8], eax
mov rax, qword [r10 + 0x68]
mov word [rax + rcx*8], 0x7b
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r11d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov r8d, 0xffffffff
mov edx, r11d
mov rcx, r15
call fcn.1400498d0
mov eax, r9d
mov r8d, dword [rsp + 0x40]
xor r9d, r9d
mov dword [rsp + 0x28], ebx
mov edx, 0x3f
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.14002c260
mov ebx, eax
jmp 0x140093fb3
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140093d67
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140093d67
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140093d55
movzx r12d, word [rbx + 0x5e]
cmp r12d, 1
jne 0x140093d98
movzx eax, byte [r15 + 0x1f]
test al, al
jne 0x140093d85
inc dword [r15 + 0x38]
mov r13d, dword [r15 + 0x38]
jmp 0x140093dc5
dec al
movzx eax, al
mov byte [r15 + 0x1f], al
mov r13d, dword [r15 + rax*4 + 0x18c]
jmp 0x140093dc5
mov ecx, dword [r15 + 0x28]
mov r13d, dword [r15 + 0x2c]
cmp r12d, ecx
jg 0x140093db6
lea eax, [r12 + r13]
sub ecx, r12d
mov dword [r15 + 0x2c], eax
mov dword [r15 + 0x28], ecx
jmp 0x140093dc5
mov eax, dword [r15 + 0x38]
lea r13d, [rax + 1]
add eax, r12d
mov dword [r15 + 0x38], eax
xor ebp, ebp
mov r14, r12
mov edi, ebp
test r12d, r12d
je 0x140093e13
mov rsi, qword [rsp + 0xb0]
mov ebp, r13d
mov r12d, dword [rsp + 0x54]
mov rax, qword [rbx + 8]
mov r9d, r12d
mov rdx, rsi
mov dword [rsp + 0x20], ebp
mov rcx, r15
movsx r8d, word [rax + rdi*2]
call fcn.140049de0
inc ebp
inc rdi
cmp rdi, r14
jl 0x140093de1
mov rsi, qword [rsp + 0xd0]
mov r12d, r14d
xor ebp, ebp
mov edi, dword [rsp + 0x80]
mov r14d, dword [rsp + 0x40]
test edi, edi
je 0x140093e4c
mov dword [rsp + 0x28], r12d
xor r9d, r9d
mov r8d, r14d
mov dword [rsp + 0x20], r13d
mov edx, 0x1f
mov rcx, rsi
call fcn.14002c260
mov ebx, eax
test edi, edi
js 0x140093f27
jmp 0x140093e50
mov ebx, dword [rsp + 0x70]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x140093e81
mov eax, dword [rsp + 0x60]
mov r9d, r12d
mov r8d, r13d
mov dword [rsp + 0x20], eax
mov edx, 0x63
mov rcx, rsi
call fcn.14002bc90
mov edx, dword [rsp + 0x60]
jmp 0x140093eb4
mov edx, dword [rsp + 0x60]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x63
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x140093edd
mov r9d, edx
mov dword [rsp + 0x20], ebp
mov edx, 0x7e
mov r8d, r14d
mov rcx, rsi
call fcn.14002bc90
jmp 0x140093f0b
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x7e
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
test edi, edi
je 0x140093f27
movsxd rax, dword [rsi + 0xb8]
test eax, eax
jle 0x140093f27
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8 - 0x15], 0x10
cmp r12d, 1
jne 0x140093f7a
test r13d, r13d
je 0x140093f96
cmp byte [r15 + 0x1f], 8
jae 0x140093f96
movzx r8d, byte [r15 + 0x25]
lea rcx, [r15 + 0xc4]
mov edx, ebp
test r8b, r8b
je 0x140093f61
nop dword [rax]
cmp dword [rcx + 0xc], r13d
je 0x140093f74
inc edx
add rcx, 0x14
cmp edx, r8d
jl 0x140093f50
movzx eax, byte [r15 + 0x1f]
mov dword [r15 + rax*4 + 0x18c], r13d
inc byte [r15 + 0x1f]
jmp 0x140093f96
mov byte [rcx + 6], 1
jmp 0x140093f96
mov r8d, r12d
mov edx, r13d
mov rcx, r15
call fcn.140049a20
cmp r12d, dword [r15 + 0x28]
jle 0x140093f96
mov dword [r15 + 0x28], r12d
mov dword [r15 + 0x2c], r13d
mov r14d, dword [rsp + 0x58]
xor r13d, r13d
mov r12, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x48]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x140093fe1
mov r9d, dword [rsp + 0x68]
mov edx, 0xe
mov r8d, dword [rsp + 0x5c]
mov rcx, rsi
mov dword [rsp + 0x20], r13d
call fcn.14002bc90
jmp 0x140094017
mov edx, dword [rsp + 0x5c]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x68]
mov dword [rax + rcx*8 + 8], edx
mov word [rax + rcx*8], send
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
test ebx, ebx
je 0x14009404a
mov edx, dword [rsi + 0xb8]
jns 0x140094026
lea ebx, [rdx - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x55], 0
je 0x140094038
lea rax, [0x14012aae0]
jmp 0x140094047
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
cmp byte [rdi + 0x3e], 0
mov ecx, 1
mov eax, dword [rsp + 0x7c]
mov rdx, qword [rdi + 0x3d8]
cmovne eax, ecx
mov dword [rsp + 0x7c], eax
mov eax, 0x200
test dword [rdx + 0x28], eax
je 0x1400940ad
test r14d, r14d
je 0x140094082
mov rax, qword [rsp + 0xc8]
cmp qword [rdx + 0x20], rax
jne 0x1400940ad
mov rax, qword [rsp + 0xb0]
test byte [rax + 0x46], 0x20
je 0x14009409f
mov rax, qword [rdx + 0x20]
mov ecx, dword [rax + 0x64]
and cl, 3
cmp cl, 2
je 0x1400940ad
mov rbx, qword [rdx + 0x20]
mov qword [rsp + 0xc8], rbx
jmp 0x1400940b5
mov qword [rsp + 0xc8], r13
mov rcx, rdi
call fcn.14009ef30
mov r8d, dword [rsp + 0x54]
mov r10d, 0x400
movzx r9d, word [rsp + 0x50]
mov rdx, qword [rsp + 0xf0]
mov rax, qword [rsp + 0xd8]
inc r14d
mov rcx, qword [rsp + 0xa0]
add rdx, 0x40
mov dword [rsp + 0x58], r14d
mov qword [rsp + 0xf0], rdx
cmp r14d, dword [rax + 0x14]
jl 0x140093b60
mov r14, qword [rsp + 0x100]
mov rdi, qword [rsp + 0xa8]
mov rax, qword [rsp + 0xc8]
mov qword [rbp + 0x38], rax
test rax, rax
je 0x14009412f
mov eax, dword [rsp + 0x98]
mov dword [rbp + 8], eax
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x88]
test rdx, rdx
je 0x140094150
mov rcx, rbx
mov qword [rdx + 0x10], r13
call fcn.140044c80
mov ecx, dword [rsp + 0xbc]
mov edx, dword [rsi + 0xb8]
test ecx, ecx
jns 0x140094164
lea ecx, [rdx - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x55], 0
je 0x140094176
lea rax, [0x14012aae0]
jmp 0x140094185
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 4], edx
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
mov edx, dword [rbp + 0xc]
cmp dword [rax + 0x3c], ecx
jg 0x1400941b5
mov r9d, edx
mov dword [rsp + 0x20], r13d
mov edx, 0xd
xor r8d, r8d
mov rcx, rsi
call fcn.14002bc90
jmp 0x1400941e4
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0xd
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov rax, qword [rsi + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x140094203
mov eax, dword [rsp + 0x68]
not eax
movsxd rcx, eax
mov eax, dword [rsi + 0xb8]
mov dword [rdx + rcx*4], eax
cmp byte [rdi + 0x3a], 1
jbe 0x1400942bc
test r12, r12
je 0x1400942bc
test rbx, rbx
je 0x140094261
cmp qword [rbx + 0x298], 0
je 0x140094235
mov rdx, r12
mov rcx, rbx
call fcn.140006a00
jmp 0x1400942bc
cmp r12, qword [rbx + 0x180]
jb 0x140094261
cmp r12, qword [rbx + 0x188]
jae 0x140094261
mov rax, qword [rbx + 0x178]
mov qword [r12], rax
dec dword [rbx + 0x160]
mov qword [rbx + 0x178], r12
jmp 0x1400942bc
cmp dword [0x140126d50], 0
je 0x1400942b3
mov rcx, qword [0x14012acd8]
test rcx, rcx
je 0x14009427c
call qword [0x140126dd8]
mov rcx, r12
call qword [0x140126d90]
dec qword [0x14012aa88]
movsxd rcx, eax
sub qword [0x14012aa40], rcx
mov rcx, r12
call qword [0x140126d80]
mov rcx, qword [0x14012acd8]
test rcx, rcx
je 0x1400942bc
call qword [0x140126de8]
jmp 0x1400942bc
mov rcx, r12
call qword [0x140126d80]
cmp dword [rsp + 0x7c], 0
mov r11, qword [rsp + 0x48]
jne 0x14009204f
mov r8d, r13d
nop
movzx ecx, word [r14 + 0x12]
test cl, 4
jne 0x14009204f
cmp dword [r11], 0
je 0x1400942f1
mov rax, qword [r14]
test byte [rax + 4], 1
je 0x14009204f
mov rax, qword [r14 + 0x38]
test qword [r11 + 0x50], rax
jne 0x14009204f
test r8d, r8d
je 0x140094315
bt cx, 0xa
jae 0x140094315
mov eax, 0x200
or cx, ax
jmp 0x140094319
or cx, 4
mov edx, send
mov rax, r14
mov word [rax + rdx], cx
movsxd rcx, dword [r14 + 0x18]
test ecx, ecx
js 0x14009204f
mov rax, qword [r14 + 8]
mov r14, rcx
shl r14, 6
add r14, qword [rax + 0x20]
add byte [r14 + 0x16], 0xff
jne 0x14009204f
inc r8d
jmp 0x1400942d0
test r8b, 0x20
je 0x140094360
mov byte [r11 + 0x2d], 0xa1
jmp 0x14009204f
lea rdx, [0x140000000]
mov dword [r11 + 0x30], ebp
movzx eax, byte [rdi + rdx + 0x10a7b4]
movzx r8d, byte [rdi + rdx + 0x10a854]
mov byte [r11 + 0x2d], al
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x1400943bc
mov edx, r8d
mov dword [rsp + 0x20], r13d
mov r8d, ebp
mov r9d, r12d
mov rcx, rsi
call fcn.14002bc90
mov edx, eax
mov byte [r14 + 0x2f], 1
mov r11, r14
lea eax, [rax + 1]
mov dword [r14 + 0x34], eax
jmp 0x14009204f
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], r8b
mov byte [rax + rcx*8 + 3], r13b
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], r13b
lea eax, [rdx + 1]
mov dword [r11 + 0x34], eax
mov byte [r11 + 0x2f], 1
jmp 0x14009204f
cmp dword [r11], 0
mov r14, qword [rdi]
je 0x140094413
test byte [r14 + 4], 1
je 0x1400944cd
bt cx, 9
jae 0x14009447f
mov edx, dword [r11 + 0x24]
mov r8d, edx
mov rax, qword [rsi + 0x18]
and edx, 1
movsxd rbx, dword [rsi + 0xb8]
add edx, 0x15
shr r8d, 1
cmp dword [rax + 0x3c], ebx
jg 0x14009444e
xor r9d, r9d
mov dword [rsp + 0x20], r13d
mov rcx, rsi
call fcn.14002bc90
mov ebx, eax
jmp 0x14009447f
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], dl
mov byte [rax + rcx*8 + 3], 0
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 r9d, send
mov r8d, r12d
mov rdx, r14
mov rcx, r15
call fcn.14004c660
test ebx, ebx
je 0x1400944c8
mov rax, qword [rsi]
mov edx, dword [rsi + 0xb8]
cmp byte [rax + 0x55], 0
je 0x1400944af
lea rax, [0x14012aae0]
jmp 0x1400944c5
lea eax, [rdx - 1]
test ebx, ebx
cmovns eax, ebx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
or word [rdi + 0x12], 4
mov r11, qword [rsp + 0x48]
dec ebp
add rdi, 0x40
test ebp, ebp
jg 0x140092080
mov r12, qword [rsp + 0xe0]
mov edi, dword [r12 + 0x14]
mov rbx, qword [r12 + 0x20]
test edi, edi
jle 0x1400945f9
mov rsi, qword [rsp + 0x48]
mov r14, qword [rsp + 0xf8]
nop word [rax + rax]
test byte [rbx + 0x12], 6
jne 0x1400945e3
movzx eax, word [rbx + 0x14]
mov edx, reloc.WS2_32.dll_inet_addr
test al, 0x82
setne cl
bt ax, dx
setb al
test al, cl
je 0x1400945e3
mov eax, dword [rsp + 0x54]
cmp dword [rbx + 0x1c], eax
jne 0x1400945e3
cmp dword [rsi], 0
jne 0x1400945e3
mov r8d, dword [rbx + 0x28]
mov r9, r14
mov rbp, qword [rbx]
mov edx, eax
mov qword [rsp + 0x28], r13
mov rcx, r12
mov dword [rsp + 0x20], 0x83
call fcn.140098250
test rax, rax
je 0x1400945e3
test byte [rax + 0x12], 4
jne 0x1400945e3
mov rax, qword [rax]
lea rdx, [rsp + 0x110]
mov r8d, dword [rsp + 0xb8]
mov r9d, send
mov rcx, r15
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x110], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x120], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x130], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x140], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rsp + 0x150], xmm0
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x120], rax
call fcn.14004c660
dec edi
add rbx, 0x40
test edi, edi
jg 0x140094510
mov rsi, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0x48]
mov r9d, dword [rdi]
test r9d, r9d
je 0x1400946ff
mov eax, dword [rsi + 0xb8]
mov dword [rdi + 0x1c], eax
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14009463d
mov edx, 0x4c
mov dword [rsp + 0x20], r13d
mov r8d, 1
mov rcx, rsi
call fcn.14002bc90
jmp 0x140094670
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8], 0x4c
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
cmp byte [r15 + 0x25], 0
mov r8d, r13d
jbe 0x1400946b1
lea rdx, [r15 + 0xd0]
cmp byte [rdx - 6], 0
je 0x1400946a0
movzx eax, byte [r15 + 0x1f]
cmp al, 8
jae 0x1400946a0
mov ecx, eax
mov eax, dword [rdx]
mov dword [r15 + rcx*4 + 0x18c], eax
inc byte [r15 + 0x1f]
movzx eax, byte [r15 + 0x25]
inc r8d
add rdx, 0x14
cmp r8d, eax
jl 0x140094681
mov byte [r15 + 0x25], 0
cmp dword [r12 + 0x14], 0
mov rbx, qword [r12 + 0x20]
jle 0x1400946ff
test byte [rbx + 0x12], 6
jne 0x1400946f1
mov rax, qword [rbx + 0x38]
test qword [rdi + 0x50], rax
jne 0x1400946f1
mov r8d, dword [rsp + 0xb8]
mov r9d, send
mov rdx, qword [rbx]
mov rcx, r15
call fcn.14004c660
or word [rbx + 0x12], 4
inc r13d
add rbx, 0x40
cmp r13d, dword [r12 + 0x14]
jl 0x1400946c3
mov rax, qword [rdi + 0x50]
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
call fcn.1400d1190
mov rbx, qword [rsp + 0x1c8]
add rsp, 0x170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret