Function at 0x14003c710
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x3c8
movdqa xmmword [rsp + 0x3b0], xmm7
movdqa xmmword [rsp + 0x3a0], xmm6
mov rsi, r9
mov rdi, r8
mov r12, rdx
mov qword [rsp + 0x1e0], rcx
mov rbx, qword [rsp + 0x430]
mov eax, dword [0x140221400]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x18], 0
jne 0x14003c770
call fcn.14014c4e0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x320], xmm0
mov qword [rsp + 0x330], 0
lea rax, [0x1401ef3a0]
mov qword [rsp + 0x338], rax
mov eax, dword [0x140221400]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movdqu xmm0, xmmword [rax + 0x20]
inc qword [rax + 0x20]
movdqa xmmword [rsp + 0x340], xmm0
mov rax, qword [rbx]
test rax, rax
je 0x14003c7d8
mov r14, qword [rax + 0x60]
cmp rdi, 1
je 0x14003c7e5
jmp 0x14003ca8a
xor r14d, r14d
cmp rdi, 1
jne 0x14003ca8a
mov r15, qword [r12]
mov rcx, qword [r15 + 0x110]
mov rax, 0xfffffffffffffd80
add rax, qword [r15 + 0x108]
shl rcx, 7
lea rcx, [rcx + rcx*4]
nop word cs:[rax + rax]
test rcx, rcx
je 0x140042a9d
lea rbp, [rax + 0x280]
add rcx, 0xfffffffffffffd80
cmp qword [rax + 0x350], rsi
mov rax, rbp
jne 0x14003c810
mov rax, qword [rsp + 0x430]
cmp qword [rax + 0x28], 0
je 0x14003c95e
mov rdi, qword [rsp + 0x430]
mov rcx, qword [rdi + 8]
mov rdx, qword [rdi + 0x10]
mov r8, rsi
call fcn.140035200
mov r8, qword [rdi + 0x40]
mov rdx, qword [rdi + 0x48]
mov r10, qword [rdi + 0x18]
mov r11, qword [rdi + 0x30]
mov rcx, rax
shr rcx, 0x39
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor r9d, r9d
pcmpeqd xmm1, xmm1
and rax, r10
movdqu xmm2, xmmword [r11 + rax]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb edi, xmm3
nop word cs:[rax + rax]
test di, di
je 0x14003c8f0
bsf cx, di
movzx ecx, cx
add rcx, rax
and rcx, r10
shl rcx, 3
mov rbx, r11
sub rbx, rcx
mov rcx, qword [rbx - 8]
cmp rdx, rcx
jbe 0x14003f156
lea ebx, [rdi - 1]
and ebx, edi
imul rcx, rcx, 0x78
mov edi, ebx
cmp qword [r8 + rcx + 8], rsi
jne 0x14003c8b0
jmp 0x14003c909
pcmpeqb xmm2, xmm1
pmovmskb ecx, xmm2
test ecx, ecx
jne 0x14003c95e
add rax, r9
add rax, 0x10
add r9, 0x10
jmp 0x14003c88e
mov rdx, qword [r8 + rcx + 0x50]
test rdx, rdx
je 0x14003c947
mov rax, qword [r8 + rcx + 0x48]
shl rdx, 3
lea rcx, [rdx + rdx*2]
xor edx, edx
xor ebx, ebx
nop word cs:[rax + rax]
add rbx, qword [rax + rdx + 0x10]
add rdx, 0x18
cmp rcx, rdx
jne 0x14003c930
test rbx, rbx
jne 0x14003ca8a
cmp dword [rbp + 0xb0], 1
jne 0x14003c95e
cmp qword [rbp + 0xb8], 0
je 0x14003ca8a
lea rcx, [rsp + 0x1f0]
mov rdx, rbp
call fcn.140045480
mov rcx, qword [rsp + 0x1f8]
mov rax, qword [rsp + 0x200]
shl rax, 6
lea rdi, [rcx + rax]
nop word cs:[rax + rax]
test rax, rax
je 0x14003e495
lea rbx, [rcx + 0x40]
add rax, 0xffffffffffffffc0
cmp byte [rcx + 0x38], 0
mov rcx, rbx
jne 0x14003c990
mov rsi, qword [rbx - 0x30]
mov r14, qword [rbx - 0x28]
mov rcx, qword [0x140221370]
test rcx, rcx
jne 0x14003c9d7
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042bc4
mov rcx, rax
mov qword [0x140221370], rax
mov r8d, 0x40
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042bc4
mov qword [rax], rsi
mov qword [rax + 8], r14
mov qword [rsp + 0xb0], 4
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], 1
mov esi, 1
lea r14, [rsp + 0xb0]
mov rcx, rbx
nop word cs:[rax + rax]
cmp rcx, rdi
je 0x14003e4a1
lea rbx, [rcx + 0x40]
cmp byte [rcx + 0x38], 0
mov rcx, rbx
jne 0x14003ca30
mov r12, qword [rbx - 0x30]
mov r13, qword [rbx - 0x28]
cmp qword [rsp + 0xb0], rsi
je 0x14003ca75
mov rcx, rsi
shl rcx, 4
mov qword [rax + rcx], r12
mov qword [rax + rcx + 8], r13
inc rsi
mov qword [rsp + 0xc0], rsi
jmp 0x14003ca22
mov rcx, r14
mov rdx, rsi
call fcn.140021d20
mov rax, qword [rsp + 0xb8]
jmp 0x14003ca58
test r14, r14
mov r15, qword [rsp + 0x430]
je 0x14003e3a3
mov qword [rsp + 0x2b8], r14
mov rax, qword [r15 + 0x48]
test rax, rax
mov qword [rsp + 0x78], r12
je 0x14003d7f6
mov rbp, qword [r15 + 0x40]
imul rsi, rax, 0x78
lea r14, [rsi + rbp]
xor edi, edi
xor ebx, ebx
nop word cs:[rax + rax]
mov rdx, qword [rbp + rdi + 8]
mov rcx, r15
xor r8d, r8d
call fcn.140020690
movzx eax, al
add rbx, rax
add rdi, 0x78
cmp rsi, rdi
jne 0x14003cad0
cmp rbx, 2
jae 0x14003e608
mov r15, qword [rsp + 0x430]
mov rax, qword [r15 + 0x48]
test rax, rax
je 0x14003d7f6
mov r14, qword [r15 + 0x40]
imul rdi, rax, 0x78
add rdi, r14
mov rax, qword [rsp + 0x78]
mov r12, qword [rax]
add rax, 8
mov qword [rsp + 0x240], rax
pxor xmm6, xmm6
lea r13, [rsp + 0xb0]
pcmpeqd xmm7, xmm7
mov qword [rsp + 0x2f8], r12
mov qword [rsp + 0x2a8], rdi
jmp 0x14003cb5c
mov r14, rbp
cmp rbp, rdi
je 0x14003d7f6
lea rbp, [r14 + 0x78]
mov rsi, qword [r14 + 8]
mov rcx, r15
mov rdx, rsi
xor r8d, r8d
call fcn.140020690
test al, al
je 0x14003cb50
add r14, 8
mov rax, qword [r12 + 0x108]
mov rcx, qword [r12 + 0x110]
shl rcx, 7
lea rcx, [rcx + rcx*4]
nop word cs:[rax + rax]
test rcx, rcx
je 0x14003cb50
lea rdx, [rax + 0x280]
add rcx, 0xfffffffffffffd80
cmp qword [rax + 0xd0], rsi
mov rax, rdx
jne 0x14003cba0
mov rax, qword [rsp + 0x78]
mov r8, qword [rax]
mov qword [rsp + 0x20], r14
lea rcx, [rsp + 0x158]
lea rdx, [rsp + 0x320]
mov r9, r15
call fcn.140046300
mov rdi, qword [rsp + 0x168]
test rdi, rdi
je 0x14003d7c0
mov rbx, qword [rsp + 0x160]
mov eax, dword [0x140221400]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x18], 0
mov qword [rsp + 0x48], rbx
jne 0x14003cc29
call fcn.14014c4e0
mov rbx, qword [rsp + 0x48]
movdqa xmmword [rsp + 0x1f0], xmm6
mov qword [rsp + 0x200], 0
lea rax, [0x1401ef3a0]
mov qword [rsp + 0x208], rax
mov eax, dword [0x140221400]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movdqu xmm0, xmmword [rax + 0x20]
inc qword [rax + 0x20]
movdqa xmmword [rsp + 0x210], xmm0
lea rax, [rbx + rdi*8]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rcx]
lea rcx, [rsp + 0x1f0]
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x178], rdx
mov qword [rsp + 0x198], 0
mov qword [rsp + 0x1b8], 0
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x1c8], rbx
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0x1d0], rdx
mov rcx, r13
lea rdx, [rsp + 0x170]
call fcn.140046770
cmp qword [rsp + 0xb8], 0
mov qword [rsp + 0x280], rbp
mov qword [rsp + 0x290], rdi
je 0x14003ced1
mov rax, qword [0x140221370]
test rax, rax
lea rbp, [rsp + 0x50]
jne 0x14003cd2a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042ae2
mov qword [0x140221370], rax
mov r8d, 0x60
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042ae2
mov rsi, rax
mov rax, qword [rsp + 0xc0]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rsp + 0xb0]
movups xmmword [rsi], xmm0
mov qword [rsp + 0x220], 4
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x230], 1
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x110], rax
movups xmm0, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0xf0], xmm0
movdqu xmm0, xmmword [rsp + 0x170]
movdqu xmm1, xmmword [rsp + 0x180]
movdqu xmm2, xmmword [rsp + 0x190]
movdqu xmm3, xmmword [rsp + 0x1a0]
movdqa xmmword [rsp + 0xe0], xmm3
movdqa xmmword [rsp + 0xd0], xmm2
movdqa xmmword [rsp + 0xc0], xmm1
movdqa xmmword [rsp + 0xb0], xmm0
mov edi, 1
mov ebx, 0x18
jmp 0x14003ce34
mov rax, qword [rsp + 0x60]
mov qword [rsi + rbx + 0x10], rax
movdqu xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rsi + rbx], xmm0
inc rdi
mov qword [rsp + 0x230], rdi
add rbx, 0x18
mov rcx, rbp
mov rdx, r13
call fcn.140046770
cmp qword [rsp + 0x58], 0
je 0x14003ce71
cmp rdi, qword [rsp + 0x220]
jne 0x14003ce10
mov r8d, 1
lea rcx, [rsp + 0x220]
mov rdx, rdi
call fcn.14016c650
mov rsi, qword [rsp + 0x228]
jmp 0x14003ce10
mov r8, qword [rsp + 0xd8]
test r8, r8
je 0x14003ce98
cmp qword [rsp + 0xc0], 0
je 0x14003ce98
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r8, qword [rsp + 0xf8]
test r8, r8
je 0x14003cebf
cmp qword [rsp + 0xe0], 0
je 0x14003cebf
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rsp + 0x220]
mov rsi, qword [rsp + 0x228]
jmp 0x14003cf28
mov r8, qword [rsp + 0x198]
test r8, r8
je 0x14003cef8
cmp qword [rsp + 0x180], 0
je 0x14003cef8
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r8, qword [rsp + 0x1b8]
mov esi, 8
test r8, r8
je 0x14003cf24
cmp qword [rsp + 0x1a0], 0
je 0x14003cf24
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor edi, edi
xor ebx, ebx
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x110]
mov rax, qword [r14]
mov rcx, qword [rcx + 0x108]
mov rbp, 0xfffffffffffffd80
add rcx, rbp
shl rdx, 7
lea rdx, [rdx + rdx*4]
nop word cs:[rax + rax]
test rdx, rdx
je 0x140042a83
lea r12, [rcx + 0x280]
add rdx, 0xfffffffffffffd80
cmp qword [rcx + 0x350], rax
mov rcx, r12
jne 0x14003cf60
mov qword [rsp + 0x2b0], rbx
mov qword [rsp + 0x2c0], rsi
mov qword [rsp + 0x248], rdi
mov r13, qword [r15 + 0x48]
test r13, r13
je 0x14003d380
mov rax, qword [rsp + 0x430]
mov rbp, qword [rax + 0x40]
imul r15, r13, 0x78
lea rax, [r15 + rbp]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x290]
lea r14, [rax*8]
add r15, 0xffffffffffffff88
mov rax, rbp
jmp 0x14003cff4
add r15, 0xffffffffffffff88
mov rax, qword [rsp + 0x38]
cmp rax, qword [rsp + 0x40]
je 0x14003d380
mov rcx, rax
add rax, 0x78
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x150], rcx
mov rsi, qword [rcx + 8]
mov rcx, qword [rsp + 0x430]
mov rdx, rsi
xor r8d, r8d
call fcn.140020690
test al, al
mov rdi, qword [rsp + 0x48]
je 0x14003cfe0
mov rax, qword [rsp + 0xa8]
mov r8, qword [rax + 0x108]
mov rax, qword [rax + 0x110]
shl rax, 7
lea rcx, [rax + rax*4]
xor edx, edx
mov rax, r8
nop dword [rax + rax]
cmp rcx, rdx
je 0x14003d07b
lea rbx, [rax + 0x280]
add rdx, 0x280
cmp qword [rax + 0xd0], rsi
mov rax, rbx
jne 0x14003d050
test byte [r8 + rdx - 0x10], 0x10
jne 0x14003cfe0
xor eax, eax
nop dword [rax]
cmp r14, rax
je 0x14003d097
lea rcx, [rax + 8]
cmp qword [rdi + rax], rsi
mov rax, rcx
jne 0x14003d080
jmp 0x14003cfe0
mov rax, qword [rsp + 0x150]
mov rsi, qword [rax + 8]
mov rax, qword [0x140221370]
test rax, rax
jne 0x14003d0c5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042bce
mov qword [0x140221370], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042bce
mov qword [rax], rsi
mov qword [rsp + 0xb0], 4
mov qword [rsp + 0x250], rax
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], 1
mov rcx, qword [rsp + 0x38]
cmp rcx, qword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
je 0x14003d176
mov rax, qword [rsp + 0x430]
cmp qword [rax + 0x28], 0
je 0x14003d170
mov rax, qword [rsp + 0x430]
mov rdx, qword [rax + 8]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0x1e8], rdx
mov rsi, qword [rax + 0x18]
mov r15, qword [rax + 0x30]
mov eax, 1
mov qword [rsp + 0x288], rax
jmp 0x14003d20d
add r15, 0xffffffffffffff88
jne 0x14003d170
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0x230], rcx
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x220], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0x228]
jmp 0x14003d3b0
mov rcx, qword [rsp + 0x288]
cmp qword [rsp + 0xb0], rcx
mov rax, qword [rsp + 0x250]
je 0x14003d34b
mov qword [rsp + 0x250], rax
mov qword [rax + rcx*8], rdi
inc rcx
mov qword [rsp + 0x288], rcx
mov qword [rsp + 0xc0], rcx
mov rcx, qword [rsp + 0x38]
cmp rcx, qword [rsp + 0x40]
je 0x14003d176
mov rdi, qword [rcx + 8]
add rcx, 0x78
mov qword [rsp + 0x38], rcx
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x1e8]
mov r8, rdi
call fcn.140035200
mov r9, qword [rsp + 0x48]
mov rcx, rax
shr rcx, 0x39
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor r8d, r8d
and rax, rsi
movdqu xmm1, xmmword [r15 + rax]
movdqa xmm2, xmm0
pcmpeqb xmm2, xmm1
pmovmskb edx, xmm2
nop dword [rax + rax]
test dx, dx
je 0x14003d2b0
bsf cx, dx
movzx ecx, cx
add rcx, rax
and rcx, rsi
shl rcx, 3
mov rbx, r15
sub rbx, rcx
mov rcx, qword [rbx - 8]
cmp r13, rcx
jbe 0x14003f164
lea ebx, [rdx - 1]
and ebx, edx
imul rcx, rcx, 0x78
mov edx, ebx
cmp qword [rbp + rcx + 8], rdi
jne 0x14003d270
jmp 0x14003d2d0
pcmpeqb xmm1, xmm7
pmovmskb ecx, xmm1
test ecx, ecx
jne 0x14003d1fd
add rax, r8
add rax, 0x10
add r8, 0x10
jmp 0x14003d253
cmp byte [rbp + rcx + 0x70], 0
je 0x14003d1fd
mov rax, qword [rsp + 0xa8]
mov r8, qword [rax + 0x108]
mov rax, qword [rax + 0x110]
shl rax, 7
lea rcx, [rax + rax*4]
xor edx, edx
mov rax, r8
nop
cmp rcx, rdx
je 0x14003d32b
lea rbx, [rax + 0x280]
add rdx, 0x280
cmp qword [rax + 0xd0], rdi
mov rax, rbx
jne 0x14003d300
test byte [r8 + rdx - 0x10], 0x10
jne 0x14003d1fd
xor eax, eax
nop dword [rax]
cmp r14, rax
je 0x14003d1c0
lea rcx, [rax + 8]
cmp qword [r9 + rax], rdi
mov rax, rcx
jne 0x14003d330
jmp 0x14003d1fd
mov r8d, 1
lea rcx, [rsp + 0xb0]
mov rdx, qword [rsp + 0x288]
call fcn.14016c580
mov rcx, qword [rsp + 0x288]
mov r9, qword [rsp + 0x48]
mov rax, qword [rsp + 0xb8]
jmp 0x14003d1de
mov qword [rsp + 0x220], 0
mov qword [rsp + 0x228], 8
mov qword [rsp + 0x230], 0
mov eax, 8
xor ecx, ecx
mov r9, qword [rsp + 0x48]
mov r15, qword [rsp + 0x430]
lea rcx, [rax + rcx*8]
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x190], rcx
mov qword [rsp + 0x198], rax
mov rdx, qword [rsp + 0xa8]
mov qword [rsp + 0x1a0], rdx
mov qword [rsp + 0x1a8], r9
mov rdx, qword [rsp + 0x290]
mov qword [rsp + 0x1b0], rdx
lea rdx, [rsp + 0x220]
mov qword [rsp + 0x1b8], rdx
mov qword [rsp + 0x1c0], rcx
mov qword [rsp + 0x1c8], rax
lea rcx, [rsp + 0x170]
call fcn.140046a20
test rax, rax
mov r13, qword [rsp + 0x78]
je 0x14003d4de
mov rbx, qword [rsp + 0x1c0]
mov rax, qword [rsp + 0x1c8]
sub rbx, rax
shr rbx, 3
cmp rbx, 4
mov ecx, 3
cmovb rbx, rcx
test rax, rax
cmove rbx, rcx
xor ebp, ebp
movabs rax, 0xfffffffffffffff
cmp rbx, rax
setb al
jae 0x140042bae
mov r14, rdx
mov bpl, al
shl rbp, 3
lea rsi, [rbx*8 + 8]
test rsi, rsi
je 0x14003d4ec
mov rax, qword [0x140221370]
test rax, rax
jne 0x14003d4c3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042bd5
mov qword [0x140221370], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rdi, rdi
jne 0x14003d4f8
jmp 0x140042bd5
mov edi, 8
xor ebx, ebx
xor esi, esi
jmp 0x14003d5ed
mov rdi, rbp
test rdi, rdi
je 0x140042bd5
inc rbx
mov qword [rdi], r14
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], 1
movups xmm0, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0xf0], xmm0
movdqu xmm0, xmmword [rsp + 0x170]
movdqu xmm1, xmmword [rsp + 0x180]
movdqu xmm2, xmmword [rsp + 0x190]
movdqu xmm3, xmmword [rsp + 0x1a0]
movdqa xmmword [rsp + 0xe0], xmm3
movdqa xmmword [rsp + 0xd0], xmm2
movdqa xmmword [rsp + 0xc0], xmm1
movdqa xmmword [rsp + 0xb0], xmm0
mov esi, 1
jmp 0x14003d58c
mov qword [rdi + rsi*8], rbp
inc rsi
mov qword [rsp + 0x60], rsi
lea rcx, [rsp + 0xb0]
call fcn.140046a20
cmp rax, 1
jne 0x14003d5e3
mov rbp, rdx
cmp rsi, qword [rsp + 0x50]
jne 0x14003d580
mov r8, qword [rsp + 0x100]
mov rax, qword [rsp + 0x108]
sub r8, rax
shr r8, 3
inc r8
test rax, rax
mov eax, 1
cmove r8, rax
lea rcx, [rsp + 0x50]
mov rdx, rsi
call fcn.14016c580
mov rdi, qword [rsp + 0x58]
jmp 0x14003d580
mov rbx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xb8], rax
lea rcx, [rsp + 0x2c8]
lea rdx, [rsp + 0xb0]
mov r8, rdi
mov r9, rsi
call fcn.14001a8d0
test rbx, rbx
je 0x14003d63f
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [rsp + 0x220], 0
je 0x14003d661
mov r8, qword [rsp + 0x228]
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [r13]
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 1
mov qword [rsp + 0x60], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rdi, [rsp + 0x50]
mov qword [rsp + 0xb0], rdi
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rcx, r12
lea r13, [rsp + 0xb0]
mov rdx, r13
call fcn.140018210
test al, al
jne 0x140042ab7
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x170], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x180], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0xc0], rax
movdqu xmm0, xmmword [rsp + 0x2c8]
movdqa xmmword [rsp + 0xb0], xmm0
mov qword [rsp + 0x20], r13
lea rcx, [rsp + 0x80]
mov rdx, rsi
mov r8, rdi
lea r9, [rsp + 0x170]
call fcn.140045d30
mov rcx, qword [rsp + 0x1f0]
test rcx, rcx
mov r12, qword [rsp + 0x2f8]
mov rbp, qword [rsp + 0x280]
je 0x14003d7af
lea rax, [rcx + 1]
mov edx, 8
mul rdx
add rax, 0xf
and rax, 0xfffffffffffffff0
add rcx, rax
cmp rcx, 0xffffffffffffffef
je 0x14003d7af
mov r8, qword [rsp + 0x208]
sub r8, rax
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
movzx ebx, byte [rsp + 0xa0]
cmp bl, 0x16
jne 0x14003f4a3
cmp qword [rsp + 0x158], 0
je 0x14003d7e2
mov r8, qword [rsp + 0x160]
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, rbp
mov rdi, qword [rsp + 0x2a8]
cmp rbp, rdi
jne 0x14003cb5c
mov r13, qword [rsp + 0x78]
mov rbx, qword [r13]
mov eax, dword [rbx + 0x1f0]
or eax, dword [rbx + 0x1f8]
test al, 1
sete al
cmp qword [rsp + 0x2b8], 0
je 0x14003d823
test al, al
je 0x14003f750
mov rax, qword [r15 + 0x48]
test rax, rax
je 0x14003e9c1
mov rsi, qword [r15 + 0x40]
imul rax, rax, 0x78
add rax, rsi
lea rcx, [r13 + 8]
pcmpeqd xmm6, xmm6
mov qword [rsp + 0x2a8], rax
mov qword [rsp + 0x310], rcx
cmp qword [r15 + 0x28], 0
mov r14, qword [r15 + 0x40]
mov r12, qword [r15 + 0x48]
je 0x14003e5fa
mov r9, qword [r15 + 8]
mov rdx, qword [r15 + 0x10]
mov r11, r9
movabs rcx, 0x736f6d6570736575
xor r11, rcx
mov qword [rsp + 0x40], rdx
movabs rcx, 0x646f72616e646f6d
xor rdx, rcx
movabs rcx, 0x6c7967656e657261
xor r9, rcx
add r11, rdx
rol rdx, 0xd
xor rdx, r11
rol r11, 0x20
mov r10, rdx
rol r10, 0x11
mov rcx, qword [r15 + 0x18]
mov qword [rsp + 0x48], rcx
mov rcx, qword [r15 + 0x30]
mov qword [rsp + 0x38], rcx
nop word cs:[rax + rax]
mov r13, qword [rsi + 8]
mov rax, rsi
mov r8, qword [rsp + 0x40]
xor r8, r13
movabs rcx, 0x7465646279746573
xor r8, rcx
lea rcx, [r8 + r9]
rol r8, 0x10
xor r8, rcx
lea rsi, [r8 + r11]
rol r8, 0x15
xor r8, rsi
add rcx, rdx
mov rbx, rcx
xor rbx, r10
rol rcx, 0x20
xor rsi, r13
add rsi, rbx
rol rbx, 0xd
mov rbp, r8
xor rbx, rsi
rol rsi, 0x20
movabs rdi, 0x800000000000000
xor rbp, rdi
add rcx, rbp
shrd rbp, r8, 0x30
xor rbp, rcx
add rsi, rbp
rol rbp, 0x15
add rcx, rbx
rol rbx, 0x11
xor rbp, rsi
xor rbx, rcx
rol rcx, 0x20
xor rsi, rdi
add rsi, rbx
rol rbx, 0xd
xor rbx, rsi
rol rsi, 0x20
xor rcx, 0xff
add rcx, rbp
rol rbp, 0x10
xor rbp, rcx
add rsi, rbp
rol rbp, 0x15
add rcx, rbx
rol rbx, 0x11
xor rbx, rcx
rol rcx, 0x20
xor rbp, rsi
add rsi, rbx
rol rbx, 0xd
xor rbx, rsi
rol rsi, 0x20
add rcx, rbp
rol rbp, 0x10
xor rbp, rcx
add rsi, rbp
rol rbp, 0x15
add rcx, rbx
rol rbx, 0x11
add rax, 0x78
mov qword [rsp + 0x280], rax
xor rbx, rcx
rol rcx, 0x20
xor rbp, rsi
add rsi, rbx
rol rbx, 0xd
xor rbx, rsi
add rcx, rbp
rol rbp, 0x10
xor rbp, rcx
rol rbp, 0x15
add rcx, rbx
rol rbx, 0x11
xor rbx, rcx
rol rcx, 0x20
xor rbx, rcx
xor rbx, rbp
mov rcx, rbx
shr rcx, 0x39
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm7, xmm0, 0
xor ebp, ebp
mov qword [rsp + 0x2c0], rbx
mov rax, qword [rsp + 0x48]
and rbx, rax
mov rcx, qword [rsp + 0x38]
movdqu xmm0, xmmword [rcx + rbx]
movdqa xmm1, xmm7
pcmpeqb xmm1, xmm0
pmovmskb edi, xmm1
nop word cs:[rax + rax]
test di, di
je 0x14003da80
bsf cx, di
movzx ecx, cx
add rcx, rbx
and rcx, rax
shl rcx, 3
mov rsi, qword [rsp + 0x38]
sub rsi, rcx
mov rcx, qword [rsi - 8]
cmp r12, rcx
jbe 0x14003f145
lea esi, [rdi - 1]
and esi, edi
imul rcx, rcx, 0x78
mov edi, esi
cmp qword [r14 + rcx + 8], r13
jne 0x14003da40
jmp 0x14003daa0
pcmpeqb xmm0, xmm6
pmovmskb ecx, xmm0
test ecx, ecx
jne 0x14003daa8
add rbx, rbp
add rbx, 0x10
add rbp, 0x10
jmp 0x14003da1d
cmp byte [r14 + rcx + 0x70], 0
jne 0x14003dac6
mov rsi, qword [rsp + 0x280]
mov rax, qword [rsp + 0x2a8]
cmp rsi, rax
jne 0x14003d8d0
jmp 0x14003e923
mov qword [rsp + 0x40], r13
mov r13, qword [rsp + 0x78]
mov rax, qword [r13]
mov rdx, qword [rax + 0x108]
mov rcx, qword [rax + 0x110]
mov qword [rsp + 0x2e0], rdx
add rdx, 0xfffffffffffffe50
shl rcx, 7
lea rbx, [rcx + rcx*4]
mov rcx, rbx
mov qword [rsp + 0x358], rdx
nop word cs:[rax + rax]
test rcx, rcx
je 0x14003dc0f
lea rsi, [rdx + 0x280]
add rcx, 0xfffffffffffffd80
mov rbp, qword [rsp + 0x40]
cmp qword [rdx + 0x280], rbp
mov rdx, rsi
jne 0x14003db10
mov qword [rsp + 0x260], 0
mov qword [rsp + 0x268], 8
mov qword [rsp + 0x270], 0
mov rax, qword [0x140221370]
test rax, rax
jne 0x14003db7e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042c4a
mov qword [0x140221370], rax
mov r8d, 8
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042c4a
mov qword [rax], rsi
mov qword [rsp + 0x80], 1
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], 1
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 8
mov qword [rsp + 0x60], 0
mov edi, 1
mov ecx, 8
mov qword [rsp + 0x308], rcx
xor ecx, ecx
mov qword [rsp + 0x2e8], rcx
mov qword [rsp + 0x290], r14
mov qword [rsp + 0x288], r12
mov qword [rsp + 0x300], rbx
jmp 0x14003dd0f
mov rbp, qword [rax + 0x280]
imul rdx, qword [rax + 0x288], 0x68
xor eax, eax
mov rcx, rbp
nop word cs:[rax + rax]
cmp rdx, rax
je 0x14003e375
lea rbx, [rcx + 0x68]
add rax, 0x68
mov rdi, qword [rsp + 0x40]
cmp qword [rcx + 0x10], rdi
mov rcx, rbx
jne 0x14003dc30
mov rcx, qword [rbp + rax - 0x28]
test rcx, rcx
je 0x14003e375
mov rsi, qword [rbp + rax - 0x30]
lea r14, [rsi + rcx*8]
mov rax, qword [r13 + 0x10]
mov rdx, qword [r13 + 0x18]
jmp 0x14003dca6
mov rcx, rdx
shl rcx, 5
mov qword [rax + rcx], rbx
mov qword [rax + rcx + 8], 0
mov qword [rax + rcx + 0x10], 8
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [r13 + 0x18], rdx
cmp rsi, r14
je 0x14003e375
mov rbx, qword [rsi]
add rsi, 8
test rdx, rdx
je 0x14003dcd2
mov rcx, rdx
shl rcx, 5
xor ebp, ebp
xor edi, edi
nop dword [rax]
cmp qword [rax + rbp], rbx
je 0x14003dc9d
inc rdi
add rbp, 0x20
cmp rcx, rbp
jne 0x14003dcc0
mov rcx, qword [rsp + 0x310]
cmp rdx, qword [rcx]
jne 0x14003dc70
call fcn.140150a00
mov rax, qword [r13 + 0x10]
mov rdx, qword [r13 + 0x18]
jmp 0x14003dc70
mov rbx, qword [rsp + 0x300]
mov rdi, qword [rsp + 0x90]
test rdi, rdi
mov rax, qword [rsp + 0x2f0]
je 0x14003e272
mov rcx, qword [rsp + 0x2e8]
lea rcx, [rcx*8]
mov qword [rsp + 0x2f0], rax
mov rsi, qword [rax + rdi*8 - 8]
test rsi, rsi
je 0x14003e272
dec rdi
xor edx, edx
mov rax, qword [rsp + 0x308]
nop word cs:[rax + rax]
cmp rcx, rdx
je 0x14003dd78
mov rbp, qword [rax + rdx]
mov rbp, qword [rbp]
add rdx, 8
cmp rbp, qword [rsi]
jne 0x14003dd50
test rdi, rdi
mov rax, qword [rsp + 0x2f0]
jne 0x14003dd27
jmp 0x14003e272
mov qword [rsp + 0x90], rdi
mov rcx, qword [rsp + 0x2e8]
cmp rcx, qword [rsp + 0x260]
jne 0x14003ddb2
mov rdx, rcx
lea rcx, [rsp + 0x260]
call fcn.14001fd60
mov rax, qword [rsp + 0x268]
mov rcx, qword [rsp + 0x270]
mov rdx, qword [rsp + 0x2e0]
mov qword [rsp + 0x308], rax
mov qword [rax + rcx*8], rsi
inc rcx
mov qword [rsp + 0x2e8], rcx
mov qword [rsp + 0x270], rcx
mov rcx, qword [rsi]
xor eax, eax
nop
cmp rbx, rax
je 0x14003dcf6
lea rbp, [rdx + 0x280]
add rax, 0x280
cmp qword [rdx + 0xd0], rcx
mov rdx, rbp
jne 0x14003dde0
mov rdx, qword [rsp + 0x2e0]
mov rcx, qword [rdx + rax - 0x150]
test rcx, rcx
je 0x14003dcf6
mov rdx, qword [rdx + rax - 0x158]
lea rax, [rcx + rcx*2]
lea rax, [rdx + rax*8]
mov qword [rsp + 0x318], rax
jmp 0x14003de56
mov rdx, qword [rsp + 0x2b8]
cmp rdx, qword [rsp + 0x318]
je 0x14003dcee
lea rax, [rdx + 0x18]
mov qword [rsp + 0x2b8], rax
mov rdi, qword [rdx]
mov qword [rsp + 0x240], rdx
mov rsi, qword [rdx + 8]
xor eax, eax
mov rdx, qword [rsp + 0x2c0]
and rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
movdqu xmm0, xmmword [rcx + rdx]
movdqa xmm1, xmm7
pcmpeqb xmm1, xmm0
pmovmskb ebp, xmm1
nop word cs:[rax + rax]
test bp, bp
je 0x14003def0
bsf cx, bp
movzx ecx, cx
add rcx, rdx
and rcx, qword [rsp + 0x48]
shl rcx, 3
mov rbx, qword [rsp + 0x38]
sub rbx, rcx
mov rcx, qword [rbx - 8]
cmp r12, rcx
jbe 0x14003f145
lea ebx, [rbp - 1]
and ebx, ebp
imul rcx, rcx, 0x78
mov ebp, ebx
mov rbx, qword [rsp + 0x40]
cmp qword [r14 + rcx + 8], rbx
jne 0x14003dea0
jmp 0x14003df10
pcmpeqb xmm0, xmm6
pmovmskb ecx, xmm0
test ecx, ecx
jne 0x14003de40
add rdx, rax
add rdx, 0x10
add rax, 0x10
jmp 0x14003de7b
cmp byte [r14 + rcx + 0x70], 0
je 0x14003de40
test rdi, rdi
je 0x14003e1a0
lea rax, [r14 + rcx]
add rax, 0x10
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14003de40
mov rbp, qword [rax + 0x50]
lea rax, [rdx + rdx*2]
lea rax, [rax*8]
add rax, rbp
mov qword [rsp + 0x2f8], rax
lea rbx, [r14 + rcx]
add rbx, 0x71
mov qword [rsp + 0x250], rsi
mov qword [rsp + 0x248], rbx
jmp 0x14003df8a
mov rbp, qword [rsp + 0x2b0]
add rbp, 0x18
cmp rbp, qword [rsp + 0x2f8]
je 0x14003de40
mov qword [rsp + 0x2b0], rbp
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x14003df70
mov rcx, rax
mov rax, qword [rsp + 0x2b0]
mov r15, qword [rax + 8]
shl rcx, 5
add rcx, r15
mov qword [rsp + 0x150], rcx
jmp 0x14003dfe4
test sil, sil
mov r13, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x250]
jne 0x14003e1a0
add r15, 0x20
cmp r15, qword [rsp + 0x150]
je 0x14003df70
cmp byte [rbx], 0
je 0x14003e0e0
mov rdx, qword [r15 + 8]
mov r8, qword [r15 + 0x10]
lea rcx, [rsp + 0x1f0]
call fcn.140148010
mov r13, qword [rsp + 0x1f0]
mov r14, qword [rsp + 0x1f8]
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0xa8], r14
mov r12, rax
test r13, r13
je 0x14003e035
mov r12, qword [rsp + 0x208]
mov r14, rax
mov qword [rsp + 0x1e8], rax
lea rcx, [rsp + 0xb0]
mov rdx, rdi
mov r8, rsi
call fcn.140148010
mov r10, qword [rsp + 0xb0]
mov r9, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xc0]
mov rdx, r9
mov rbp, r8
test r10, r10
je 0x14003e07e
mov rbp, qword [rsp + 0xc8]
mov rdx, r8
cmp r12, rbp
jne 0x14003e110
mov r11, rdi
mov rbp, r12
neg rbp
mov rsi, 0xffffffffffffffff
nop word [rax + rax]
lea rdi, [rsi + rbp]
cmp rdi, 0xffffffffffffffff
je 0x14003e129
movzx edi, byte [r14 + rsi + 1]
movzx eax, byte [rdx + rsi + 1]
lea ecx, [rdi - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
lea ebx, [rax - 0x41]
cmp bl, 0x1a
setb bl
shl bl, 5
or cl, dil
or bl, al
inc rsi
cmp cl, bl
je 0x14003e0a0
jmp 0x14003e12c
cmp qword [r15 + 0x10], rsi
jne 0x14003dfd6
mov rcx, qword [r15 + 8]
mov rdx, rdi
mov r8, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14003dfd6
jmp 0x14003e1a0
xor esi, esi
test r10, r10
mov r14, qword [rsp + 0x290]
mov r12, qword [rsp + 0x288]
jne 0x14003e153
jmp 0x14003e167
mov rsi, r12
cmp rsi, r12
setae sil
mov rdi, r11
mov rbx, qword [rsp + 0x248]
test r10, r10
mov r14, qword [rsp + 0x290]
mov r12, qword [rsp + 0x288]
je 0x14003e167
test r9, r9
je 0x14003e167
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r13, r13
je 0x14003dfc0
cmp qword [rsp + 0xa8], 0
je 0x14003dfc0
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, qword [rsp + 0x1e8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x14003dfc0
mov rax, qword [rsp + 0x240]
mov rsi, qword [rax + 0x10]
mov rbx, qword [rsp + 0x300]
mov rax, rbx
mov rcx, qword [rsp + 0x358]
nop
test rax, rax
je 0x14003e22b
lea rdi, [rcx + 0x280]
add rax, 0xfffffffffffffd80
cmp qword [rcx + 0x280], rsi
mov rcx, rdi
jne 0x14003e1c0
cmp qword [rdi + 0x60], 0
je 0x14003e22b
mov rdx, qword [rsp + 0x90]
cmp rdx, qword [rsp + 0x80]
jne 0x14003e20c
lea rcx, [rsp + 0x80]
call fcn.14001fd60
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x2f0], rax
mov qword [rax + rdx*8], rdi
inc rdx
mov qword [rsp + 0x90], rdx
mov rdx, qword [rsp + 0x60]
cmp rdx, qword [rsp + 0x50]
jne 0x14003e246
lea rcx, [rsp + 0x50]
call fcn.14001fd60
mov rdx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x58]
mov qword [rax + rdx*8], rsi
inc rdx
mov qword [rsp + 0x60], rdx
mov rdx, qword [rsp + 0x2b8]
cmp rdx, qword [rsp + 0x318]
jne 0x14003de56
jmp 0x14003dcf6
cmp qword [rsp + 0x80], 0
je 0x14003e294
mov r8, qword [rsp + 0x88]
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [rsp + 0x260], 0
je 0x14003e2b6
mov r8, qword [rsp + 0x268]
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x14003e35e
lea r12, [r15 + rax*8]
mov rax, qword [r13 + 0x10]
mov rdx, qword [r13 + 0x18]
mov rsi, r15
jmp 0x14003e312
mov rcx, rdx
shl rcx, 5
mov qword [rax + rcx], rdi
mov qword [rax + rcx + 8], 0
mov qword [rax + rcx + 0x10], 8
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [r13 + 0x18], rdx
cmp rsi, r12
je 0x14003e35e
mov rdi, qword [rsi]
add rsi, 8
test rdx, rdx
je 0x14003e342
mov rcx, rdx
shl rcx, 5
xor ebp, ebp
xor ebx, ebx
nop dword [rax]
cmp qword [rax + rbp], rdi
je 0x14003e30d
inc rbx
add rbp, 0x20
cmp rcx, rbp
jne 0x14003e330
mov rcx, qword [rsp + 0x310]
cmp rdx, qword [rcx]
jne 0x14003e2e0
call fcn.140150a00
mov rax, qword [r13 + 0x10]
mov rdx, qword [r13 + 0x18]
jmp 0x14003e2e0
test r14, r14
je 0x14003e375
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [rsp + 0x280]
mov rax, qword [rsp + 0x2a8]
cmp rsi, rax
mov r15, qword [rsp + 0x430]
jne 0x14003d853
mov r14, qword [r15 + 0x40]
mov r12, qword [r15 + 0x48]
jmp 0x14003e928
mov rbx, qword [r12]
mov rax, qword [rbx + 0x1f0]
mov rcx, qword [rbx + 0x1f8]
mov edx, eax
or edx, ecx
test dl, 4
je 0x14003e41a
mov rax, qword [r15 + 0x48]
test rax, rax
je 0x14003e880
mov rsi, qword [r15 + 0x40]
imul rdi, rax, 0x78
xor ebx, ebx
xor ebp, ebp
nop word [rax + rax]
mov rdx, qword [rsi + rbx + 8]
mov rcx, r15
xor r8d, r8d
call fcn.140020690
movzx eax, al
add rbp, rax
add rbx, 0x78
cmp rdi, rbx
jne 0x14003e3e0
mov rbx, qword [r12]
test rbp, rbp
je 0x14003e880
mov rax, qword [rbx + 0x1f0]
mov rcx, qword [rbx + 0x1f8]
mov edx, eax
or edx, ecx
test dl, 2
je 0x14003e7f6
mov rbp, qword [rbx + 0x1c8]
test rbp, rbp
je 0x14003f2a9
lea rax, [rbx + 0x1d0]
mov r15, qword [rax]
test r15, r15
je 0x14003f2c3
js 0x140042bae
mov rcx, qword [0x140221370]
test rcx, rcx
jne 0x14003e475
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042c5b
mov rcx, rax
mov qword [0x140221370], rax
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042c5b
mov r14, rax
mov rdi, qword [r12]
jmp 0x14003f2cc
mov edi, 8
xor esi, esi
xor r14d, r14d
jmp 0x14003e4b1
mov r14, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xb8]
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 1
mov qword [rsp + 0x180], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rbx, [rsp + 0x170]
mov qword [rsp + 0xb0], rbx
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
lea rdx, [rsp + 0xb0]
mov rcx, rbp
call fcn.140018210
test al, al
jne 0x140042ab7
mov qword [rsp + 0x20], rbx
mov rcx, qword [rsp + 0x1e0]
mov rdx, r15
mov r8, rdi
mov r9, rsi
call fcn.140022690
test r14, r14
je 0x14003e570
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [rsp + 0x1f8]
mov rdi, qword [rsp + 0x200]
test rdi, rdi
je 0x14003e5c3
shl rdi, 6
xor ebx, ebx
mov rbp, qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x14003e5a9
add rbx, 0x40
cmp rdi, rbx
je 0x14003e5c3
cmp qword [rsi + rbx + 0x20], 0
je 0x14003e5a0
mov r8, qword [rsi + rbx + 0x28]
mov rcx, qword [0x140221370]
xor edx, edx
call rbp
jmp 0x14003e5a0
cmp qword [rsp + 0x1f0], 0
je 0x14003f65f
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r15, qword [rsp + 0x320]
test r15, r15
jne 0x14003f670
jmp 0x140042956
add rsi, 0x78
cmp rsi, rax
jne 0x14003e5fa
jmp 0x14003e928
mov rax, qword [rsp + 0x78]
mov r15, qword [rax]
add rax, 8
mov qword [rsp + 0x38], rax
mov r13, 0xfffffffffffffd80
lea r12, [rsp + 0x80]
lea rdi, [rsp + 0xb0]
mov rsi, qword [rsp + 0x78]
jmp 0x14003e655
mov byte [rsp + 0x190], reloc.WS2_32.dll_shutdown
add rbp, 0x78
cmp rbp, r14
je 0x14003caf9
mov rbx, qword [rbp + 8]
mov rcx, qword [rsp + 0x430]
mov rdx, rbx
xor r8d, r8d
call fcn.140020690
test al, al
je 0x14003e640
mov rcx, qword [r15 + 0x110]
mov rax, qword [r15 + 0x108]
add rax, r13
shl rcx, 7
lea rdx, [rcx + rcx*4]
nop dword [rax]
test rdx, rdx
je 0x14003e640
lea rcx, [rax + 0x280]
add rdx, 0xfffffffffffffd80
cmp qword [rax + 0x350], rbx
mov rax, rcx
jne 0x14003e690
test byte [rcx + 0x272], 0x80
je 0x14003e640
mov rbx, qword [rsi]
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 1
mov qword [rsp + 0x90], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xb0], r12
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rdx, rdi
call fcn.140018210
test al, al
jne 0x140042ab7
mov qword [rsp + 0x1f0], 0
mov qword [rsp + 0x1f8], 8
mov qword [rsp + 0x200], 0
mov rax, qword [rsi]
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rax
mov rcx, rdi
lea rdx, [rsp + 0x50]
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14001a8d0
mov qword [rsp + 0x20], rdi
lea rcx, [rsp + 0x170]
mov rdx, rbx
mov r8, r12
lea r9, [rsp + 0x1f0]
call fcn.140045d30
movzx ebx, byte [rsp + 0x190]
cmp bl, 0x16
je 0x14003e648
movups xmm0, xmmword [rsp + 0x170]
movups xmm1, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x270], xmm1
movaps xmmword [rsp + 0x260], xmm0
lea rcx, [rsp + 0x191]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x298], eax
mov dword [rsp + 0x29b], ecx
jmp 0x14003f500
or eax, ecx
test al, 0x80
je 0x14003ca9b
lea rsi, [rsp + 0xb0]
mov rcx, rsi
mov rdx, rbx
xor r8d, r8d
mov r9b, 1
call fcn.1400455a0
movzx eax, byte [rsp + 0xd0]
cmp al, 0x16
jne 0x14003f053
movups xmm0, xmmword [rsp + 0xb0]
movups xmm1, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x380], xmm0
movaps xmmword [rsp + 0x390], xmm1
mov r8, qword [r12]
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], 8
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x380]
jmp 0x14003e8fe
lea rsi, [rsp + 0xb0]
mov rcx, rsi
mov rdx, rbx
xor r8d, r8d
mov r9b, 1
call fcn.1400455a0
movzx eax, byte [rsp + 0xd0]
cmp al, 0x16
jne 0x14003f053
movups xmm0, xmmword [rsp + 0xb0]
movups xmm1, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x360], xmm0
movaps xmmword [rsp + 0x370], xmm1
mov r8, qword [r12]
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], 8
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x360]
mov rcx, qword [rsp + 0x1e0]
mov dl, 0x11
call fcn.140045be0
mov r15, qword [rsp + 0x320]
test r15, r15
jne 0x14003f670
jmp 0x140042956
mov r13, qword [rsp + 0x78]
mov rbx, qword [r13]
test r12, r12
je 0x14003e9c1
imul rdi, r12, 0x78
add rdi, r14
mov r12, qword [rbx + 0x108]
mov rax, qword [rbx + 0x110]
shl rax, 7
lea rbp, [rax + rax*4]
jmp 0x14003e969
add r14, 0x78
cmp r14, rdi
je 0x14003e9c1
mov rsi, qword [r14 + 8]
mov rcx, r15
mov rdx, rsi
xor r8d, r8d
call fcn.140020690
test al, al
je 0x14003e960
xor eax, eax
mov rcx, r12
nop word cs:[rax + rax]
cmp rbp, rax
je 0x14003e960
lea rdx, [rcx + 0x280]
add rax, 0x280
cmp qword [rcx + 0xd0], rsi
mov rcx, rdx
jne 0x14003e990
test byte [r12 + rax - 0xe], 0x80
je 0x14003e960
mov al, 1
mov dword [rsp + 0x1e8], eax
jmp 0x14003e9cc
mov dword [rsp + 0x1e8], 0
mov r15, qword [r13 + 0x10]
mov rax, qword [r13 + 0x18]
shl rax, 5
add rax, r15
mov qword [rsp + 0x38], rax
pcmpeqd xmm6, xmm6
mov qword [rsp + 0x150], rbx
mov rax, qword [rsp + 0x430]
cmp qword [rax + 0x28], 0
je 0x14003ec39
mov rdx, qword [rax + 8]
mov r12, qword [rax + 0x10]
mov r11, rdx
movabs rcx, 0x736f6d6570736575
xor r11, rcx
mov qword [rsp + 0x40], r12
movabs rcx, 0x646f72616e646f6d
xor r12, rcx
add r11, r12
rol r12, 0xd
xor r12, r11
rol r11, 0x20
movabs rcx, 0x6c7967656e657261
xor rdx, rcx
mov qword [rsp + 0x48], rdx
mov rcx, r12
rol rcx, 0x11
mov qword [rsp + 0xa8], rcx
mov rsi, qword [rax + 0x40]
mov rdx, qword [rax + 0x48]
mov rdi, qword [rax + 0x18]
mov r10, qword [rax + 0x30]
jmp 0x14003ea7b
cmp byte [rsi + rcx + 0x70], 0
je 0x14003ec4b
cmp r15, qword [rsp + 0x38]
je 0x14003ef2e
mov r9, qword [r15]
mov r8, qword [rsp + 0x40]
xor r8, r9
movabs rax, 0x7465646279746573
xor r8, rax
mov rax, qword [rsp + 0x48]
lea rcx, [r8 + rax]
rol r8, 0x10
xor r8, rcx
lea r14, [r8 + r11]
rol r8, 0x15
xor r8, r14
add rcx, r12
mov rbx, rcx
xor rbx, qword [rsp + 0xa8]
rol rcx, 0x20
xor r14, r9
add r14, rbx
rol rbx, 0xd
mov r13, r8
xor rbx, r14
rol r14, 0x20
movabs rax, 0x800000000000000
xor r13, rax
add rcx, r13
shrd r13, r8, 0x30
xor r13, rcx
add r14, r13
rol r13, 0x15
add rcx, rbx
rol rbx, 0x11
xor r13, r14
xor rbx, rcx
rol rcx, 0x20
xor r14, rax
add r14, rbx
rol rbx, 0xd
xor rbx, r14
rol r14, 0x20
xor rcx, 0xff
add rcx, r13
rol r13, 0x10
xor r13, rcx
add r14, r13
rol r13, 0x15
add rcx, rbx
rol rbx, 0x11
xor rbx, rcx
rol rcx, 0x20
xor r13, r14
add r14, rbx
rol rbx, 0xd
xor rbx, r14
rol r14, 0x20
add rcx, r13
rol r13, 0x10
xor r13, rcx
add r14, r13
rol r13, 0x15
add rcx, rbx
rol rbx, 0x11
xor rbx, rcx
rol rcx, 0x20
xor r13, r14
add r14, rbx
rol rbx, 0xd
add r15, 0x20
add rcx, r13
rol r13, 0x10
xor rbx, r14
xor r13, rcx
rol r13, 0x15
add rcx, rbx
rol rbx, 0x11
xor rbx, rcx
rol rcx, 0x20
xor rbx, rcx
xor rbx, r13
mov r13, qword [rsp + 0x78]
mov rax, rbx
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor r14d, r14d
and rbx, rdi
movdqu xmm1, xmmword [r10 + rbx]
movdqa xmm2, xmm0
pcmpeqb xmm2, xmm1
pmovmskb eax, xmm2
nop
test ax, ax
je 0x14003ec20
bsf cx, ax
movzx ecx, cx
add rcx, rbx
and rcx, rdi
shl rcx, 3
mov rbp, r10
sub rbp, rcx
mov rcx, qword [rbp - 8]
cmp rdx, rcx
jbe 0x14003f156
lea ebp, [rax - 1]
and ebp, eax
imul rcx, rcx, 0x78
mov eax, ebp
cmp qword [rsi + rcx + 8], r9
jne 0x14003ebe0
jmp 0x14003ea70
pcmpeqb xmm1, xmm6
pmovmskb eax, xmm1
test eax, eax
jne 0x14003ec4b
add rbx, r14
add rbx, 0x10
add r14, 0x10
jmp 0x14003ebca
cmp r15, qword [rsp + 0x38]
je 0x14003ef2e
mov r9, qword [r15]
add r15, 0x20
mov rbx, qword [rsp + 0x150]
mov rcx, qword [rbx + 0x110]
mov rax, qword [rbx + 0x108]
mov rdx, 0xfffffffffffffe50
add rax, rdx
shl rcx, 7
lea rcx, [rcx + rcx*4]
nop word cs:[rax + rax]
test rcx, rcx
je 0x14003ed0e
lea rdx, [rax + 0x280]
add rcx, 0xfffffffffffffd80
cmp qword [rax + 0x280], r9
mov rax, rdx
jne 0x14003ec80
cmp byte [rsp + 0x1e8], 0
jne 0x14003e9ec
mov qword [rsp + 0x20], rdx
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x320]
mov r8, rbx
mov r9, qword [rsp + 0x430]
call fcn.140046300
mov rsi, qword [rsp + 0xc0]
cmp qword [rsp + 0xb0], 0
je 0x14003ed00
mov r8, qword [rsp + 0xb8]
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rsi, rsi
jne 0x14003e9ec
jmp 0x14003eeea
mov rax, qword [rbx + 0x280]
add rax, 0xffffffffffffffa8
imul rcx, qword [rbx + 0x288], 0x68
nop word cs:[rax + rax]
test rcx, rcx
je 0x14003e9ec
lea r8, [rax + 0x68]
add rcx, 0xffffffffffffff98
cmp qword [rax + 0x68], r9
mov rax, r8
jne 0x14003ed30
lea rcx, [rsp + 0xb0]
mov rdx, rbx
call fcn.140020870
mov r8, qword [rsp + 0xb8]
mov rax, qword [rsp + 0xc0]
mov sil, 1
test rax, rax
je 0x14003eec7
mov rcx, qword [rsp + 0x430]
cmp qword [rcx + 0x28], 0
je 0x14003ee9f
lea rax, [r8 + rax*8]
mov qword [rsp + 0xa8], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x48], rax
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x40], rax
mov rbx, qword [rcx + 0x40]
mov rdi, qword [rcx + 0x48]
mov r12, qword [rcx + 0x18]
mov r14, qword [rcx + 0x30]
mov qword [rsp + 0x250], r8
mov r13, r8
nop word cs:[rax + rax]
mov rbp, qword [r13]
add r13, 8
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov r8, rbp
call fcn.140035200
mov rcx, rax
shr rcx, 0x39
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor r8d, r8d
and rax, r12
movdqu xmm1, xmmword [r14 + rax]
movdqa xmm2, xmm0
pcmpeqb xmm2, xmm1
pmovmskb esi, xmm2
nop dword [rax + rax]
test si, si
je 0x14003ee60
bsf cx, si
movzx ecx, cx
add rcx, rax
and rcx, r12
shl rcx, 3
mov rdx, r14
sub rdx, rcx
mov rcx, qword [rdx - 8]
cmp rdi, rcx
jbe 0x140042a33
lea edx, [rsi - 1]
and edx, esi
imul rcx, rcx, 0x78
mov esi, edx
cmp qword [rbx + rcx + 8], rbp
jne 0x14003ee20
jmp 0x14003ee80
pcmpeqb xmm1, xmm6
pmovmskb ecx, xmm1
test ecx, ecx
jne 0x14003ee87
add rax, r8
add rax, 0x10
add r8, 0x10
jmp 0x14003ee06
cmp byte [rbx + rcx + 0x70], 0
jne 0x14003eeb8
cmp r13, qword [rsp + 0xa8]
jne 0x14003edd0
mov r13, qword [rsp + 0x78]
mov sil, 1
jmp 0x14003eebf
shl rax, 3
nop word cs:[rax + rax]
add rax, 0xfffffffffffffff8
jne 0x14003eeb0
jmp 0x14003eec7
xor esi, esi
mov r13, qword [rsp + 0x78]
mov r8, qword [rsp + 0x250]
cmp qword [rsp + 0xb0], 0
je 0x14003eee1
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
test sil, sil
je 0x14003e9ec
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], 8
mov qword [rsp + 0xc0], 0
lea rcx, [rsp + 0x170]
lea r9, [rsp + 0xb0]
mov rdx, r13
mov r15, qword [rsp + 0x430]
jmp 0x14003f138
mov r12, qword [rsp + 0x150]
mov rbx, qword [r12 + 0x108]
mov rax, qword [r12 + 0x110]
test rax, rax
je 0x14003f175
lea r14, [rax + rax*4]
shl r14, 7
add r14, rbx
mov r15, qword [rsp + 0x430]
jmp 0x14003ef6d
cmp rbx, r14
je 0x140042a44
mov rsi, rbx
mov rax, qword [rbx + 0x148]
test rax, rax
je 0x14003efce
mov rbx, qword [rsi + 0x140]
shl rax, 3
lea rbp, [rax + rax*2]
xor edi, edi
jmp 0x14003ef99
add rdi, 0x18
cmp rbp, rdi
je 0x14003efce
mov rdx, qword [rbx + rdi]
mov r8, qword [rbx + rdi + 8]
mov r9, qword [rbx + rdi + 0x10]
mov rcx, r15
call fcn.140020690
test al, al
je 0x14003ef90
mov rdx, qword [rsi + 0xd0]
mov rcx, r15
xor r8d, r8d
call fcn.140020690
test al, al
jne 0x14003ef90
jmp 0x14003f0bf
lea rbx, [rsi + 0x280]
mov rcx, qword [rsi + 0x158]
mov rax, qword [rsi + 0x160]
shl rax, 3
lea rdi, [rax + rax*2]
nop dword [rax + rax]
test rdi, rdi
je 0x14003f01c
lea rbp, [rcx + 0x18]
mov rdx, qword [rcx]
mov r8, qword [rcx + 8]
mov r9, qword [rcx + 0x10]
mov rcx, r15
call fcn.140020690
add rdi, 0xffffffffffffffe8
mov rcx, rbp
test al, al
jne 0x14003eff0
jmp 0x14003ef64
cmp qword [rsi + 0x160], 0
je 0x14003ef64
mov rdx, qword [rsi + 0xd0]
mov rcx, r15
xor r8d, r8d
call fcn.140020690
test al, al
jne 0x14003ef64
mov ecx, 8
call fcn.140047a60
jmp 0x14003f0fb
movups xmm0, xmmword [rsp + 0xb0]
movups xmm1, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x180], xmm1
movaps xmmword [rsp + 0x170], xmm0
mov ecx, dword [rsp + 0xd4]
mov rdx, qword [rsp + 0x1e0]
mov dword [rdx + 0x24], ecx
mov ecx, dword [rsp + 0xd1]
mov dword [rdx + 0x21], ecx
movaps xmm0, xmmword [rsp + 0x170]
movaps xmm1, xmmword [rsp + 0x180]
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
mov byte [rdx + 0x20], al
mov r15, qword [rsp + 0x320]
test r15, r15
jne 0x14003f670
jmp 0x140042956
mov rcx, qword [0x140221370]
test rcx, rcx
jne 0x14003f0e4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042c4a
mov rcx, rax
mov qword [0x140221370], rax
mov r8d, 8
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042c4a
mov rcx, qword [rsi + 0xd0]
mov qword [rax], rcx
mov qword [rsp + 0xb0], 1
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], 1
lea rcx, [rsp + 0x170]
lea r9, [rsp + 0xb0]
mov rdx, r13
mov r8, r15
call fcn.140046d20
jmp 0x14003f740
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823indexmap_1.9.3_srcmapcore.rs
mov rdx, r12
call fcn.14016f330
ud2
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823indexmap_1.9.3_srcmapcore.rs
call fcn.14016f330
ud2
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823indexmap_1.9.3_srcmapcore.rs
mov rdx, r13
call fcn.14016f330
ud2
xor eax, eax
mov r15, qword [rsp + 0x430]
lea rax, [rax + rax*4]
shl rax, 7
add rax, rbx
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x90], r15
mov qword [rsp + 0x98], r13
lea rcx, [rsp + 0x80]
call fcn.140047730
test rax, rax
je 0x14003f738
mov rsi, rdx
mov rcx, qword [0x140221370]
test rcx, rcx
jne 0x14003f1e8
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042bce
mov rcx, rax
mov qword [0x140221370], rax
mov r8d, 0x20
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042bce
mov rdi, rax
mov qword [rax], rsi
mov qword [rsp + 0x260], 4
mov qword [rsp + 0x268], rax
mov qword [rsp + 0x270], 1
movdqu xmm0, xmmword [rsp + 0x80]
movdqu xmm1, xmmword [rsp + 0x90]
movdqa xmmword [rsp + 0x200], xmm1
movdqa xmmword [rsp + 0x1f0], xmm0
mov esi, 1
lea rbx, [rsp + 0x1f0]
lea r14, [rsp + 0x260]
jmp 0x14003f26f
mov qword [rdi + rsi*8], rbp
inc rsi
mov qword [rsp + 0x270], rsi
mov rcx, rbx
call fcn.140047730
cmp rax, 1
jne 0x14003f3fb
mov rbp, rdx
cmp rsi, qword [rsp + 0x260]
jne 0x14003f260
mov r8d, 1
mov rcx, r14
mov rdx, rsi
call fcn.14016c580
mov rdi, qword [rsp + 0x268]
jmp 0x14003f260
mov rbp, qword [rbx + 0x208]
lea rax, [rbx + 0x210]
mov r15, qword [rax]
test r15, r15
jne 0x14003e44a
mov r14d, 1
mov rdi, rbx
mov rcx, r14
mov rdx, rbp
mov r8, r15
call sub.VCRUNTIME140.dll_memcpy
add r12, 8
mov qword [rsp + 0x260], r12
mov qword [rsp + 0x268], rdi
lea r8, method..virtual_32
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0x260]
xor r9d, r9d
call fcn.14001a8d0
mov rcx, qword [0x140221370]
test rcx, rcx
jne 0x14003f332
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042ae2
mov rcx, rax
mov qword [0x140221370], rax
mov r8d, 0x60
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042ae2
mov rbp, rax
mov byte [rax + 0x19], 3
mov qword [rax + 0x20], 0
mov qword [rax + 0x40], 0
mov qword [rax + 0x48], 8
mov qword [rax + 0x50], 0
mov byte [rax + 0x58], recv
mov byte [rax + 0x5b], 0
mov rsi, qword [rbx + 0x1f0]
mov rdi, qword [rbx + 0x1f8]
mov eax, edi
shr al, 6
and al, 1
test sil, 0x40
movzx eax, al
mov ecx, 1
cmove ecx, eax
mov byte [rbp + 0x5a], cl
mov rcx, qword [rbx + 0x1f0]
mov rdx, qword [rbx + 0x1f8]
call fcn.14001a050
mov byte [rbp + 0x59], al
or rdi, rsi
bt rdi, 0x29
jb 0x14003f3d0
lea rcx, [0x1401791c7]
mov eax, 6
jmp 0x14003f54e
mov eax, 4
cmp qword [rbx + 0x270], 0
je 0x14003f54c
xor ecx, ecx
test edi, 0x8000000
lea rdx, [0x14017836c]
cmove rcx, rdx
jmp 0x14003f54e
mov rax, qword [rsp + 0x260]
mov r8, qword [rsp + 0x268]
test rsi, rsi
je 0x14003f724
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], r8
mov qword [rsp + 0x200], rsi
lea rcx, [rsp + 0xb0]
lea r9, [rsp + 0x1f0]
mov rdx, r13
mov r8, r15
call fcn.140046d20
movzx eax, byte [rsp + 0xd0]
cmp al, 0x16
je 0x14003f738
movdqu xmm0, xmmword [rsp + 0xb0]
movdqu xmm1, xmmword [rsp + 0xc0]
movdqa xmmword [rsp + 0x180], xmm1
movdqa xmmword [rsp + 0x170], xmm0
mov ecx, dword [rsp + 0xd1]
mov dword [rsp + 0x191], ecx
mov ecx, dword [rsp + 0xd4]
mov dword [rsp + 0x194], ecx
mov byte [rsp + 0x190], al
jmp 0x14003f740
movups xmm0, xmmword [rsp + 0x80]
movups xmm1, xmmword [rsp + 0x90]
movaps xmmword [rsp + 0x270], xmm1
movaps xmmword [rsp + 0x260], xmm0
lea rcx, [rsp + 0xa1]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x298], eax
mov dword [rsp + 0x29b], ecx
cmp qword [rsp + 0x158], 0
je 0x14003f500
mov r8, qword [rsp + 0x160]
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
movaps xmm0, xmmword [rsp + 0x260]
movaps xmm1, xmmword [rsp + 0x270]
mov rdx, qword [rsp + 0x1e0]
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
mov eax, dword [rsp + 0x298]
mov ecx, dword [rsp + 0x29b]
mov dword [rdx + 0x21], eax
mov dword [rdx + 0x24], ecx
mov byte [rdx + 0x20], bl
mov r15, qword [rsp + 0x320]
test r15, r15
jne 0x14003f670
jmp 0x140042956
xor ecx, ecx
mov qword [rbp + 0x30], rcx
mov qword [rbp + 0x38], rax
mov qword [rsp + 0x170], rbp
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 8
mov qword [rsp + 0x188], 0
mov byte [rsp + 0x190], send
movups xmm0, xmmword [rsp + 0x80]
movups xmmword [rsp + 0xb7], xmm0
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0xc7], rax
movups xmm0, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x1f0], xmm0
mov rax, qword [rsp + 0xbf]
mov qword [rsp + 0x1ff], rax
mov rax, qword [rsp + 0xc7]
mov qword [rsp + 0x207], rax
mov byte [rsp + 0xb0], 0
mov byte [rsp + 0xb8], 2
mov qword [rsp + 0xc0], r15
mov qword [rsp + 0xc8], r14
mov qword [rsp + 0xd0], r15
mov byte [rsp + 0xd8], send
mov byte [rsp + 0xe0], 2
mov rax, qword [rsp + 0x1ff]
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x207]
mov qword [rsp + 0xf8], rax
movaps xmm0, xmmword [rsp + 0x1f0]
movups xmmword [rsp + 0xe1], xmm0
lea rdx, [rsp + 0x170]
lea r8, [rsp + 0xb0]
mov rcx, qword [rsp + 0x1e0]
call fcn.140028f80
mov r15, qword [rsp + 0x320]
test r15, r15
je 0x140042956
mov rbx, qword [rsp + 0x330]
test rbx, rbx
je 0x140042924
mov r14, qword [rsp + 0x338]
movdqa xmm0, xmmword [r14]
pmovmskb eax, xmm0
not eax
lea rbp, [r14 + 0x10]
mov r12, qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, r14
jmp 0x14003f6bb
mov eax, esi
test rbx, rbx
je 0x14004292c
test ax, ax
je 0x14003f6d0
lea esi, [rax - 1]
and esi, eax
jmp 0x14003f6f7
movdqa xmm0, xmmword [rbp]
pmovmskb eax, xmm0
add rdi, 0xfffffffffffffe00
add rbp, 0x10
cmp ax, 0xffff
je 0x14003f6d0
mov ecx, 0xfffffffe
sub ecx, eax
not eax
mov esi, eax
and esi, ecx
bsf ax, ax
movzx ecx, ax
shl rcx, 5
mov rax, rdi
sub rax, rcx
dec rbx
cmp qword [rax - 0x18], 0
je 0x14003f6b0
mov r8, qword [rax - 0x10]
mov rcx, qword [0x140221370]
xor edx, edx
call r12
jmp 0x14003f6b0
test rax, rax
je 0x14003f738
mov rcx, qword [0x140221370]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov byte [rsp + 0x190], reloc.WS2_32.dll_shutdown
movzx eax, byte [rsp + 0x190]
cmp al, 0x16
jne 0x1400429e6
mov rax, qword [r15 + 0x48]
test rax, rax
je 0x14004285a
mov rsi, qword [r15 + 0x40]
imul rax, rax, 0x78
add rax, rsi
mov qword [rsp + 0x2c0], rax
lea rax, [r13 + 8]
mov qword [rsp + 0x240], rax
lea r14, [rsp + 0xb0]
jmp 0x14003f91e
test ebp, 0x8000000
mov ecx, 0
lea rdx, [0x14017836c]
cmove rcx, rdx
mov qword [rdi + 0x30], rcx
mov qword [rdi + 0x38], rax
mov qword [rsp + 0x170], rdi
mov qword [rsp + 0x178], 3
mov qword [rsp + 0x180], r14
mov qword [rsp + 0x188], 3
mov byte [rsp + 0x190], 9
mov rax, qword [rsp + 0x168]
lea rcx, [rsp + 0x87]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x158]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rsp + 0x80]
movups xmm1, xmmword [rsp + 0x8f]
movaps xmmword [rsp + 0x220], xmm0
movups xmmword [rsp + 0x22f], xmm1
mov rax, qword [rsp + 0x2d8]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x2c8]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rsp + 0x80]
movdqu xmm1, xmmword [rsp + 0x8f]
movaps xmmword [rsp + 0x50], xmm0
movdqu xmmword [rsp + 0x5f], xmm1
mov byte [rsp + 0xb0], 1
mov byte [rsp + 0xb8], 2
movups xmm0, xmmword [rsp + 0x22f]
lea rax, [rsp + 0xb9]
movups xmmword [rax + 0xf], xmm0
movaps xmm0, xmmword [rsp + 0x220]
movups xmmword [rax], xmm0
mov byte [rsp + 0xd8], 9
mov byte [rsp + 0xe0], 4
mov qword [rsp + 0xe8], rbx
mov byte [rsp + 0x100], 5
mov byte [rsp + 0x108], 4
mov qword [rsp + 0x110], r15
mov byte [rsp + 0x128], send
mov byte [rsp + 0x130], 2
movups xmm0, xmmword [rsp + 0x5f]
movups xmmword [rax + 0x87], xmm0
movdqa xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rax + 0x78], xmm0
lea rcx, [rsp + 0x1f0]
lea rdx, [rsp + 0x170]
lea r14, [rsp + 0xb0]
mov r8, r14
call fcn.140044e10
mov r13, qword [rsp + 0x78]
movzx eax, byte [rsp + 0x210]
cmp al, 0x16
jne 0x14004297a
nop word cs:[rax + rax]
cmp rsi, qword [rsp + 0x2c0]
je 0x14004285a
mov rax, rsi
add rsi, 0x78
mov qword [rsp + 0x48], rax
mov rax, qword [rax + 8]
mov r15, qword [r13]
mov rdx, qword [r15 + 0x110]
mov rcx, qword [r15 + 0x108]
mov rbp, 0xfffffffffffffd80
add rcx, rbp
shl rdx, 7
lea rdx, [rdx + rdx*4]
nop word cs:[rax + rax]
test rdx, rdx
je 0x14003f910
lea rdi, [rcx + 0x280]
add rdx, 0xfffffffffffffd80
cmp qword [rcx + 0x350], rax
mov rcx, rdi
jne 0x14003f960
cmp dword [rdi + 0x80], 1
mov qword [rsp + 0x248], rsi
mov qword [rsp + 0x38], rdi
jne 0x14003f9f0
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x14003fc62
mov rax, qword [rax + 0x48]
shl rcx, 3
lea rcx, [rcx + rcx*2]
xor edx, edx
xor ebx, ebx
nop word [rax + rax]
add rbx, qword [rax + rdx + 0x10]
add rdx, 0x18
cmp rcx, rdx
jne 0x14003f9c0
mov r12, qword [rdi + 0x88]
test byte [rdi + 0x270], 2
jne 0x14003fc78
cmp r12, rbx
jne 0x14003fca2
nop dword [rax + rax]
cmp dword [rdi + 0xa0], 1
jne 0x14003fac0
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax + 0x50]
test rdx, rdx
je 0x14003fac0
mov rax, qword [rdi + 0xa8]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x48]
shl rdx, 3
lea rdx, [rdx + rdx*2]
xor ebx, ebx
xor ebp, ebp
nop dword [rax + rax]
add rbp, qword [rcx + rbx + 0x10]
add rbx, 0x18
cmp rdx, rbx
jne 0x14003fa30
cmp rbp, rax
jbe 0x14003fac0
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x68]
test rcx, rcx
je 0x140042be2
mov rax, qword [rax + 0x60]
shl rcx, 3
lea rdx, [rcx + rcx*2]
xor ebp, ebp
xor ecx, ecx
nop word cs:[rax + rax]
mov rbx, qword [rax + rbp + 8]
mov rsi, qword [rax + rbp + 0x10]
mov rdi, rsi
shl rdi, 5
test rsi, rsi
lea rbx, [rbx + rdi - 0x20]
cmovne rcx, rbx
add rbp, 0x18
cmp rdx, rbp
jne 0x14003fa70
test rcx, rcx
je 0x140042be2
mov rdi, qword [rcx + 8]
mov rsi, qword [rcx + 0x10]
test rsi, rsi
je 0x140040c08
lea rax, [rdi + rsi]
mov rdx, rdi
jmp 0x14003fbfc
mov al, 1
cmp dword [rdi + 0xb0], 1
jne 0x14003fd80
mov rax, qword [rsp + 0x48]
mov rsi, qword [rax + 0x48]
mov rdi, qword [rax + 0x50]
test rdi, rdi
je 0x14003fd60
lea rax, [rdi*8]
lea rcx, [rax + rax*2]
xor edx, edx
xor eax, eax
nop word cs:[rax + rax]
add rax, qword [rsi + rdx + 0x10]
add rdx, 0x18
cmp rcx, rdx
jne 0x14003fb00
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rcx + 0xb8]
cmp rax, rdx
jae 0x14003fd77
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x160], 1
mov qword [rsp + 0x168], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x158]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rdx, r14
call fcn.140018210
test al, al
jne 0x140042ab7
test rdi, rdi
je 0x140040095
shl rdi, 3
lea rax, [rdi + rdi*2]
xor ecx, ecx
xor ebp, ebp
nop word cs:[rax + rax]
add rbp, qword [rsi + rcx + 0x10]
add rcx, 0x18
cmp rax, rcx
jne 0x14003fbd0
jmp 0x140040097
add rdx, 2
cmp rcx, rax
cmovne rcx, rdx
nop
mov rdx, rcx
cmp rcx, rax
je 0x14003ff17
lea rcx, [rdx + 1]
movzx ebx, byte [rdx]
test bl, bl
jns 0x14003fbf0
cmp bl, 0xe0
jb 0x14003fbe3
cmp bl, 0xed
jne 0x14003fc3a
cmp rcx, rax
je 0x14003ff17
lea rcx, [rdx + 2]
cmp rcx, rax
je 0x14003ff17
cmp byte [rdx + 1], 0xa0
jae 0x140042bfc
add rdx, 3
mov rcx, rdx
jmp 0x14003fbf0
add rdx, 2
cmp rcx, rax
cmove rdx, rcx
xor ecx, ecx
cmp rdx, rax
setne cl
add rcx, rdx
cmp bl, 0xf0
jb 0x14003fbf0
xor edx, edx
cmp rcx, rax
setne dl
add rcx, rdx
jmp 0x14003fbf0
xor ebx, ebx
mov r12, qword [rdi + 0x88]
test byte [rdi + 0x270], 2
je 0x14003f9e2
test r12, r12
je 0x140042a59
mov rax, rbx
or rax, r12
shr rax, 0x20
je 0x14003fef7
mov rax, rbx
xor edx, edx
div r12
test rdx, rdx
je 0x14003f9f0
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x160], 1
mov qword [rsp + 0x168], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x158]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rcx, rdi
mov rdx, r14
call fcn.140018210
test al, al
jne 0x140042ab7
test byte [rdi + 0x270], 2
je 0x1400405cc
test r12, r12
je 0x140042a69
mov rax, rbx
or rax, r12
shr rax, 0x20
je 0x1400405c3
mov rax, rbx
xor edx, edx
div r12
mov rbx, rdx
jmp 0x1400405cc
xor eax, eax
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rcx + 0xb8]
cmp rax, rdx
jb 0x14003fb23
test rdx, rdx
setne al
mov rdi, rcx
test al, al
je 0x140040e72
mov eax, dword [rdi + 0x270]
and eax, 0x20
je 0x140040e72
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x14003fdd7
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x48]
shl rcx, 3
lea rcx, [rcx + rcx*2]
xor ebp, ebp
xor edx, edx
nop word [rax + rax]
add rdx, qword [rax + rbp + 0x10]
add rbp, 0x18
cmp rcx, rbp
jne 0x14003fdc0
test rdx, rdx
jne 0x140040e72
lea rcx, [rsp + 0x80]
mov rdx, rdi
call fcn.140045480
mov rcx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x90]
shl rax, 6
lea rdi, [rcx + rax]
nop
test rax, rax
je 0x14003ff0c
lea rbx, [rcx + 0x40]
add rax, 0xffffffffffffffc0
cmp byte [rcx + 0x38], 0
mov rcx, rbx
jne 0x14003fe00
mov rsi, qword [rbx - 0x30]
mov rbp, qword [rbx - 0x28]
mov rax, qword [0x140221370]
test rax, rax
jne 0x14003fe44
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042bc4
mov qword [0x140221370], rax
mov r8d, 0x40
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042bc4
mov qword [rax], rsi
mov qword [rax + 8], rbp
mov qword [rsp + 0xb0], 4
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], 1
mov esi, 1
mov rcx, rbx
nop dword [rax]
cmp rcx, rdi
je 0x14003ff61
lea rbx, [rcx + 0x40]
cmp byte [rcx + 0x38], 0
mov rcx, rbx
jne 0x14003fe90
mov rbp, qword [rbx - 0x30]
mov r14, qword [rbx - 0x28]
cmp qword [rsp + 0xb0], rsi
je 0x14003fedd
mov rcx, rsi
shl rcx, 4
mov qword [rax + rcx], rbp
mov qword [rax + rcx + 8], r14
inc rsi
mov qword [rsp + 0xc0], rsi
lea r14, [rsp + 0xb0]
jmp 0x14003fe8a
lea rcx, [rsp + 0xb0]
mov rdx, rsi
call fcn.140021d20
mov rax, qword [rsp + 0xb8]
jmp 0x14003feb8
mov eax, ebx
xor edx, edx
div r12d
test rdx, rdx
jne 0x14003fca2
jmp 0x14003f9f0
mov edi, 8
xor ebx, ebx
xor esi, esi
jmp 0x14003ff71
test rsi, rsi
js 0x140042bae
mov rax, qword [0x140221370]
test rax, rax
jne 0x14003ff42
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042c3b
mov qword [0x140221370], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x140040c0d
jmp 0x140042c3b
mov rbx, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xb8]
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 1
mov qword [rsp + 0x180], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rbp, [rsp + 0x170]
mov qword [rsp + 0xb0], rbp
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rcx, qword [rsp + 0x38]
mov rdx, r14
call fcn.140018210
test al, al
jne 0x140042ab7
mov qword [rsp + 0x20], rbp
lea rcx, [rsp + 0x1f0]
mov rdx, r15
mov r8, rdi
mov r9, rsi
call fcn.140022690
test rbx, rbx
mov rbp, qword [sym.imp.KERNEL32.dll_HeapFree]
je 0x140040030
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, rdi
call rbp
mov rsi, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x90]
test rdi, rdi
je 0x140040073
shl rdi, 6
xor ebx, ebx
jmp 0x140040059
add rbx, 0x40
cmp rdi, rbx
je 0x140040073
cmp qword [rsi + rbx + 0x20], 0
je 0x140040050
mov r8, qword [rsi + rbx + 0x28]
mov rcx, qword [0x140221370]
xor edx, edx
call rbp
jmp 0x140040050
cmp qword [rsp + 0x80], 0
je 0x140040e5d
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, rsi
call rbp
jmp 0x140040e5d
xor ebp, ebp
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x2a0], r15
lea rcx, [rsp + 0x2c8]
lea rdx, [rsp + 0x298]
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14001a8d0
mov rax, qword [0x140221370]
test rax, rax
jne 0x1400400f0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042ba4
mov qword [0x140221370], rax
mov r8d, 0x48
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042ba4
mov r14, rax
mov rdi, qword [rsp + 0x160]
mov r13, qword [rsp + 0x168]
test r13, r13
je 0x140040165
js 0x140042bae
mov rax, qword [0x140221370]
test rax, rax
jne 0x14004014a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042bb5
mov qword [0x140221370], rax
mov rcx, rax
xor edx, edx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r12, rax
test rax, rax
jne 0x14004016b
jmp 0x140042bb5
mov r12d, 1
mov rcx, r12
mov rdx, rdi
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 1
mov qword [rsp + 0x60], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x50]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov eax, 0x27
mov rdx, rbp
cmp rbp, 0x2710
movabs r8, 0x346dc5d63886594b
lea r9, str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
jb 0x140040268
mov edi, 0x27
mov rbx, rbp
nop dword [rax]
mov rax, rbx
mul r8
shr rdx, 0xb
imul eax, edx, 0x2710
mov ecx, ebx
sub ecx, eax
movzx eax, cx
shr eax, 2
imul esi, eax, 0x147b
shr esi, 0x11
imul eax, esi, 0x64
sub ecx, eax
movzx ecx, cx
lea rax, [rdi - 4]
movzx esi, word [r9 + rsi*2]
mov word [rsp + rdi + 0x16c], si
movzx ecx, word [r9 + rcx*2]
mov word [rsp + rdi + 0x16e], cx
mov rdi, rax
cmp rbx, 0x5f5e0ff
mov rbx, rdx
ja 0x140040210
cmp rdx, 0x63
jbe 0x140040299
movzx ecx, dx
shr ecx, 2
imul ecx, ecx, 0x147b
shr ecx, 0x11
imul ebx, ecx, 0x64
sub edx, ebx
movzx edx, dx
movzx edx, word [r9 + rdx*2]
mov word [rsp + rax + 0x16e], dx
add rax, 0xfffffffffffffffe
mov rdx, rcx
cmp rdx, 0xa
jae 0x1400402ae
add dl, 0x30
mov byte [rsp + rax + 0x16f], dl
dec rax
jmp 0x1400402bf
movzx ecx, word [r9 + rdx*2]
mov word [rsp + rax + 0x16e], cx
add rax, 0xfffffffffffffffe
lea rcx, [rsp + rax]
add rcx, 0x170
mov edx, 0x27
sub rdx, rax
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xb0]
mov dl, 1
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14005a2e0
test al, al
jne 0x140042ab7
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 1
mov qword [rsp + 0x90], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x80]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov eax, 0x27
mov rbx, qword [rsp + 0x40]
mov rdx, rbx
cmp rbx, 0x2710
movabs r8, 0x346dc5d63886594b
lea r9, str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
jb 0x1400403f8
mov edi, 0x27
nop
mov rax, rbx
mul r8
shr rdx, 0xb
imul eax, edx, 0x2710
mov ecx, ebx
sub ecx, eax
movzx eax, cx
shr eax, 2
imul esi, eax, 0x147b
shr esi, 0x11
imul eax, esi, 0x64
sub ecx, eax
movzx ecx, cx
lea rax, [rdi - 4]
movzx esi, word [r9 + rsi*2]
mov word [rsp + rdi + 0x16c], si
movzx ecx, word [r9 + rcx*2]
mov word [rsp + rdi + 0x16e], cx
mov rdi, rax
cmp rbx, 0x5f5e0ff
mov rbx, rdx
ja 0x1400403a0
cmp rdx, 0x63
jbe 0x140040429
movzx ecx, dx
shr ecx, 2
imul ecx, ecx, 0x147b
shr ecx, 0x11
imul ebx, ecx, 0x64
sub edx, ebx
movzx edx, dx
movzx edx, word [r9 + rdx*2]
mov word [rsp + rax + 0x16e], dx
add rax, 0xfffffffffffffffe
mov rdx, rcx
cmp rdx, 0xa
jae 0x14004043e
add dl, 0x30
mov byte [rsp + rax + 0x16f], dl
dec rax
jmp 0x14004044f
movzx ecx, word [r9 + rdx*2]
mov word [rsp + rax + 0x16e], cx
add rax, 0xfffffffffffffffe
lea rcx, [rsp + rax]
add rcx, 0x170
mov edx, 0x27
sub rdx, rax
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xb0]
mov dl, 1
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14005a2e0
test al, al
jne 0x140042ab7
mov qword [r14], r13
mov qword [r14 + 8], r12
mov qword [r14 + 0x10], r13
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [r14 + 0x18], xmm0
mov rax, qword [rsp + 0x60]
mov qword [r14 + 0x28], rax
movdqu xmm0, xmmword [rsp + 0x80]
movdqu xmmword [r14 + 0x30], xmm0
mov rax, qword [rsp + 0x90]
mov qword [r14 + 0x40], rax
mov rax, qword [0x140221370]
test rax, rax
jne 0x1400404e8
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042ae2
mov qword [0x140221370], rax
mov r8d, 0x60
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042ae2
mov rdi, rax
mov byte [rax + 0x19], 3
mov qword [rax + 0x20], 0
mov qword [rax + 0x30], 0
mov qword [rax + 0x40], 0
mov qword [rax + 0x48], 8
mov qword [rax + 0x50], 0
mov byte [rax + 0x58], 8
mov byte [rax + 0x5b], 0
mov rsi, qword [r15 + 0x1f0]
mov rbx, qword [r15 + 0x1f8]
mov eax, ebx
shr al, 6
and al, 1
test sil, 0x40
movzx eax, al
mov ecx, 1
cmovne eax, ecx
mov byte [rdi + 0x5a], al
mov rcx, qword [r15 + 0x1f0]
mov rdx, qword [r15 + 0x1f8]
call fcn.14001a050
mov byte [rdi + 0x59], al
or rbx, rsi
mov eax, 6
bt rbx, 0x29
lea rcx, [0x1401791c7]
mov rsi, qword [rsp + 0x40]
jae 0x140040d10
mov eax, 4
cmp qword [r15 + 0x270], 0
je 0x140040d0e
test ebx, 0x8000000
mov ecx, 0
lea rdx, [0x14017836c]
cmove rcx, rdx
jmp 0x140040d10
mov eax, ebx
xor edx, edx
div r12d
mov ebx, edx
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x2a0], r15
lea rcx, [rsp + 0x2c8]
lea rdx, [rsp + 0x298]
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14001a8d0
mov rax, qword [0x140221370]
test rax, rax
jne 0x140040625
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042ba4
mov qword [0x140221370], rax
mov r8d, 0x48
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042ba4
mov r14, rax
mov rdi, qword [rsp + 0x160]
mov r13, qword [rsp + 0x168]
test r13, r13
je 0x140040697
js 0x140042bae
mov rax, qword [0x140221370]
test rax, rax
jne 0x14004067f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042bb5
mov qword [0x140221370], rax
mov rcx, rax
xor edx, edx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x14004069c
jmp 0x140042bb5
mov eax, 1
mov qword [rsp + 0x40], rax
mov rcx, rax
mov rdx, rdi
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 1
mov qword [rsp + 0x60], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x50]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov eax, 0x27
mov rdx, rbx
cmp rbx, 0x2710
movabs r8, 0x346dc5d63886594b
lea r9, str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
jb 0x1400407a8
mov edi, 0x27
mov rsi, rbx
nop word cs:[rax + rax]
mov rax, rsi
mul r8
shr rdx, 0xb
imul eax, edx, 0x2710
mov ecx, esi
sub ecx, eax
movzx eax, cx
shr eax, 2
imul ebp, eax, 0x147b
shr ebp, 0x11
imul eax, ebp, 0x64
sub ecx, eax
movzx ecx, cx
lea rax, [rdi - 4]
movzx ebp, word [r9 + rbp*2]
mov word [rsp + rdi + 0x16c], bp
movzx ecx, word [r9 + rcx*2]
mov word [rsp + rdi + 0x16e], cx
mov rdi, rax
cmp rsi, 0x5f5e0ff
mov rsi, rdx
ja 0x140040750
cmp rdx, 0x63
jbe 0x1400407d9
movzx ecx, dx
shr ecx, 2
imul ecx, ecx, 0x147b
shr ecx, 0x11
imul ebp, ecx, 0x64
sub edx, ebp
movzx edx, dx
movzx edx, word [r9 + rdx*2]
mov word [rsp + rax + 0x16e], dx
add rax, 0xfffffffffffffffe
mov rdx, rcx
cmp rdx, 0xa
jae 0x1400407ee
add dl, 0x30
mov byte [rsp + rax + 0x16f], dl
dec rax
jmp 0x1400407ff
movzx ecx, word [r9 + rdx*2]
mov word [rsp + rax + 0x16e], cx
add rax, 0xfffffffffffffffe
lea rcx, [rsp + rax]
add rcx, 0x170
mov edx, 0x27
sub rdx, rax
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xb0]
mov dl, 1
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14005a2e0
test al, al
jne 0x140042ab7
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 1
mov qword [rsp + 0x90], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x80]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov eax, 0x27
mov rdx, r12
cmp r12, 0x2710
movabs r8, 0x346dc5d63886594b
lea r9, str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
jb 0x140040938
mov edi, 0x27
mov rbp, r12
nop dword [rax]
mov rax, rbp
mul r8
shr rdx, 0xb
imul eax, edx, 0x2710
mov ecx, ebp
sub ecx, eax
movzx eax, cx
shr eax, 2
imul esi, eax, 0x147b
shr esi, 0x11
imul eax, esi, 0x64
sub ecx, eax
movzx ecx, cx
lea rax, [rdi - 4]
movzx esi, word [r9 + rsi*2]
mov word [rsp + rdi + 0x16c], si
movzx ecx, word [r9 + rcx*2]
mov word [rsp + rdi + 0x16e], cx
mov rdi, rax
cmp rbp, 0x5f5e0ff
mov rbp, rdx
ja 0x1400408e0
cmp rdx, 0x63
jbe 0x140040969
movzx ecx, dx
shr ecx, 2
imul ecx, ecx, 0x147b
shr ecx, 0x11
imul ebp, ecx, 0x64
sub edx, ebp
movzx edx, dx
movzx edx, word [r9 + rdx*2]
mov word [rsp + rax + 0x16e], dx
add rax, 0xfffffffffffffffe
mov rdx, rcx
cmp rdx, 0xa
jae 0x14004097e
add dl, 0x30
mov byte [rsp + rax + 0x16f], dl
dec rax
jmp 0x14004098f
movzx ecx, word [r9 + rdx*2]
mov word [rsp + rax + 0x16e], cx
add rax, 0xfffffffffffffffe
lea rcx, [rsp + rax]
add rcx, 0x170
mov edx, 0x27
sub rdx, rax
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xb0]
mov dl, 1
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14005a2e0
test al, al
jne 0x140042ab7
mov qword [r14], r13
mov rax, qword [rsp + 0x40]
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], r13
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [r14 + 0x18], xmm0
mov rax, qword [rsp + 0x60]
mov qword [r14 + 0x28], rax
movdqu xmm0, xmmword [rsp + 0x80]
movdqu xmmword [r14 + 0x30], xmm0
mov rax, qword [rsp + 0x90]
mov qword [r14 + 0x40], rax
mov rax, qword [0x140221370]
test rax, rax
jne 0x140040a2d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042ae2
mov qword [0x140221370], rax
mov r8d, 0x60
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042ae2
mov rdi, rax
mov byte [rax + 0x19], 3
mov qword [rax + 0x20], 0
mov qword [rax + 0x30], 0
mov qword [rax + 0x40], 0
mov qword [rax + 0x48], 8
mov qword [rax + 0x50], 0
mov byte [rax + 0x58], 0xa
mov byte [rax + 0x5b], 0
mov rsi, qword [r15 + 0x1f0]
mov rbp, qword [r15 + 0x1f8]
mov eax, ebp
shr al, 6
and al, 1
test sil, 0x40
movzx eax, al
mov ecx, 1
cmovne eax, ecx
mov byte [rdi + 0x5a], al
mov rcx, qword [r15 + 0x1f0]
mov rdx, qword [r15 + 0x1f8]
call fcn.14001a050
mov byte [rdi + 0x59], al
or rbp, rsi
mov eax, 6
bt rbp, 0x29
lea rcx, [0x1401791c7]
jae 0x140040afa
mov eax, 4
cmp qword [r15 + 0x270], 0
je 0x140040af8
test ebp, 0x8000000
mov ecx, 0
lea rdx, [0x14017836c]
cmove rcx, rdx
jmp 0x140040afa
xor ecx, ecx
mov qword [rdi + 0x30], rcx
mov qword [rdi + 0x38], rax
mov qword [rsp + 0x170], rdi
mov qword [rsp + 0x178], 3
mov qword [rsp + 0x180], r14
mov qword [rsp + 0x188], 3
mov byte [rsp + 0x190], 0xa
mov rax, qword [rsp + 0x168]
lea rcx, [rsp + 0x87]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x158]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rsp + 0x80]
movups xmm1, xmmword [rsp + 0x8f]
movaps xmmword [rsp + 0x220], xmm0
movups xmmword [rsp + 0x22f], xmm1
mov rax, qword [rsp + 0x2d8]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x2c8]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rsp + 0x80]
movdqu xmm1, xmmword [rsp + 0x8f]
movaps xmmword [rsp + 0x50], xmm0
movdqu xmmword [rsp + 0x5f], xmm1
mov byte [rsp + 0xb0], 1
mov byte [rsp + 0xb8], 2
movups xmm0, xmmword [rsp + 0x22f]
lea rax, [rsp + 0xb9]
movups xmmword [rax + 0xf], xmm0
movaps xmm0, xmmword [rsp + 0x220]
movups xmmword [rax], xmm0
mov byte [rsp + 0xd8], 6
mov byte [rsp + 0xe0], 4
mov qword [rsp + 0xe8], r12
mov byte [rsp + 0x100], 5
mov byte [rsp + 0x108], 4
mov qword [rsp + 0x110], rbx
jmp 0x140040e19
mov ebx, 1
mov rcx, rbx
mov rdx, rdi
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 1
mov qword [rsp + 0x180], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rsi, [rsp + 0x170]
mov qword [rsp + 0xb0], rsi
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rdi, qword [rsp + 0x38]
mov rcx, rdi
mov rdx, r14
call fcn.140018210
test al, al
jne 0x140042ab7
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], r15
mov rcx, r14
lea rdx, [rsp + 0x50]
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14001a8d0
mov qword [rsp + 0x20], r14
lea rcx, [rsp + 0x1f0]
mov rdx, r15
lea r8, [rsp + 0x80]
mov r9, rsi
call fcn.140038330
jmp 0x140040e62
xor ecx, ecx
mov qword [rdi + 0x30], rcx
mov qword [rdi + 0x38], rax
mov qword [rsp + 0x170], rdi
mov qword [rsp + 0x178], 3
mov qword [rsp + 0x180], r14
mov qword [rsp + 0x188], 3
mov byte [rsp + 0x190], 8
mov rax, qword [rsp + 0x168]
lea rcx, [rsp + 0x87]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x158]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rsp + 0x80]
movups xmm1, xmmword [rsp + 0x8f]
movaps xmmword [rsp + 0x220], xmm0
movups xmmword [rsp + 0x22f], xmm1
mov rax, qword [rsp + 0x2d8]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x2c8]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rsp + 0x80]
movdqu xmm1, xmmword [rsp + 0x8f]
movaps xmmword [rsp + 0x50], xmm0
movdqu xmmword [rsp + 0x5f], xmm1
mov byte [rsp + 0xb0], 1
mov byte [rsp + 0xb8], 2
movups xmm0, xmmword [rsp + 0x22f]
lea rax, [rsp + 0xb9]
movups xmmword [rax + 0xf], xmm0
movaps xmm0, xmmword [rsp + 0x220]
movups xmmword [rax], xmm0
mov byte [rsp + 0xd8], 7
mov byte [rsp + 0xe0], 4
mov qword [rsp + 0xe8], rsi
mov byte [rsp + 0x100], 5
mov byte [rsp + 0x108], 4
mov qword [rsp + 0x110], rbp
mov byte [rsp + 0x128], send
mov byte [rsp + 0x130], 2
movups xmm0, xmmword [rsp + 0x5f]
movups xmmword [rax + 0x87], xmm0
movdqa xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rax + 0x78], xmm0
lea rcx, [rsp + 0x1f0]
lea rdx, [rsp + 0x170]
lea r8, [rsp + 0xb0]
call fcn.140044e10
mov rdi, qword [rsp + 0x38]
movzx eax, byte [rsp + 0x210]
cmp al, 0x16
jne 0x14004297a
mov rax, qword [rsp + 0x48]
mov r14, qword [rax + 0x60]
mov rax, qword [rax + 0x68]
lea rax, [rax + rax*2]
lea rax, [r14 + rax*8]
mov qword [rsp + 0x288], rax
xor r13d, r13d
test r13, r13
je 0x140041040
cmp r13, rbx
je 0x140041040
mov rbp, r13
mov r13, qword [rsp + 0x78]
mov rsi, qword [rdi + 0x1d8]
test rsi, rsi
je 0x14004108a
mov qword [rsp + 0x150], rbx
mov rdx, qword [rbp + 8]
mov qword [rsp + 0x1e8], rbp
mov r8, qword [rbp + 0x10]
lea rcx, [rsp + 0x170]
call fcn.140148010
mov r9, qword [rdi + 0x1d0]
shl rsi, 6
mov qword [rsp + 0x2b0], rsi
lea rax, [r9 + rsi]
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0xa8], rcx
test rcx, rcx
mov rcx, qword [rsp + 0x180]
mov rsi, rcx
mov qword [rsp + 0x290], rax
cmove rsi, rax
mov rdx, qword [rsp + 0x188]
mov rax, rdi
mov qword [rsp + 0x2b8], rdx
mov rdi, rdx
mov qword [rsp + 0x280], rcx
cmove rdi, rcx
mov eax, dword [rax + 0x270]
mov dword [rsp + 0x250], eax
test eax, 0x10000
mov qword [rsp + 0x2a8], r9
jne 0x140041280
mov r15, r9
jmp 0x140040f8f
add r15, 0x40
cmp r15, qword [rsp + 0x40]
je 0x1400413f9
mov r12, qword [r15 + 0x28]
mov r13, qword [r15 + 0x30]
cmp qword [r15 + 0x18], rdi
jne 0x140040fb0
mov rcx, qword [r15 + 0x10]
mov rdx, rsi
mov r8, rdi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140040fe3
test r13, r13
je 0x140040f80
shl r13, 4
xor ebp, ebp
jmp 0x140040fc9
add rbp, 0x10
cmp r13, rbp
je 0x140040f80
cmp qword [r12 + rbp + 8], rdi
jne 0x140040fc0
mov rcx, qword [r12 + rbp]
mov rdx, rsi
mov r8, rdi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140040fc0
cmp qword [rsp + 0xa8], 0
mov rbx, qword [rsp + 0x150]
je 0x140041018
cmp qword [rsp + 0x290], 0
je 0x140041018
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, qword [rsp + 0x280]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r13, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x1e8]
mov eax, dword [rsp + 0x250]
test al, 4
jne 0x140041094
jmp 0x14004109f
mov rax, qword [rsp + 0x288]
mov r13, qword [rsp + 0x78]
nop dword [rax]
test r14, r14
je 0x140041e30
cmp r14, rax
je 0x140041e30
mov rbx, qword [r14 + 0x10]
add r14, 0x18
test rbx, rbx
je 0x140041050
mov rbp, qword [r14 - 0x10]
shl rbx, 5
add rbx, rbp
mov rsi, qword [rdi + 0x1d8]
test rsi, rsi
jne 0x140040ebc
mov eax, dword [rdi + 0x270]
test al, 4
je 0x14004109f
cmp qword [rbp + 0x10], 0
je 0x140041609
mov rsi, qword [rdi + 0x30]
test rsi, rsi
je 0x1400411c0
mov r13, qword [rdi + 0x38]
mov rdi, qword [r13 + 0x10]
cmp rdi, 9
mov eax, 8
cmovae rax, rdi
add rax, 0xf
and rax, 0xfffffffffffffff0
add rsi, rax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rax, qword [0x1402213f8]
shl rax, 1
test rax, rax
jne 0x140041391
mov dword [rsp + 0x40], 0
movzx eax, byte [rsi + 8]
test al, al
jne 0x140042aec
dec rdi
and rdi, 0xfffffffffffffff7
mov rdx, qword [rbp + 8]
mov r12, rbp
mov r8, qword [rbp + 0x10]
lea rcx, [rsp + 0x80]
call fcn.140148010
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r15, qword [rsp + 0x90]
mov qword [rsp + 0x150], rdx
mov r8, r15
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x140041157
mov r8, qword [rsp + 0x98]
mov rdx, r15
lea rcx, [rdi + rsi]
add rcx, 9
call qword [r13 + 0x20]
test rax, rax
jne 0x140041448
cmp byte [rsp + 0x40], 0
jne 0x140041187
mov rax, qword [0x1402213f8]
shl rax, 1
test rax, rax
jne 0x1400413cb
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [rsp + 0xa8], 0
mov rdi, qword [rsp + 0x38]
je 0x1400411bd
cmp qword [rsp + 0x150], 0
je 0x1400411bd
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbp, r12
lea r13, [rbp + 0x20]
mov r12, qword [rdi + 0x40]
test r12, r12
je 0x140040e92
mov rdi, qword [rdi + 0x48]
mov rsi, qword [rdi + 0x10]
cmp rsi, 9
mov eax, 8
cmovae rax, rsi
add rax, 0xf
and rax, 0xfffffffffffffff0
add r12, rax
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rax, qword [0x1402213f8]
shl rax, 1
test rax, rax
jne 0x1400413ad
mov dword [rsp + 0x40], 0
movzx eax, byte [r12 + 8]
test al, al
jne 0x140042b3f
dec rsi
and rsi, 0xfffffffffffffff7
lea rcx, [rsi + r12]
add rcx, 9
mov rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x10]
call qword [rdi + 0x20]
test rax, rax
jne 0x140041527
cmp byte [rsp + 0x40], 0
jne 0x140041262
mov rax, qword [0x1402213f8]
shl rax, 1
test rax, rax
jne 0x1400413e1
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, qword [rsp + 0x38]
jmp 0x140040e92
mov r15, rdi
neg r15
mov r12, rsi
mov r10, qword [r9 + 0x28]
mov r8, qword [r9 + 0x30]
cmp qword [r9 + 0x18], rdi
jne 0x1400412f9
mov r11, qword [r9 + 0x10]
mov rcx, 0xffffffffffffffff
nop word cs:[rax + rax]
lea rdx, [r15 + rcx]
cmp rdx, 0xffffffffffffffff
je 0x140040fe3
movzx edx, byte [r11 + rcx + 1]
movzx ebp, byte [rsi + rcx + 1]
lea eax, [rdx - 0x41]
cmp al, 0x1a
setb al
shl al, 5
lea esi, [rbp - 0x41]
cmp sil, 0x1a
mov rsi, r12
setb bl
shl bl, 5
or al, dl
or bl, bpl
inc rcx
cmp al, bl
je 0x1400412b0
cmp rcx, rdi
jae 0x140040fe3
test r8, r8
je 0x140041380
shl r8, 4
add r8, r10
jmp 0x140041319
add r10, 0x10
cmp r10, r8
je 0x140041380
cmp qword [r10 + 8], rdi
jne 0x140041310
mov r11, qword [r10]
mov rcx, 0xffffffffffffffff
nop dword [rax]
lea rax, [r15 + rcx]
cmp rax, 0xffffffffffffffff
je 0x140040fe3
movzx eax, byte [r11 + rcx + 1]
movzx ebp, byte [rsi + rcx + 1]
lea ebx, [rax - 0x41]
cmp bl, 0x1a
setb bl
shl bl, 5
lea esi, [rbp - 0x41]
cmp sil, 0x1a
mov rsi, r12
setb dl
shl dl, 5
or bl, al
or dl, bpl
inc rcx
cmp bl, dl
je 0x140041330
cmp rcx, rdi
jb 0x140041310
jmp 0x140040fe3
add r9, 0x40
cmp r9, qword [rsp + 0x40]
jne 0x140041289
jmp 0x1400413f9
call fcn.140174810
xor al, 1
mov dword [rsp + 0x40], eax
movzx eax, byte [rsi + 8]
test al, al
je 0x1400410fd
jmp 0x140042aec
call fcn.140174810
xor al, 1
mov dword [rsp + 0x40], eax
movzx eax, byte [r12 + 8]
test al, al
je 0x140041224
jmp 0x140042b3f
call fcn.140174810
test al, al
jne 0x140041187
mov byte [rsi + 8], 1
jmp 0x140041187
call fcn.140174810
test al, al
jne 0x140041262
mov byte [r12 + 8], 1
jmp 0x140041262
mov r13, qword [rsp + 0x78]
mov r14, qword [r13]
cmp qword [rsp + 0xa8], 0
je 0x14004172f
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x58], rax
mov rsi, qword [rsp + 0x2b0]
mov rax, qword [rsp + 0x2a8]
mov rbx, qword [rsp + 0x2b8]
jmp 0x14004199c
mov rdi, rax
mov rbp, rdx
mov qword [rsp + 0x220], 0
mov qword [rsp + 0x228], 1
mov qword [rsp + 0x230], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x220]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rcx, qword [rsp + 0x38]
lea rbx, [rsp + 0xb0]
mov rdx, rbx
call fcn.140018210
test al, al
mov r13, qword [rsp + 0x78]
jne 0x140042ab7
mov rdx, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
mov rcx, rbx
call fcn.140148010
cmp qword [rsp + 0xb0], 0
je 0x1400418d5
lea rcx, [rsp + 0xb9]
mov rax, qword [rcx + 0xf]
mov qword [rsp + 0x60], rax
movdqu xmm0, xmmword [rcx - 1]
movdqa xmmword [rsp + 0x50], xmm0
jmp 0x140041bae
mov rdi, rax
mov r15, rdx
mov rbx, rbp
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 1
mov qword [rsp + 0x60], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x50]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rcx, qword [rsp + 0x38]
lea rsi, [rsp + 0xb0]
mov rdx, rsi
call fcn.140018210
test al, al
jne 0x140042ab7
mov rdx, qword [rbx + 8]
mov r8, qword [rbx + 0x10]
mov rcx, rsi
call fcn.140148010
cmp qword [rsp + 0xb0], 0
lea r8, [rsp + 0x80]
mov r13, qword [rsp + 0x78]
je 0x140041912
lea rcx, [rsp + 0xb9]
mov rax, qword [rcx + 0xf]
mov qword [rsp + 0x90], rax
movdqu xmm0, xmmword [rcx - 1]
movdqa xmmword [rsp + 0x80], xmm0
jmp 0x140041d1f
mov r14, qword [r13]
lea rcx, [rsp + 0x80]
mov rdx, rdi
call fcn.140045480
mov rcx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x90]
shl rax, 6
lea rbx, [rcx + rax]
nop word cs:[rax + rax]
test rax, rax
je 0x14004178f
lea rbp, [rcx + 0x40]
add rax, 0xffffffffffffffc0
cmp byte [rcx + 0x38], 0
mov rcx, rbp
jne 0x140041640
mov rdi, qword [rbp - 0x30]
mov rsi, qword [rbp - 0x28]
mov rax, qword [0x140221370]
test rax, rax
jne 0x140041684
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042bc4
mov qword [0x140221370], rax
mov r8d, 0x40
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042bc4
mov qword [rax], rdi
mov qword [rax + 8], rsi
mov qword [rsp + 0xb0], 4
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], 1
mov edi, 1
mov rcx, rbp
nop dword [rax]
cmp rcx, rbx
je 0x14004179a
lea rbp, [rcx + 0x40]
cmp byte [rcx + 0x38], 0
mov rcx, rbp
jne 0x1400416d0
mov rsi, qword [rbp - 0x30]
mov r15, qword [rbp - 0x28]
cmp qword [rsp + 0xb0], rdi
je 0x140041715
mov rcx, rdi
shl rcx, 4
mov qword [rax + rcx], rsi
mov qword [rax + rcx + 8], r15
inc rdi
mov qword [rsp + 0xc0], rdi
jmp 0x1400416ca
lea rcx, [rsp + 0xb0]
mov rdx, rdi
call fcn.140021d20
mov rax, qword [rsp + 0xb8]
jmp 0x1400416f8
mov rbx, qword [rsp + 0x280]
test rbx, rbx
mov rsi, qword [rsp + 0x2b0]
je 0x140041972
js 0x140042bae
mov rax, qword [0x140221370]
test rax, rax
jne 0x140041770
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042c6a
mov qword [0x140221370], rax
mov rcx, rax
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rax, rax
jne 0x140041977
jmp 0x140042c6a
mov ebx, 8
xor ebp, ebp
xor edi, edi
jmp 0x1400417aa
mov rbp, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xb8]
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 1
mov qword [rsp + 0x180], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rsi, [rsp + 0x170]
mov qword [rsp + 0xb0], rsi
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rcx, qword [rsp + 0x38]
lea rdx, [rsp + 0xb0]
call fcn.140018210
test al, al
jne 0x140042ab7
mov qword [rsp + 0x20], rsi
lea rcx, [rsp + 0x1f0]
mov rdx, r14
mov r8, rbx
mov r9, rdi
call fcn.140022690
test rbp, rbp
mov rbp, qword [sym.imp.KERNEL32.dll_HeapFree]
je 0x14004186e
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, rbx
call rbp
mov rsi, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x90]
test rdi, rdi
je 0x1400418b3
shl rdi, 6
xor ebx, ebx
jmp 0x140041899
add rbx, 0x40
cmp rdi, rbx
je 0x1400418b3
cmp qword [rsi + rbx + 0x20], 0
je 0x140041890
mov r8, qword [rsi + rbx + 0x28]
mov rcx, qword [0x140221370]
xor edx, edx
call rbp
jmp 0x140041890
cmp qword [rsp + 0x80], 0
je 0x140041e17
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, rsi
call rbp
jmp 0x140041e17
mov r12, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xc0]
test r14, r14
je 0x140041b8c
js 0x140042bae
mov edx, 1
mov rcx, r14
call fcn.1400137e0
mov rbx, rax
test rax, rax
jne 0x140041b91
jmp 0x140042c79
mov rsi, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xc0]
test r14, r14
je 0x140041cec
js 0x140042bae
mov rax, qword [0x140221370]
test rax, rax
jne 0x140041953
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042c79
mov qword [0x140221370], rax
mov rcx, rax
xor edx, edx
mov r8, r14
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x140041cf1
jmp 0x140042c79
mov edi, 1
mov rcx, rdi
mov rdx, qword [rsp + 0x290]
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rdi
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x60], rbx
nop word cs:[rax + rax]
test rsi, rsi
je 0x140041a9d
lea rbx, [rax + 0x40]
add rsi, 0xffffffffffffffc0
cmp byte [rax + 0x38], 0
mov rax, rbx
jne 0x1400419b0
mov rdi, qword [rbx - 0x30]
mov rbp, qword [rbx - 0x28]
mov rax, qword [0x140221370]
test rax, rax
jne 0x1400419f4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042bc4
mov qword [0x140221370], rax
mov r8d, 0x40
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042bc4
mov qword [rax], rdi
mov qword [rax + 8], rbp
mov qword [rsp + 0xb0], 4
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], 1
mov edi, 1
mov rcx, rbx
nop dword [rax]
cmp rcx, qword [rsp + 0x40]
je 0x140041aa8
lea rbx, [rcx + 0x40]
cmp byte [rcx + 0x38], 0
mov rcx, rbx
jne 0x140041a40
mov rbp, qword [rbx - 0x30]
mov rsi, qword [rbx - 0x28]
cmp qword [rsp + 0xb0], rdi
je 0x140041a83
mov rcx, rdi
shl rcx, 4
mov qword [rax + rcx], rbp
mov qword [rax + rcx + 8], rsi
inc rdi
mov qword [rsp + 0xc0], rdi
jmp 0x140041a3a
lea rcx, [rsp + 0xb0]
mov rdx, rdi
call fcn.140021d20
mov rax, qword [rsp + 0xb8]
jmp 0x140041a66
mov ebx, 8
xor ebp, ebp
xor edi, edi
jmp 0x140041ab8
mov rbp, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xb8]
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 1
mov qword [rsp + 0x90], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rsi, [rsp + 0x80]
mov qword [rsp + 0xb0], rsi
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rcx, qword [rsp + 0x38]
lea rdx, [rsp + 0xb0]
call fcn.140018210
test al, al
jne 0x140042ab7
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rdi
lea rcx, [rsp + 0x1f0]
mov rdx, r14
lea r8, [rsp + 0x50]
mov r9, rbx
call fcn.140018bb0
test rbp, rbp
mov rax, qword [sym.imp.KERNEL32.dll_HeapFree]
je 0x140041e17
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, rbx
call rax
jmp 0x140041e17
mov ebx, 1
mov rcx, rbx
mov rdx, r12
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x20], rbp
lea rcx, [rsp + 0x170]
lea rdx, [rsp + 0x220]
lea r8, [rsp + 0x50]
mov r9, rdi
call fcn.140028b60
mov rbp, qword [r13]
mov r14, qword [rbp + 0x1f0]
mov rbx, qword [rbp + 0x1f8]
mov eax, ebx
shr al, 6
and al, 1
test r14b, 0x40
movzx eax, al
mov ecx, 1
cmovne eax, ecx
mov rdi, qword [rsp + 0x170]
mov byte [rdi + 0x5a], al
mov rcx, qword [rbp + 0x1f0]
mov rdx, qword [rbp + 0x1f8]
call fcn.14001a050
mov byte [rdi + 0x59], al
or rbx, r14
mov eax, 6
bt rbx, 0x29
lea rcx, [0x1401791c7]
mov r14, qword [sym.imp.KERNEL32.dll_HeapFree]
jae 0x140041c5f
mov eax, 4
cmp qword [rbp + 0x270], 0
je 0x140041c5d
test ebx, 0x8000000
mov ecx, 0
lea rdx, [0x14017836c]
cmove rcx, rdx
jmp 0x140041c5f
xor ecx, ecx
mov qword [rdi + 0x30], rcx
mov qword [rdi + 0x38], rax
lea rax, [rsp + 0x178]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
lea rax, [rsp + 0x1f8]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov qword [rsp + 0x1f0], rdi
cmp byte [rsp + 0x40], 0
jne 0x140041cac
mov rax, qword [0x1402213f8]
shl rax, 1
test rax, rax
jne 0x14004282c
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [rsp + 0xa8], 0
mov rdi, qword [rsp + 0x38]
je 0x140041e1c
cmp qword [rsp + 0x150], 0
je 0x140041e1c
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, r15
call r14
jmp 0x140041e1c
mov ebx, 1
mov rcx, rbx
mov rdx, rsi
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x90], r14
lea r8, [rsp + 0x80]
mov qword [rsp + 0x20], r15
lea rcx, [rsp + 0x170]
lea rdx, [rsp + 0x50]
mov r9, rdi
call fcn.140028b60
mov rbx, qword [r13]
mov rbp, qword [rbx + 0x1f0]
mov rsi, qword [rbx + 0x1f8]
mov eax, esi
shr al, 6
and al, 1
test bpl, 0x40
movzx eax, al
mov ecx, 1
cmovne eax, ecx
mov rdi, qword [rsp + 0x170]
mov byte [rdi + 0x5a], al
mov rcx, qword [rbx + 0x1f0]
mov rdx, qword [rbx + 0x1f8]
call fcn.14001a050
mov byte [rdi + 0x59], al
or rsi, rbp
mov eax, 6
bt rsi, 0x29
lea rcx, [0x1401791c7]
jae 0x140041dc1
mov eax, 4
cmp qword [rbx + 0x270], 0
je 0x140041dbf
test esi, 0x8000000
mov ecx, 0
lea rdx, [0x14017836c]
cmove rcx, rdx
jmp 0x140041dc1
xor ecx, ecx
mov qword [rdi + 0x30], rcx
mov qword [rdi + 0x38], rax
lea rax, [rsp + 0x178]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
lea rax, [rsp + 0x1f8]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov qword [rsp + 0x1f0], rdi
cmp byte [rsp + 0x40], 0
jne 0x140041e0e
mov rax, qword [0x1402213f8]
shl rax, 1
test rax, rax
jne 0x140042842
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, qword [rsp + 0x38]
movzx eax, byte [rsp + 0x210]
cmp al, 0x16
jne 0x14004297a
nop dword [rax]
mov rax, qword [rsp + 0x48]
mov r15, qword [rax + 0x20]
cmp r15, 2
jb 0x140041e70
test byte [rdi + 0x270], 2
jne 0x140041e70
cmp qword [rdi + 0x20], 0
jne 0x140042001
cmp dword [rdi + 0x274], 0x110000
jne 0x140042001
nop word cs:[rax + rax]
cmp dword [rdi + 0x90], 1
mov rsi, qword [rsp + 0x248]
lea r14, [rsp + 0xb0]
jne 0x14003f910
mov rax, qword [rdi + 0x98]
cmp rax, r15
jae 0x14003f910
mov qword [rsp + 0x38], rax
mov r13, qword [r13]
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x160], 1
mov qword [rsp + 0x168], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x158]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rcx, rdi
mov rdx, r14
call fcn.140018210
test al, al
jne 0x140042ab7
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x2a0], r13
lea rcx, [rsp + 0x2c8]
lea rdx, [rsp + 0x298]
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14001a8d0
mov rax, qword [0x140221370]
test rax, rax
jne 0x140041f87
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042ba4
mov qword [0x140221370], rax
mov r8d, 0x48
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042ba4
mov r14, rax
mov rdi, qword [rsp + 0x160]
mov r12, qword [rsp + 0x168]
test r12, r12
je 0x140042168
js 0x140042bae
mov rax, qword [0x140221370]
test rax, rax
jne 0x140041fe5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042c16
mov qword [0x140221370], rax
mov rcx, rax
xor edx, edx
mov r8, r12
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x14004216d
jmp 0x140042c16
mov r15, qword [r13]
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x160], 1
mov qword [rsp + 0x168], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x158]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov rcx, rdi
lea rdx, [rsp + 0xb0]
call fcn.140018210
test al, al
jne 0x140042ab7
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x2a0], r15
lea rcx, [rsp + 0x2c8]
lea rdx, [rsp + 0x298]
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14001a8d0
mov rax, qword [0x140221370]
test rax, rax
jne 0x1400420eb
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042c25
mov qword [0x140221370], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042c25
mov r12, rax
mov r14, qword [rsp + 0x160]
mov rdi, qword [rsp + 0x168]
test rdi, rdi
je 0x1400425d1
js 0x140042bae
mov rax, qword [0x140221370]
test rax, rax
jne 0x140042149
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x140042c2c
mov qword [0x140221370], rax
mov rcx, rax
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbp, rax
test rax, rax
jne 0x1400425d6
jmp 0x140042c2c
mov eax, 1
mov qword [rsp + 0x48], rax
mov rcx, rax
mov rdx, rdi
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 1
mov qword [rsp + 0x60], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x50]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov eax, 0x27
mov rdx, r15
cmp r15, 0x2710
movabs r8, 0x346dc5d63886594b
lea rsi, str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
jb 0x140042276
mov edi, 0x27
mov rbx, r15
nop word cs:[rax + rax]
mov rax, rbx
mul r8
shr rdx, 0xb
imul eax, edx, 0x2710
mov ecx, ebx
sub ecx, eax
movzx eax, cx
shr eax, 2
imul ebp, eax, 0x147b
shr ebp, 0x11
imul eax, ebp, 0x64
sub ecx, eax
movzx ecx, cx
lea rax, [rdi - 4]
movzx ebp, word [rsi + rbp*2]
mov word [rsp + rdi + 0x16c], bp
movzx ecx, word [rsi + rcx*2]
mov word [rsp + rdi + 0x16e], cx
mov rdi, rax
cmp rbx, 0x5f5e0ff
mov rbx, rdx
ja 0x140042220
cmp rdx, 0x63
jbe 0x1400422a6
movzx ecx, dx
shr ecx, 2
imul ecx, ecx, 0x147b
shr ecx, 0x11
imul ebp, ecx, 0x64
sub edx, ebp
movzx edx, dx
movzx edx, word [rsi + rdx*2]
mov word [rsp + rax + 0x16e], dx
add rax, 0xfffffffffffffffe
mov rdx, rcx
cmp rdx, 0xa
jae 0x1400422bb
add dl, 0x30
mov byte [rsp + rax + 0x16f], dl
dec rax
jmp 0x1400422cb
movzx ecx, word [rsi + rdx*2]
mov word [rsp + rax + 0x16e], cx
add rax, 0xfffffffffffffffe
lea rcx, [rsp + rax]
add rcx, 0x170
mov edx, 0x27
sub rdx, rax
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xb0]
mov dl, 1
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14005a2e0
test al, al
jne 0x140042ab7
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 1
mov qword [rsp + 0x90], 0
movabs rax, 0x2000000000
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe8], 3
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x80]
mov qword [rsp + 0xb0], rax
lea rax, fcn.1400a0830
mov qword [rsp + 0xb8], rax
mov eax, 0x27
mov rbp, qword [rsp + 0x38]
mov rdx, rbp
cmp rbp, 0x2710
movabs r8, 0x346dc5d63886594b
lea rsi, str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
jb 0x140042406
mov edi, 0x27
nop word [rax + rax]
mov rax, rbp
mul r8
shr rdx, 0xb
imul eax, edx, 0x2710
mov ecx, ebp
sub ecx, eax
movzx eax, cx
shr eax, 2
imul ebx, eax, 0x147b
shr ebx, 0x11
imul eax, ebx, 0x64
sub ecx, eax
movzx ecx, cx
lea rax, [rdi - 4]
movzx ebx, word [rsi + rbx*2]
mov word [rsp + rdi + 0x16c], bx
movzx ecx, word [rsi + rcx*2]
mov word [rsp + rdi + 0x16e], cx
mov rdi, rax
cmp rbp, 0x5f5e0ff
mov rbp, rdx
ja 0x1400423b0
cmp rdx, 0x63
jbe 0x140042436
movzx ecx, dx
shr ecx, 2
imul ecx, ecx, 0x147b
shr ecx, 0x11
imul ebp, ecx, 0x64
sub edx, ebp
movzx edx, dx
movzx edx, word [rsi + rdx*2]
mov word [rsp + rax + 0x16e], dx
add rax, 0xfffffffffffffffe
mov rdx, rcx
cmp rdx, 0xa
jae 0x14004244b
add dl, 0x30
mov byte [rsp + rax + 0x16f], dl
dec rax
jmp 0x14004245b
movzx ecx, word [rsi + rdx*2]
mov word [rsp + rax + 0x16e], cx
add rax, 0xfffffffffffffffe
lea rcx, [rsp + rax]
add rcx, 0x170
mov edx, 0x27
sub rdx, rax
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xb0]
mov dl, 1
lea r8, method..virtual_32
xor r9d, r9d
call fcn.14005a2e0
test al, al
jne 0x140042ab7
mov qword [r14], r12
mov rax, qword [rsp + 0x48]
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], r12
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [r14 + 0x18], xmm0
mov rax, qword [rsp + 0x60]
mov qword [r14 + 0x28], rax
movdqu xmm0, xmmword [rsp + 0x80]
movdqu xmmword [r14 + 0x30], xmm0
mov rax, qword [rsp + 0x90]
mov qword [r14 + 0x40], rax
mov rax, qword [0x140221370]
test rax, rax
je 0x1400424ed
mov rsi, qword [rsp + 0x248]
jmp 0x14004250b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
mov rsi, qword [rsp + 0x248]
je 0x140042ae2
mov qword [0x140221370], rax
mov r8d, 0x60
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042ae2
mov rdi, rax
mov byte [rax + 0x19], 3
mov qword [rax + 0x20], 0
mov qword [rax + 0x30], 0
mov qword [rax + 0x40], 0
mov qword [rax + 0x48], 8
mov qword [rax + 0x50], 0
mov byte [rax + 0x58], 9
mov byte [rax + 0x5b], 0
mov rbx, qword [r13 + 0x1f0]
mov rbp, qword [r13 + 0x1f8]
mov eax, ebp
shr al, 6
and al, 1
test bl, 0x40
movzx eax, al
mov ecx, 1
cmovne eax, ecx
mov byte [rdi + 0x5a], al
mov rcx, qword [r13 + 0x1f0]
mov rdx, qword [r13 + 0x1f8]
call fcn.14001a050
mov byte [rdi + 0x59], al
or rbp, rbx
mov eax, 6
bt rbp, 0x29
lea rcx, [0x1401791c7]
mov rbx, qword [rsp + 0x38]
jae 0x14003f79f
mov eax, 4
cmp qword [r13 + 0x270], 0
jne 0x14003f789
xor ecx, ecx
jmp 0x14003f79f
mov ebp, 1
mov rcx, rbp
mov rdx, r14
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov qword [r12], rdi
mov qword [r12 + 8], rbp
mov qword [r12 + 0x10], rdi
mov rax, qword [0x140221370]
test rax, rax
je 0x140042610
mov rsi, qword [rsp + 0x248]
lea r14, [rsp + 0xb0]
jmp 0x140042636
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
mov rsi, qword [rsp + 0x248]
lea r14, [rsp + 0xb0]
je 0x140042ae2
mov qword [0x140221370], rax
mov r8d, 0x60
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140042ae2
mov rdi, rax
mov byte [rax + 0x19], 3
mov qword [rax + 0x20], 0
mov qword [rax + 0x30], 0
mov qword [rax + 0x40], 0
mov qword [rax + 0x48], 8
mov qword [rax + 0x50], 0
mov byte [rax + 0x58], recv
mov byte [rax + 0x5b], 0
mov rbx, qword [r15 + 0x1f0]
mov rbp, qword [r15 + 0x1f8]
mov eax, ebp
shr al, 6
and al, 1
test bl, 0x40
movzx eax, al
mov ecx, 1
cmovne eax, ecx
mov byte [rdi + 0x5a], al
mov rcx, qword [r15 + 0x1f0]
mov rdx, qword [r15 + 0x1f8]
call fcn.14001a050
mov byte [rdi + 0x59], al
or rbp, rbx
mov eax, 6
bt rbp, 0x29
lea rcx, [0x1401791c7]
jae 0x140042702
mov eax, 4
cmp qword [r15 + 0x270], 0
je 0x140042700
test ebp, 0x8000000
mov ecx, 0
lea rdx, [0x14017836c]
cmove rcx, rdx
jmp 0x140042702
xor ecx, ecx
mov qword [rdi + 0x30], rcx
mov qword [rdi + 0x38], rax
mov qword [rsp + 0x170], rdi
mov qword [rsp + 0x178], 1
mov qword [rsp + 0x180], r12
mov qword [rsp + 0x188], 1
mov byte [rsp + 0x190], send
mov rax, qword [rsp + 0x168]
lea rcx, [rsp + 0x87]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x158]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rsp + 0x80]
movups xmm1, xmmword [rsp + 0x8f]
movaps xmmword [rsp + 0x220], xmm0
movups xmmword [rsp + 0x22f], xmm1
mov rax, qword [rsp + 0x2d8]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x2c8]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rsp + 0x80]
movdqu xmm1, xmmword [rsp + 0x8f]
movaps xmmword [rsp + 0x50], xmm0
movdqu xmmword [rsp + 0x5f], xmm1
mov byte [rsp + 0xb0], 1
mov byte [rsp + 0xb8], 2
movups xmm0, xmmword [rsp + 0x22f]
lea rax, [rsp + 0xb9]
movups xmmword [rax + 0xf], xmm0
movaps xmm0, xmmword [rsp + 0x220]
movups xmmword [rax], xmm0
mov byte [rsp + 0xd8], send
mov byte [rsp + 0xe0], 2
movups xmm0, xmmword [rsp + 0x5f]
movups xmmword [rax + 0x37], xmm0
movdqa xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rax + 0x28], xmm0
lea rcx, [rsp + 0x1f0]
lea rdx, [rsp + 0x170]
mov r8, r14
call fcn.140028f80
movzx eax, byte [rsp + 0x210]
cmp al, 0x16
je 0x14003f910
jmp 0x14004297a
call fcn.140174810
test al, al
jne 0x140041cac
mov byte [rsi + 8], 1
jmp 0x140041cac
call fcn.140174810
test al, al
jne 0x140041e0e
mov byte [r12 + 8], 1
jmp 0x140041e0e
mov rax, qword [rsp + 0x1e0]
mov byte [rax + 0x20], reloc.WS2_32.dll_shutdown
mov r15, qword [rsp + 0x320]
test r15, r15
je 0x140042956
mov rbx, qword [rsp + 0x330]
test rbx, rbx
je 0x140042924
mov r14, qword [rsp + 0x338]
movdqa xmm0, xmmword [r14]
pmovmskb eax, xmm0
not eax
lea rbp, [r14 + 0x10]
mov r12, qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, r14
jmp 0x1400428b7
mov eax, esi
test rbx, rbx
je 0x14004292c
test ax, ax
je 0x1400428d0
lea esi, [rax - 1]
and esi, eax
jmp 0x1400428f7
movdqa xmm0, xmmword [rbp]
pmovmskb eax, xmm0
add rdi, 0xfffffffffffffe00
add rbp, 0x10
cmp ax, 0xffff
je 0x1400428d0
mov ecx, 0xfffffffe
sub ecx, eax
not eax
mov esi, eax
and esi, ecx
bsf ax, ax
movzx ecx, ax
shl rcx, 5
mov rax, rdi
sub rax, rcx
dec rbx
cmp qword [rax - 0x18], 0
je 0x1400428b0
mov r8, qword [rax - 0x10]
mov rcx, qword [0x140221370]
xor edx, edx
call r12
jmp 0x1400428b0
mov r14, qword [rsp + 0x338]
lea rax, [r15 + 1]
mov ecx, 0x20
mul rcx
add r15, rax
cmp r15, 0xffffffffffffffef
je 0x140042956
sub r14, rax
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, r14
call qword [sym.imp.KERNEL32.dll_HeapFree]
movaps xmm6, xmmword [rsp + 0x3a0]
movaps xmm7, xmmword [rsp + 0x3b0]
add rsp, 0x3c8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movups xmm0, xmmword [rsp + 0x1f0]
movups xmm1, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x270], xmm1
movaps xmmword [rsp + 0x260], xmm0
mov ecx, dword [rsp + 0x211]
mov dword [rsp + 0x258], ecx
mov ecx, dword [rsp + 0x214]
mov dword [rsp + 0x25b], ecx
movaps xmm0, xmmword [rsp + 0x260]
movaps xmm1, xmmword [rsp + 0x270]
mov rbp, qword [rsp + 0x1e0]
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
mov ecx, dword [rsp + 0x258]
mov edx, dword [rsp + 0x25b]
jmp 0x140042a14
movaps xmm0, xmmword [rsp + 0x170]
movaps xmm1, xmmword [rsp + 0x180]
mov rbp, qword [rsp + 0x1e0]
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
mov ecx, dword [rsp + 0x191]
mov edx, dword [rsp + 0x194]
mov dword [rbp + 0x21], ecx
mov dword [rbp + 0x24], edx
mov byte [rbp + 0x20], al
mov r15, qword [rsp + 0x320]
test r15, r15
jne 0x14003f670
jmp 0x140042956
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823indexmap_1.9.3_srcmapcore.rs
mov rdx, rdi
call fcn.14016f330
ud2
mov rbx, qword [r12 + 0x108]
mov rax, qword [r12 + 0x110]
jmp 0x14003f17f
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zeroMismatch_between_definition_and_access_of___.
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823clap_3.2.25_srcparser_validator.rs
jmp 0x140042a77
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zeroMismatch_between_definition_and_access_of___.
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823clap_3.2.25_srcparser_validator.rs
mov edx, 0x39
call fcn.14016f3d0
ud2
lea rcx, str.Fatal_internal_error._Please_consider_filing_a_bug_report_at_https:__github.com_clap_rs_clap_issues
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823clap_3.2.25_srcparser_validator.rs
mov edx, 0x63
call fcn.14016f690
ud2
lea rcx, str.Fatal_internal_error._Please_consider_filing_a_bug_report_at_https:__github.com_clap_rs_clap_issues
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823clap_3.2.25_srcparser_validator.rs
mov edx, 0x63
call fcn.14016f690
ud2
lea rax, [0x140214ee8]
mov qword [rsp + 0x20], rax
lea rcx, str.a_Display_implementation_returned_an_error_unexpectedly_rustc_84c898d65adf2f39a5a98507f1fe0ce10a2b8dbclibrary_alloc_src_string.rs
lea r9, method..virtual_32
lea r8, [rsp + 0x30]
mov edx, 0x37
call fcn.14016f5f0
ud2
mov ecx, 0x60
jmp 0x140042c4f
mov qword [rsp + 0xb0], rsi
mov qword [rsp + 0xb8], r13
mov eax, dword [rsp + 0x40]
mov byte [rsp + 0xc0], al
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x173]
mov dword [rsp + 0xc1], eax
mov dword [rsp + 0xc4], ecx
lea rax, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823clap_3.2.25_srcparser_validator.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x140178010]
jmp 0x140042b90
mov qword [rsp + 0xb0], r12
mov qword [rsp + 0xb8], rdi
mov eax, dword [rsp + 0x40]
mov byte [rsp + 0xc0], al
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x173]
mov dword [rsp + 0xc1], eax
mov dword [rsp + 0xc4], ecx
lea rax, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823clap_3.2.25_srcparser_validator.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x140178030]
lea r8, [rsp + 0xb0]
mov edx, 0x2b
call fcn.14016f5f0
ud2
mov ecx, 0x48
jmp 0x140042c4f
call fcn.140013880
ud2
mov edx, 1
mov rcx, r13
call fcn.14016c090
ud2
mov ecx, 0x40
jmp 0x140042c4f
mov ecx, 0x20
jmp 0x140042c4f
mov rcx, rsi
mov rdx, rbp
call fcn.14016c090
ud2
lea rcx, str.Fatal_internal_error._Please_consider_filing_a_bug_report_at_https:__github.com_clap_rs_clap_issues
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823clap_3.2.25_srcparser_validator.rs
mov edx, 0x63
call fcn.14016f690
ud2
lea rcx, str.unexpected_invalid_UTF_8_code_point
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823clap_3.2.25_srcparser_validator.rs
mov edx, 0x23
call fcn.14016f690
ud2
mov edx, 1
mov rcx, r12
call fcn.14016c090
ud2
mov ecx, 0x18
jmp 0x140042c4f
mov edx, 1
mov rcx, rdi
call fcn.14016c090
ud2
mov edx, 1
mov rcx, rsi
call fcn.14016c090
ud2
mov ecx, 8
mov edx, 8
call fcn.14016c090
ud2
mov edx, 1
mov rcx, r15
call fcn.14016c090
ud2
mov edx, 1
mov rcx, rbx
call fcn.14016c090
ud2
mov edx, 1
mov rcx, r14
call fcn.14016c090
ud2