Function at 0x14025cad0
Capabilities:
Access peb ldr_data

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
movaps xmmword [rsp + 0x90], xmm6
mov rsi, rcx
mov rax, qword [0x1404a7eb8]
xor rax, rsp
mov qword [rsp + 0x88], rax
mov rdx, qword [rcx]
mov edi, dword [rcx + 0x4c]
mov qword [rsp + 0x50], 0
mov ecx, 0x80
call fcn.1401774b0
mov r15, rax
mov eax, dword [0x1404b15b8]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 8]
mov qword [rsp + 0x40], rcx
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x18]
mov qword [r15], rcx
mov byte [r15 + 8], 0
mov dword [r15 + 0xc], edi
mov qword [r15 + 0x10], 0
mov word [r15 + 0x18], 0
mov rcx, qword [rax + 0x18]
xorps xmm6, xmm6
movups xmmword [r15 + 0x20], xmm6
mov qword [r15 + 0x30], 0
mov qword [r15 + 0x38], rcx
mov rcx, qword [rax + 0x18]
movups xmmword [r15 + 0x40], xmm6
mov qword [r15 + 0x50], 0
mov qword [r15 + 0x58], rcx
mov rax, qword [rax + 0x18]
movups xmmword [r15 + 0x60], xmm6
mov qword [r15 + 0x70], 0
mov qword [r15 + 0x78], rax
mov qword [rsp + 0x58], r15
movups xmmword [rsp + 0x60], xmm6
mov qword [rsp + 0x70], 0
lea rbp, [rsp + 0x50]
lea r13, [rsp + 0x78]
lea r14, [0x140428e48]
jmp 0x14025cc10
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
xor r9d, r9d
mov edx, 1
mov r8d, 0x7fffffff
nop word cs:[rax + rax]
mov rcx, r15
call fcn.14025c330
test al, al
je 0x14025e0c5
lea r12, [r15 + 0x20]
jmp 0x14025cc8d
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov eax, dword [r15 + 0xc]
and eax, 4
cmp eax, 1
mov ebx, 0
adc ebx, 2
mov rdx, qword [rsi]
mov ecx, reloc.WS2_32.dll_recv
call fcn.1401774b0
mov rdi, rax
mov eax, dword [r15 + 0xc]
lea rcx, [0x1404289e0]
mov qword [rdi], rcx
mov dword [rdi + 8], ebx
mov dword [rdi + 0xc], eax
mov rcx, r15
call fcn.14025bb40
mov rdx, qword [r15 + 0x20]
inc rdx
mov rcx, r12
call fcn.140166fd0
mov rax, qword [r15 + 0x20]
mov rcx, qword [r15 + 0x30]
mov qword [rcx + rax*8 - 8], rdi
mov edi, dword [rsi + 0x28]
lea eax, [rdi - 0x24]
cmp eax, 0x59
ja case.default.0x14025cca3
movsxd rax, dword [r14 + rax*4]
add rax, r14
jmp rax
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025cc16
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025cc33
mov rax, qword [rsi + 0x20]
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
cmp qword [rsi + 0x30], rax
jge 0x14025e0b6
mov rcx, rsi
xor edx, edx
call fcn.14025c820
lea ecx, [rax - 0x30]
cmp ecx, 0x48
ja case.default.0x14025cd0d
lea rdx, [0x140428fb0]
movsxd rax, dword [rdx + rcx*4]
add rax, rdx
jmp rax
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025ce84
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025cea1
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025cda4
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025cdc1
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025cdce
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025cdeb
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rcx, r15
call fcn.14025c070
jmp 0x14025cc8d
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
movzx ebx, byte [r15 + 0xc]
mov rdx, qword [rsi]
mov ecx, reloc.WS2_32.dll_recv
call fcn.1401774b0
mov rdi, rax
mov eax, dword [r15 + 0xc]
lea rcx, [0x1404289e0]
mov qword [rdi], rcx
test bl, 4
jne 0x14025ce4a
mov dword [rdi + 8], 1
mov dword [rdi + 0xc], eax
mov rcx, r15
call fcn.14025bb40
mov rdx, qword [r15 + 0x20]
inc rdx
mov rcx, r12
call fcn.140166fd0
mov rax, qword [r15 + 0x20]
mov rcx, qword [r15 + 0x30]
mov qword [rcx + rax*8 - 8], rdi
mov byte [rsi + 0x51], 1
jmp 0x14025cc8d
mov dword [rdi + 8], 0
jmp 0x14025cc66
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025cecb
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025cee8
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rdx, qword [rsi]
mov ecx, reloc.WS2_32.dll_recv
call fcn.1401774b0
mov rdi, rax
mov eax, dword [r15 + 0xc]
lea rcx, [0x1404289e0]
mov qword [rdi], rcx
mov dword [rdi + 8], 5
jmp 0x14025cc66
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rdx, qword [rsi]
mov ecx, reloc.WS2_32.dll_recv
call fcn.1401774b0
mov rdi, rax
mov eax, dword [r15 + 0xc]
lea rcx, [0x1404289e0]
mov qword [rdi], rcx
mov dword [rdi + 8], 4
jmp 0x14025cc66
mov qword [rsp + 0x78], 0
mov rcx, rsi
mov rdx, r13
call fcn.14025f3d0
test al, al
je 0x14025cfd9
mov rdx, qword [rsp + 0x78]
mov rax, rbp
jmp 0x14025cf48
mov rax, qword [rax]
test rax, rax
je 0x14025cf5a
cmp dword [rax + 0x10], 1
jne 0x14025cf40
cmp rdx, qword [rax + 0x18]
je 0x14025d70c
jle 0x14025cf40
mov rcx, rsi
call fcn.14025e410
mov rdi, rax
mov rdx, qword [rsi]
mov ecx, 0x20
call fcn.1401774b0
mov ecx, dword [r15 + 0xc]
lea rdx, [0x140428ae0]
mov qword [rax], rdx
mov qword [rax + 8], rdi
mov qword [rax + 0x10], 0
mov dword [rax + 0x18], ecx
mov rcx, r15
mov rdx, rax
call fcn.14025ba60
jmp 0x14025df01
mov qword [rsp + 0x30], rbp
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025d0ca
mov rcx, rsi
xor edx, edx
call fcn.14025c820
mov ebp, eax
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
jmp 0x14025d0cc
test byte [rsi + 0x4c], 8
jne 0x14025e0e3
mov rax, qword [rsi + 0x20]
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
cmp qword [rsi + 0x30], rax
jge case.0x14025cd0d.48
mov rcx, rsi
xor edx, edx
call fcn.14025c820
mov ecx, eax
and ecx, 0xfffffffe
cmp ecx, 0x38
jne case.0x14025cd0d.48
mov rcx, r15
mov edx, eax
call fcn.14025bcd0
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025db7c
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025df01
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025d394
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
test byte [rsi + 0x4c], 8
jne 0x14025d3b7
jmp 0x14025d40c
cmp edi, 0x200000
je 0x14025e05e
nop dword [rax]
cmp edi, 0x10000
jb 0x14025d1c8
mov ecx, edi
mov rdx, r13
call fcn.140007e00
movzx edi, word [rsp + 0x78]
mov rcx, r15
call fcn.14025b3e0
mov word [r15 + 0x18], di
movzx edx, word [rsp + 0x7a]
mov rcx, r15
call fcn.14025b5d0
jmp 0x14025d201
xor ebp, ebp
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025d0f2
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025d10f
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rdx, qword [rsi]
mov ecx, 0x20
call fcn.1401774b0
mov r13, rax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
mov rcx, qword [rax + 0x18]
movups xmmword [r13], xmm6
mov qword [r13 + 0x10], 0
mov qword [r13 + 0x18], rcx
mov qword [r13 + 8], 2
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
sub rdx, rax
cmp rdx, 0x10
jge 0x14025d176
mov edx, reloc.WS2_32.dll_recv
call fcn.140228140
mov qword [r13 + 0x10], rax
test byte [rsi + 0x4c], 8
je 0x14025d18c
movzx r8d, byte [r15 + 0xc]
and r8b, 2
shr r8b, 1
jmp 0x14025d18f
lea rdx, [rax + 0x10]
mov qword [rcx], rdx
add qword [rcx + 0x10], 0x10
mov qword [r13 + 0x10], rax
test byte [rsi + 0x4c], 8
jne 0x14025d168
xor r8d, r8d
mov ecx, ebp
mov rdx, r13
jmp 0x14025d5d0
mov rcx, rsi
mov rdx, r13
mov r8, r13
call fcn.14025fca0
test al, al
jne case.0x14025cca3.42
test byte [rsi + 0x4c], 8
jne 0x14025e0d4
mov edi, dword [rsi + 0x28]
cmp edi, 0x10000
jae 0x14025d09c
test byte [r15 + 0xc], 8
je 0x14025d1f7
mov eax, edi
and eax, 0xfc00
cmp eax, 0xdc00
je 0x14025d716
cmp eax, 0xd800
jne 0x14025d1f7
mov rcx, r15
call fcn.14025b3e0
mov word [r15 + 0x18], di
jmp 0x14025d201
mov rcx, r15
mov edx, edi
call fcn.14025bcd0
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
mov r8, qword [rax + 8]
mov rdx, qword [r8 + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025db7c
mov rax, qword [r8 - 1]
shr eax, 0xc
cmp eax, 0x5f
je 0x14025d24a
cmp eax, 0x5e
jne 0x14025e101
movzx eax, byte [r8 + rcx + 0xf]
movzx eax, ax
lea rdx, [rcx + 1]
test byte [rsi + 0x4c], 8
jne 0x14025d261
jmp 0x14025d9d4
movzx eax, word [r8 + rcx*2 + 0xf]
movzx eax, ax
lea rdx, [rcx + 1]
test byte [rsi + 0x4c], 8
je 0x14025d9d4
mov r9, qword [r8 + 7]
sar r9, 1
cmp rdx, r9
jge 0x14025d9d4
mov r9d, eax
and r9d, 0xfc00
cmp r9d, 0xd800
jne 0x14025d9d4
mov r9, qword [r8 - 1]
shr r9d, 0xc
cmp r9d, 0x5f
je 0x14025d99d
cmp r9d, 0x5e
jne 0x14025e101
movzx r8d, byte [r8 + rdx + 0xf]
mov r9d, r8d
and r9d, 0xfc00
cmp r9d, 0xdc00
je 0x14025d9b6
jmp 0x14025d9d4
cmp qword [rbp], 0
je 0x14025e129
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025d698
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025d6b5
mov rcx, rsi
mov rdx, rbp
call fcn.14025e500
mov rbp, rax
mov r15, qword [rax + 8]
jmp 0x14025cc10
mov rcx, rsi
mov rdx, r15
call fcn.14025e990
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x80]
mov rdi, rax
mov rcx, r15
mov rdx, rax
call fcn.14025bf90
test al, al
je 0x14025d98d
mov rcx, r15
call fcn.14025bb40
mov rdx, qword [r15 + 0x20]
inc rdx
mov rcx, r12
call fcn.140166fd0
mov rax, qword [r15 + 0x20]
mov rcx, qword [r15 + 0x30]
mov qword [rcx + rax*8 - 8], rdi
jmp 0x14025df01
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025d536
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025d553
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
test byte [rsi + 0x4c], 8
je 0x14025d40c
mov rcx, qword [rsi + 0x20]
mov rax, qword [rsi + 0x30]
mov rcx, qword [rcx + 8]
mov rdx, qword [rcx + 7]
sar rdx, 1
cmp rax, rdx
jge 0x14025d3ea
mov rcx, rsi
xor edx, edx
call fcn.14025c820
cmp eax, 0x30
jb 0x14025d40c
mov rcx, qword [rsi + 0x20]
mov rax, qword [rsi + 0x30]
mov rcx, qword [rcx + 8]
dec rcx
mov rcx, qword [rcx + 8]
sar rcx, 1
cmp rax, rcx
jge 0x14025d40c
mov rcx, rsi
xor edx, edx
call fcn.14025c820
cmp eax, 0x39
jbe 0x14025e156
mov rcx, rsi
call fcn.14025f540
mov rcx, r15
mov edx, eax
call fcn.14025bcd0
jmp 0x14025df01
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
mov edi, 0x200000
cmp rcx, rdx
jge 0x14025d454
mov rcx, rsi
xor edx, edx
call fcn.14025c820
mov edi, eax
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025d871
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
test byte [rsi + 0x4c], 8
je 0x14025d898
mov dword [rsp + 0x38], edi
mov qword [rsp + 0x30], rbp
mov rdx, qword [rsi]
mov ecx, 0x20
call fcn.1401774b0
mov rbx, rax
mov rbp, qword [rsp + 0x40]
mov rax, qword [rbp]
mov rax, qword [rax + 0x18]
movups xmmword [rbx], xmm6
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], rax
mov rdx, qword [rsi]
mov ecx, 0x20
call fcn.1401774b0
mov rdi, rax
mov rax, qword [rbp]
mov rax, qword [rax + 0x18]
movups xmmword [rdi], xmm6
mov qword [rdi + 0x10], 0
mov qword [rdi + 0x18], rax
mov rdx, qword [rsi]
mov ecx, 0x20
call fcn.1401774b0
mov r13, rax
mov rax, qword [rbp]
mov rcx, qword [rax + 0x18]
movups xmmword [r13], xmm6
mov qword [r13 + 0x10], 0
mov qword [r13 + 0x18], rcx
mov qword [r13 + 8], 2
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
sub rdx, rax
cmp rdx, 0x10
jge 0x14025dd1a
mov edx, reloc.WS2_32.dll_recv
call fcn.140228140
jmp 0x14025dd26
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rdx, qword [rsi]
mov ecx, 0x20
call fcn.1401774b0
mov r13, rax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
mov rcx, qword [rax + 0x18]
movups xmmword [r13], xmm6
mov qword [r13 + 0x10], 0
mov qword [r13 + 0x18], rcx
mov qword [r13 + 8], 2
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
sub rdx, rax
cmp rdx, 0x10
mov qword [rsp + 0x30], rbp
jge 0x14025d5a9
mov edx, reloc.WS2_32.dll_recv
call fcn.140228140
jmp 0x14025d5b5
lea rdx, [rax + 0x10]
mov qword [rcx], rdx
add qword [rcx + 0x10], 0x10
mov qword [r13 + 0x10], rax
xor eax, eax
test byte [r15 + 0xc], 0x10
sete al
lea ecx, [rax*4 + 0x2a]
mov rdx, r13
xor r8d, r8d
call fcn.1402530d0
mov rdx, qword [rsi]
mov ecx, 0x28
call fcn.1401774b0
mov rbp, rax
mov eax, dword [r15 + 0xc]
lea rcx, [0x1404278e0]
mov qword [rbp], rcx
mov qword [rbp + 8], r13
mov word [rbp + 0x10], 0
mov dword [rbp + 0x18], eax
mov qword [rbp + 0x20], 0
cmp qword [r13], 0
jne 0x14025deba
mov rdi, qword [r13 + 8]
mov rbx, qword [r13 + 0x10]
test rdi, rdi
jg 0x14025dea1
mov rcx, qword [r13 + 0x18]
mov rdx, qword [rcx]
test rbx, rbx
je 0x14025d650
lea rax, [rbx + rdi*8]
add rax, 7
and rax, 0xfffffffffffffff8
cmp rax, rdx
jne 0x14025d650
lea rax, [rbx + 8]
cmp rax, qword [rcx + 8]
jbe 0x14025de7c
mov rax, qword [rcx + 8]
sub rax, rdx
cmp rax, 8
jge 0x14025dab7
mov edx, 8
call fcn.140228140
mov rdx, rax
test rbx, rbx
je 0x14025dacc
shl rdi, 3
mov rcx, rdx
mov qword [rsp + 0x38], rdx
mov rdx, rbx
mov r8, rdi
call fcn.1402a44e0
mov rbx, qword [rsp + 0x38]
jmp 0x14025de95
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rcx, r15
call fcn.14025c1e0
mov rdi, rax
mov r12, rbp
mov ebp, dword [rbp + 0x10]
cmp ebp, 4
je 0x14025d982
mov rbx, qword [r12 + 0x18]
cmp ebp, 1
jne 0x14025d946
mov rdx, qword [r12 + 0x20]
test rdx, rdx
mov rbp, r12
je 0x14025d6f5
mov rcx, rsi
mov r8, rbx
call fcn.14025e290
mov rcx, rsi
mov rdx, rbx
call fcn.14025e410
mov qword [rax + 8], rdi
mov rdi, rax
jmp 0x14025d985
mov byte [r15 + 8], 1
jmp 0x14025df01
mov rcx, r15
mov edx, edi
call fcn.14025b5d0
jmp 0x14025d201
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025db9e
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025dbbb
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025dc08
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025dc25
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025dc36
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025dc53
test byte [rsi + 0x4c], 8
jne 0x14025d7d4
cmp byte [rsi + 0x53], 0
je 0x14025de20
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025ddf0
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025de0d
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025dc64
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
jmp 0x14025dc81
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025dcc7
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025dce4
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
test byte [rsi + 0x4c], 8
jne 0x14025d486
mov rcx, r15
mov edx, edi
call fcn.14025bcd0
jmp 0x14025df01
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025dd66
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025dd83
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025dd94
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025ddb1
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x30]
inc rcx
mov qword [rsi + 0x30], rcx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 7]
sar rdx, 1
cmp rcx, rdx
jge 0x14025ddc2
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
jmp 0x14025dddf
mov rdx, qword [rsi]
mov r15, qword [rsi + 0x38]
mov ecx, 0x30
call fcn.1401774b0
sub r15, rbx
cmp ebp, 2
mov ecx, dword [r12 + 0x14]
lea rdx, [0x1404288e0]
mov qword [rax], rdx
mov qword [rax + 8], rdi
sete byte [rax + 0x10]
mov qword [rax + 0x18], r15
mov qword [rax + 0x20], rbx
mov dword [rax + 0x28], ecx
mov rdi, rax
mov rbp, r12
mov rbp, qword [rbp]
mov r15, qword [rbp + 8]
mov rcx, r15
mov rdx, rdi
call fcn.14025ba60
jmp 0x14025df01
movzx r8d, word [r8 + rcx*2 + 0x11]
mov r9d, r8d
and r9d, 0xfc00
cmp r9d, 0xdc00
jne 0x14025d9d4
and eax, 0x3ff
shl eax, 0xa
and r8d, 0x3ff
add eax, r8d
add eax, 0x10000
add rcx, 2
mov rdx, rcx
mov qword [rsi + 0x30], rdx
mov dword [rsi + 0x28], eax
cmp eax, 0x3e
jle 0x14025df0d
nop word cs:[rax + rax]
cmp eax, 0x3f
je 0x14025da3d
cmp eax, 0x7b
jne 0x14025cc10
mov rcx, rsi
mov rdx, r13
lea r8, [rsp + 0x48]
call fcn.14025fca0
test al, al
je 0x14025cc10
mov r8, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x78]
cmp r8, rdx
jl 0x14025e0f2
mov eax, dword [rsi + 0x28]
xor r9d, r9d
cmp eax, 0x3f
jne 0x14025cc00
jmp 0x14025dfb4
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x48], 1
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025da8a
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
mov r8d, 1
xor edx, edx
xor r9d, r9d
cmp eax, 0x3f
jne 0x14025cc00
jmp 0x14025dfb4
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
xor edx, edx
mov r8d, 1
xor r9d, r9d
jmp 0x14025cc00
lea rax, [rdx + 8]
mov qword [rcx], rax
add qword [rcx + 0x10], 8
test rbx, rbx
jne 0x14025d677
mov rbx, rdx
jmp 0x14025de95
cmp eax, 0x200000
je 0x14025e0b6
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025db0b
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov edi, eax
mov dword [rsi + 0x28], eax
test byte [rsi + 0x4c], 8
jne 0x14025db33
jmp 0x14025db42
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov edi, 0x200000
test byte [rsi + 0x4c], 8
je 0x14025db42
mov ecx, edi
call fcn.14025c9c0
test al, al
je 0x14025e0e3
mov rcx, r15
mov edx, edi
call fcn.14025bcd0
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025db7c
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
cmp eax, 0x3e
jle 0x14025df0d
jmp 0x14025d9f0
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
jmp 0x14025df01
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rcx, rsi
mov rdx, r13
call fcn.14025f750
test al, al
je 0x14025dbed
mov edi, dword [rsp + 0x78]
mov rcx, r15
call fcn.14025b3e0
mov rcx, r15
mov edx, edi
call fcn.14025beb0
mov rcx, r15
call fcn.14025b3e0
jmp 0x14025df01
test byte [rsi + 0x4c], 8
jne 0x14025e0e3
mov rcx, r15
mov dx, 0x75
call fcn.14025bcd0
jmp 0x14025df01
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rcx, r15
mov dx, ntohs
call fcn.14025bcd0
jmp 0x14025df01
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rcx, r15
mov dx, listen
call fcn.14025bcd0
jmp 0x14025df01
mov dword [rsi + 0x28], 0x200000
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
inc rcx
mov qword [rsi + 0x30], rcx
mov byte [rsi + 0x48], 0
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
cmp rcx, rax
jge 0x14025dcac
mov rcx, rsi
xor edx, edx
call fcn.14025c820
mov ecx, eax
and ecx, 0xffffffdf
add ecx, 0xffffffa5
cmp ecx, 0xffffffe5
ja 0x14025de41
test byte [rsi + 0x4c], 8
jne 0x14025e0e3
mov rcx, r15
mov dx, 0x5c
call fcn.14025bcd0
jmp 0x14025df01
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov edx, 2
mov rcx, rsi
mov r8, r13
call fcn.14025f640
test al, al
je 0x14025dcff
movzx edx, word [rsp + 0x78]
jmp 0x14025dd0d
mov dx, pe_nt_image_headers64
test byte [rsi + 0x4c], 8
jne 0x14025e0e3
mov rcx, r15
call fcn.14025bcd0
jmp 0x14025df01
lea rdx, [rax + 0x10]
mov qword [rcx], rdx
add qword [rcx + 0x10], 0x10
mov qword [r13 + 0x10], rax
mov rcx, rsi
mov rdx, rbx
mov r8, rdi
call fcn.14025eee0
test al, al
je 0x14025e147
cmp dword [rsp + 0x38], 0x50
sete r8b
mov qword [rsp + 0x20], rdi
mov rdx, r13
mov r9, rbx
call fcn.14025f150
test al, al
jne 0x14025d5d5
jmp 0x14025e147
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rcx, r15
mov dx, reloc.WS2_32.dll_listen
call fcn.14025bcd0
jmp 0x14025df01
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rcx, r15
mov dx, 9
call fcn.14025bcd0
jmp 0x14025df01
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rcx, r15
mov dx, 0xa
call fcn.14025bcd0
jmp 0x14025df01
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov rcx, rsi
mov rdx, r15
mov r8, rbp
call fcn.14025fad0
jmp 0x14025df01
cmp byte [rsi + 0x52], 0
jne case.0x14025cd0d.58
mov rcx, rsi
call fcn.140260460
test byte [rsi + 0x53], 1
jne 0x14025d7d4
jmp case.0x14025cd0d.58
mov rcx, qword [rsi + 0x20]
mov rdx, qword [rsi + 0x30]
inc rdx
mov qword [rsi + 0x30], rdx
mov r8, qword [rcx + 8]
mov r8, qword [r8 + 7]
sar r8, 1
cmp rdx, r8
jge 0x14025e039
mov rcx, rsi
mov dl, 1
mov edi, eax
call fcn.14025c820
mov ecx, eax
mov eax, edi
mov dword [rsi + 0x28], ecx
jmp 0x14025e056
lea rax, [rbx + 0xf]
and rax, 0xfffffffffffffff8
mov qword [rcx], rax
mov rax, qword [rcx + 0x10]
sub rax, rdi
inc rax
mov qword [rcx + 0x10], rax
mov qword [r13 + 0x10], rbx
mov qword [r13 + 8], 1
mov qword [r13], 1
movabs rax, 0x10ffff00000000
mov qword [rbx], rax
xor byte [rbp + 0x20], 1
mov rcx, r15
mov rdx, rbp
call fcn.14025bf90
mov rcx, r15
test al, al
je 0x14025deef
call fcn.14025bb40
mov rdx, qword [r15 + 0x20]
inc rdx
mov rcx, r12
call fcn.140166fd0
mov rax, qword [r15 + 0x20]
mov rcx, qword [r15 + 0x30]
mov qword [rcx + rax*8 - 8], rbp
jmp 0x14025def7
mov rdx, rbp
call fcn.14025ba60
lea r13, [rsp + 0x78]
mov rbp, qword [rsp + 0x30]
mov eax, dword [rsi + 0x28]
cmp eax, 0x3e
jg 0x14025d9f0
cmp eax, 0x2a
je 0x14025df6c
cmp eax, 0x2b
jne 0x14025cc10
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x48], 0x7fffffff
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025cbc9
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
mov r8d, 0x7fffffff
mov edx, 1
xor r9d, r9d
cmp eax, 0x3f
jne 0x14025cc00
jmp 0x14025dfb4
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x48], 0x7fffffff
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025dfe4
mov rcx, rsi
mov dl, 1
call fcn.14025c820
mov dword [rsi + 0x28], eax
mov r8d, 0x7fffffff
xor edx, edx
xor r9d, r9d
cmp eax, 0x3f
jne 0x14025cc00
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
cmp qword [rsi + 0x30], rcx
jge 0x14025e011
mov rcx, rsi
mov rdi, rdx
mov dl, 1
mov rbx, r8
call fcn.14025c820
mov rdx, rdi
mov r8, rbx
mov dword [rsi + 0x28], eax
jmp 0x14025e02e
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
xor edx, edx
mov r8d, 0x7fffffff
xor r9d, r9d
jmp 0x14025cc00
mov dword [rsi + 0x28], 0x200000
mov rax, qword [rax + 8]
mov rax, qword [rax + 7]
sar rax, 1
inc rax
mov qword [rsi + 0x30], rax
mov byte [rsi + 0x48], 0
mov r9d, 1
jmp 0x14025cc00
mov dword [rsi + 0x28], 0x200000
mov rcx, qword [rcx + 8]
mov rcx, qword [rcx + 7]
sar rcx, 1
inc rcx
mov qword [rsi + 0x30], rcx
mov byte [rsi + 0x48], 0
and eax, 0x1f
jmp 0x14025d414
cmp qword [rbp], 0
jne 0x14025e138
mov rcx, r15
call fcn.14025c1e0
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
cmp rcx, qword [0x1404a7eb8]
jne 0x14025e0a1
movaps xmm6, xmmword [rsp + 0x90]
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14029fd30
int3
lea rdx, str.Nothing_to_repeat
mov rcx, rsi
call fcn.14025c9e0
lea rdx, str._at_end_of_pattern
mov rcx, rsi
call fcn.14025c9e0
lea rdx, str.invalid_quantifier.
mov rcx, rsi
call fcn.14025c9e0
lea rdx, str.Lone_quantifier_brackets
mov rcx, rsi
call fcn.14025c9e0
lea rdx, str.Invalid_identity_escape_in_Unicode_pattern
mov rcx, rsi
call fcn.14025c9e0
lea rdx, str.numbers_out_of_order_in__quantifier.
mov rcx, rsi
call fcn.14025c9e0
lea rax, str..._.._runtime_vm_object.h
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x80], 0x34c3
lea rdx, str.unreachable_code
lea rcx, [rsp + 0x78]
call fcn.1402d94a0
lea rdx, str.Unmatched__
mov rcx, rsi
call fcn.14025c9e0
lea rdx, str.Unterminated_group
mov rcx, rsi
call fcn.14025c9e0
lea rdx, str.Invalid_property_name
mov rcx, rsi
call fcn.14025c9e0
lea rdx, str.Invalid_decimal_escape
mov rcx, rsi
call fcn.14025c9e0
int3