Function at 0x1401aedbc
Capabilities:
Load assembly via iassembly

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x5558
call fcn.1402718a0
sub rsp, rax
movdqa xmmword [rsp + 0x5540], xmm8
movdqa xmmword [rsp + 0x5530], xmm7
movdqa xmmword [rsp + 0x5520], xmm6
mov qword [rsp + 0xe8], r8
mov qword [rsp + 0xa0], rcx
mov rax, qword [rdx]
xor ecx, ecx
cmp rax, 5
sete cl
lea r14, [rdx + rcx*8]
cmp eax, 5
jne 0x1401aee53
mov al, byte [r14 + 0x68]
mov byte [r14 + 0x68], 3
cmp al, 3
je 0x1401b055c
mov ecx, 0xd
mov rdx, qword [rsp + 0xa0]
mov rdi, rdx
mov rsi, r14
rep movsq qword [rdi], qword [rsi]
mov byte [rdx + 0x68], al
mov eax, dword [r14 + 0x69]
mov ecx, dword [r14 + 0x6c]
mov dword [rdx + 0x69], eax
mov dword [rdx + 0x6c], ecx
jmp 0x1401b0443
mov rax, qword [r14]
lea rcx, [r14 + 8]
mov qword [rsp + 0xd0], rcx
lea rcx, [r14 + 0x71]
mov qword [rsp + 0xd8], rcx
lea rdx, [rsp + 0x278]
lea rcx, [rdx + 0x80]
mov qword [rsp + 0xf0], rcx
mov r8d, 0xc8
lea rcx, [rdx + r8]
mov qword [rsp + 0xb0], rcx
lea rbx, [rsp + 0x7f0]
add r8, rbx
mov qword [rsp + 0x1a0], r8
mov ecx, 0x88
add rdx, rcx
mov qword [rsp + 0x198], rdx
add rcx, rbx
mov qword [rsp + 0x190], rcx
pcmpeqd xmm6, xmm6
lea r12, [rsp + 0x52]
lea rbp, [0x1402f072c]
lea r13, [rsp + 0x6d8]
mov qword [rsp + 0xe0], r14
lea rcx, [rax - 3]
add rax, 0xfffffffffffffffe
cmp rcx, 2
mov ecx, 0
cmovae rax, rcx
xor ecx, ecx
cmp rax, 1
sete cl
lea rcx, [r14 + rcx*8]
test rax, rax
mov qword [rsp + 0x38], rcx
jne 0x1401b027b
cmp dword [rcx], 2
je 0x1401b04c8
lea rax, [rcx + 0x120]
mov qword [rsp + 0x80], rax
mov rax, qword [rax]
cmp rax, 4
je 0x1401b04c8
add rcx, 0x1a1
mov qword [rsp + 0x1a8], rcx
lea rcx, [rax - 1]
cmp rax, 2
mov eax, 0
cmovae rax, rcx
test rax, rax
jne 0x1401afb45
mov rsi, qword [rsp + 0x38]
mov al, byte [rsi + 0x1a0]
mov byte [rsi + 0x1a0], 3
cmp al, 3
je 0x1401b0470
mov byte [rsp + 0x550], al
mov r8d, 0x57
lea rcx, [rsp + 0x551]
mov rdx, qword [rsp + 0x1a8]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsi + 0x158]
mov qword [rsp + 0xf8], rax
mov eax, dword [rsi + 0x160]
mov dword [rsp + 0x90], eax
mov rcx, qword [rsi + 0x190]
mov rax, qword [rcx + 0x20]
test rax, rax
je 0x1401af963
mov rbx, qword [rcx + 0x18]
mov rcx, rax
shl rcx, 7
lea rax, [rcx + rax*8]
add rax, rbx
mov qword [rsp + 0x1b0], rax
movabs rax, 0x8000000000000000
cmp qword [rbx + 0x58], rax
jne 0x1401af000
xor eax, eax
jmp 0x1401af717
lea rcx, [rsp + 0x550]
call fcn.1401d8b4b
mov rsi, rax
mov rdi, rdx
test rdx, rdx
je 0x1401af0eb
mov r9b, byte [rsi]
cmp r9b, 0x5b
jne 0x1401af1ad
add rdi, rsi
xor eax, eax
mov r8, rsi
test r9b, r9b
js 0x1401af040
lea rcx, [r8 + 1]
movzx r9d, r9b
jmp 0x1401af0b5
mov ecx, r9d
and cl, 0x1f
movzx edx, cl
movzx r11d, byte [r8 + 1]
and r11d, 0x3f
cmp r9b, 0xdf
jbe 0x1401af099
movzx r10d, byte [r8 + 2]
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
cmp r9b, 0xf0
jb 0x1401af0a8
lea rcx, [r8 + 4]
movzx r9d, byte [r8 + 3]
and edx, 7
shl edx, 0x12
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
or r9d, edx
cmp r9d, 0x110000
jne 0x1401af0b5
jmp 0x1401af957
lea rcx, [r8 + 2]
shl edx, 6
or edx, r11d
mov r9d, edx
jmp 0x1401af0b5
lea rcx, [r8 + 3]
shl edx, 0xc
or r10d, edx
mov r9d, r10d
mov rdx, rcx
sub rdx, r8
add rdx, rax
xor r8d, r8d
cmp r8, 8
je 0x1401af0f2
lea r10, [r8 + 4]
cmp dword [r8 + rbp], r9d
mov r8, r10
jne 0x1401af0c1
cmp rcx, rdi
je 0x1401af94e
mov r9b, byte [rcx]
mov rax, rdx
mov r8, rcx
jmp 0x1401af031
xor edi, edi
jmp 0x1401af1ad
mov r8, rdx
cmp rcx, rdi
je 0x1401af1a4
movzx r9d, byte [rdi - 1]
test r9b, r9b
js 0x1401af10e
lea r10, [rdi - 1]
jmp 0x1401af177
movzx r11d, byte [rdi - 2]
cmp r11b, 0xc0
jge 0x1401af13c
movzx ebp, byte [rdi - 3]
cmp bpl, 0xbf
jg 0x1401af146
lea r10, [rdi - 4]
movzx r14d, byte [rdi - 4]
and r14d, 7
shl r14d, 6
and ebp, 0x3f
or ebp, r14d
jmp 0x1401af14d
lea r10, [rdi - 2]
and r11d, 0x1f
jmp 0x1401af163
lea r10, [rdi - 3]
and ebp, 0xf
shl ebp, 6
and r11d, 0x3f
or r11d, ebp
lea r12, [rsp + 0x52]
lea rbp, [0x1402f072c]
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
cmp r9d, 0x110000
je 0x1401af1a4
xor r11d, r11d
cmp r11, 8
je 0x1401af19b
lea r14, [r11 + 4]
cmp dword [r11 + rbp], r9d
mov r11, r14
jne 0x1401af17a
mov rdi, r10
cmp rcx, r10
jne 0x1401af0fe
jmp 0x1401af1a4
sub r8, rcx
add r8, rdi
mov rdx, r8
add rsi, rax
sub rdx, rax
mov rdi, rdx
lea rcx, [rsp + 0x278]
mov rdx, rsi
mov r8, rdi
call fcn.140163700
mov dl, byte [rsp + 0x278]
cmp dl, 2
jne 0x1401af28f
mov rax, qword [rbx + 0x80]
test rax, rax
je 0x1401aeff9
mov r14, qword [rbx + 0x78]
shl rax, 3
lea r15, [rax + rax*2]
xor ebp, ebp
mov r13, qword [r14 + rbp + 8]
mov r12, qword [r14 + rbp + 0x10]
cmp rdi, r12
jne 0x1401af20f
mov rcx, r13
mov rdx, rsi
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x1401af288
test r12, r12
je 0x1401af238
cmp byte [r13], 0x2e
jne 0x1401af238
lea rax, [r12 - 1]
cmp rax, rdi
jne 0x1401af238
lea rcx, [r13 + 1]
mov rdx, rsi
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x1401af288
mov rdx, rdi
sub rdx, r12
jb 0x1401af252
add rdx, rsi
mov rcx, r13
mov r8, r12
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x1401af26d
cmp r12, 1
jne 0x1401af25f
cmp byte [r13], 0x2a
je 0x1401af288
add rbp, 0x18
cmp r15, rbp
jne 0x1401af1ee
jmp 0x1401af709
test r12, r12
je 0x1401af279
cmp byte [r13], 0x2e
je 0x1401af288
not r12
add r12, rdi
jae 0x1401af25f
cmp byte [rsi + r12], 0x2e
jne 0x1401af25f
mov al, 1
jmp 0x1401af70b
mov rax, qword [rbx + 0x68]
test rax, rax
je 0x1401aeff9
mov r8, qword [rsp + 0x279]
mov r9, qword [rsp + 0x281]
mov r10, qword [rbx + 0x60]
lea rax, [rax + rax*8]
lea r11, [r10 + rax*2]
mov eax, r9d
shr eax, 0x10
mov ecx, r8d
shr ecx, 0x10
mov rsi, r9
shr rsi, 0x20
mov rdi, r8
shr rdi, 0x20
mov rbp, r9
shr rbp, 0x30
mov r15, r8
mov r14d, r8d
rol r14w, 8
mov word [rsp + 0x36], r14w
rol cx, 8
mov dword [rsp + 0x94], ecx
rol di, 8
mov qword [rsp + 0x100], rdi
shr r15, 0x30
rol r15w, 8
mov ecx, r9d
rol cx, 8
mov word [rsp + 0x34], cx
rol ax, 8
mov dword [rsp + 0x88], eax
rol si, 8
mov qword [rsp + 0x108], rsi
rol bp, 8
cmp byte [r10], 2
jne 0x1401af365
cmp dl, byte [r10 + 1]
jne 0x1401af6fc
test dl, dl
je 0x1401af6f2
mov rax, qword [r10 + 2]
xor rax, r8
mov rcx, qword [r10 + 0xa]
xor rcx, r9
or rcx, rax
jne 0x1401af6fc
jmp 0x1401af288
movdqu xmm0, xmmword [r10]
movdqa xmmword [rsp + 0x7f0], xmm0
movzx eax, word [r10 + 0x10]
mov word [rsp + 0x800], ax
mov byte [rsp + 0x802], dl
mov qword [rsp + 0x80b], r9
mov qword [rsp + 0x803], r8
cmp byte [rsp + 0x7f0], 0
je 0x1401af66c
test dl, dl
je 0x1401af6fc
mov al, byte [rsp + 0x801]
mov cl, pe_nt_image_headers64
sub cl, al
mov rsi, 0xffffffffffffffff
shld rsi, rsi, cl
mov rdi, 0xffffffffffffffff
shl rdi, cl
test cl, 0x40
cmovne rsi, rdi
mov r14, qword [rsp + 0x7f1]
mov r12d, 0
cmovne rdi, r12
test cl, cl
cmovs rsi, r12
cmovs rdi, r12
bswap rsi
and rsi, r14
mov ecx, esi
mov r12, rsi
mov r13, rsi
rol si, 8
mov word [rsp + 0x24], si
mov rsi, qword [rsp + 0x7f9]
bswap rdi
and rdi, rsi
shr ecx, 0x10
rol cx, 8
shr r12, 0x20
rol r12w, 8
mov word [rsp + 0x26], cx
mov ecx, edi
mov word [rsp + 0x28], r12w
mov r12, rdi
shr r13, 0x30
rol r13w, 8
mov word [rsp + 0x2a], r13w
mov r13, rdi
rol di, 8
mov word [rsp + 0x2c], di
shr ecx, 0x10
rol cx, 8
mov word [rsp + 0x2e], cx
shr r12, 0x20
rol r12w, 8
mov word [rsp + 0x30], r12w
shr r13, 0x30
rol r13w, 8
mov word [rsp + 0x32], r13w
mov r13d, 0xff
movzx ecx, word [rsp + 0x36]
mov word [rsp + 0x138], cx
mov ecx, dword [rsp + 0x94]
mov word [rsp + 0x13a], cx
mov rcx, qword [rsp + 0x100]
mov word [rsp + 0x13c], cx
mov word [rsp + 0x13e], r15w
movzx ecx, word [rsp + 0x34]
mov word [rsp + 0x140], cx
mov ecx, dword [rsp + 0x88]
mov word [rsp + 0x142], cx
mov rcx, qword [rsp + 0x108]
mov word [rsp + 0x144], cx
mov word [rsp + 0x146], bp
xor edi, edi
cmp rdi, 8
je 0x1401af51d
movzx r12d, word [rsp + rdi*2 + 0x24]
xor ecx, ecx
cmp r12w, word [rsp + rdi*2 + 0x138]
lea rdi, [rdi + 1]
setne cl
cmovb ecx, r13d
test cl, cl
je 0x1401af4eb
add cl, 0xfd
cmp cl, 0xfd
ja 0x1401af6fc
mov rdi, 0xffffffffffffffff
mov ecx, eax
shrd rdi, rdi, cl
mov r12, 0xffffffffffffffff
shr r12, cl
test al, 0x40
cmovne rdi, r12
mov ecx, 0
cmovne r12, rcx
test al, al
cmovs rdi, rcx
cmovs r12, rcx
bswap rdi
bswap r12
or rdi, rsi
or r12, r14
mov eax, r12d
mov rcx, r12
mov rsi, r12
rol r12w, 8
mov word [rsp + 0x138], r12w
shr eax, 0x10
rol ax, 8
shr rcx, 0x20
rol cx, 8
mov word [rsp + 0x13a], ax
mov eax, edi
mov word [rsp + 0x13c], cx
mov rcx, rdi
shr rsi, 0x30
rol si, 8
mov word [rsp + 0x13e], si
mov rsi, rdi
rol di, 8
mov word [rsp + 0x140], di
shr eax, 0x10
rol ax, 8
mov word [rsp + 0x142], ax
shr rcx, 0x20
rol cx, 8
mov word [rsp + 0x144], cx
shr rsi, 0x30
movzx eax, word [rsp + 0x36]
mov word [rsp + 0x24], ax
mov eax, dword [rsp + 0x94]
mov word [rsp + 0x26], ax
mov rax, qword [rsp + 0x100]
mov word [rsp + 0x28], ax
mov word [rsp + 0x2a], r15w
movzx eax, word [rsp + 0x34]
mov word [rsp + 0x2c], ax
mov eax, dword [rsp + 0x88]
mov word [rsp + 0x2e], ax
mov rax, qword [rsp + 0x108]
mov word [rsp + 0x30], ax
mov word [rsp + 0x32], bp
rol si, 8
mov word [rsp + 0x146], si
xor ecx, ecx
cmp rcx, 8
je 0x1401af288
movzx esi, word [rsp + rcx*2 + 0x24]
xor eax, eax
cmp si, word [rsp + rcx*2 + 0x138]
lea rcx, [rcx + 1]
setne al
cmovb eax, r13d
test al, al
je 0x1401af635
add al, 0xfd
cmp al, 0xfe
jae 0x1401af6fc
jmp 0x1401af288
test dl, dl
jne 0x1401af6fc
mov esi, dword [rsp + 0x7f1]
movzx eax, byte [rsp + 0x7f5]
mov edi, 0x20
mov ecx, eax
neg ecx
mov r14d, 0xffffffff
shl r14d, cl
sub edi, eax
cmp edi, 0x20
mov ecx, 0
cmovae r14d, ecx
mov ecx, dword [rsp + 0x803]
bswap esi
and r14d, esi
bswap ecx
xor edi, edi
cmp r14d, ecx
seta dil
sbb edi, 0
test edi, edi
jg 0x1401af6fc
mov edi, 0xffffffff
mov ecx, eax
shr edi, cl
cmp al, 0x20
mov eax, 0
cmovae edi, eax
mov eax, dword [rsp + 0x803]
bswap eax
or edi, esi
xor ecx, ecx
cmp eax, edi
seta cl
sbb ecx, 0
test ecx, ecx
jg 0x1401af6fc
jmp 0x1401af288
cmp dword [r10 + 2], r8d
je 0x1401af288
add r10, 0x12
cmp r10, r11
jne case.default.0x1401af728
xor eax, eax
lea r12, [rsp + 0x52]
lea rbp, [0x1402f072c]
mov rcx, qword [rbx]
lea rdx, [0x14027b6dc]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
test al, al
jne 0x1401af92f
lea rdx, [rbx + 8]
lea rcx, [rsp + 0x7f0]
call fcn.1401d8b84
jmp 0x1401af908
test al, al
jne 0x1401af92f
lea rdx, [rbx + 8]
lea rcx, [rsp + 0x1b8]
lea r8, [rsp + 0x550]
call fcn.1401d8d65
jmp 0x1401af920
test al, al
jne 0x1401af92f
lea rcx, [rsp + 0x550]
call fcn.1401d8d0c
cmp rdx, 5
jne 0x1401af92f
mov ecx, dword [rax]
mov edx, 0x70747468
xor ecx, edx
movzx eax, byte [rax + 4]
xor eax, 0x73
or eax, ecx
jne 0x1401af92f
lea rdx, [rbx + 8]
lea rcx, [rsp + 0x7f0]
call fcn.1401d8b84
jmp 0x1401af908
test al, al
jne 0x1401af92f
mov r15, qword [rbx + 8]
lea rcx, [rsp + 0x550]
call fcn.1401d8d0c
cmp qword [r15 + 0x28], 0
je 0x1401af92f
mov rsi, rax
mov rdi, rdx
mov rcx, qword [r15 + 0x30]
mov rdx, qword [r15 + 0x38]
mov r8, rax
mov r9, rdi
call fcn.1401be647
mov r14, qword [r15 + 0x10]
mov r15, qword [r15 + 0x18]
mov r13, r15
and r13, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm7, xmm0, 0
xor eax, eax
mov qword [rsp + 0x88], rax
movdqu xmm8, xmmword [r14 + r13]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm7
pmovmskb ebp, xmm0
test bp, bp
je 0x1401af875
bsf eax, ebp
add rax, r13
and rax, r15
neg rax
imul r12, rax, 0x68
cmp rdi, qword [r14 + r12 - 0x58]
jne 0x1401af86c
add r12, r14
mov rdx, qword [r12 - 0x60]
mov rcx, rsi
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x1401af8e8
lea eax, [rbp - 1]
and eax, ebp
mov ebp, eax
jmp 0x1401af839
pcmpeqb xmm8, xmm6
pmovmskb eax, xmm8
test eax, eax
lea r12, [rsp + 0x52]
lea rbp, [0x1402f072c]
jne 0x1401af92f
mov rax, qword [rsp + 0x88]
add r13, rax
add r13, 0x10
add rax, 0x10
mov qword [rsp + 0x88], rax
and r13, r15
jmp 0x1401af826
test al, al
jne 0x1401af92f
lea rcx, [rsp + 0x550]
call fcn.1401d8d0c
cmp rdx, 4
jne 0x1401af92f
cmp dword [rax], 0x70747468
jne 0x1401af92f
lea rdx, [rbx + 8]
lea rcx, [rsp + 0x7f0]
call fcn.1401d8b84
jmp 0x1401af908
add r12, 0xffffffffffffffb0
lea rcx, [rsp + 0x7f0]
mov rdx, r12
call fcn.1401d8b84
lea r12, [rsp + 0x52]
lea rbp, [0x1402f072c]
mov ecx, 0xa
lea rdi, [rsp + 0x1b8]
lea rsi, [rsp + 0x7f0]
rep movsq qword [rdi], qword [rsi]
cmp qword [rsp + 0x1b8], 2
jne 0x1401afa52
add rbx, 0x88
cmp rbx, qword [rsp + 0x1b0]
lea r13, [rsp + 0x6d8]
jne 0x1401aefe9
jmp 0x1401af963
xor eax, eax
xor edx, edx
jmp 0x1401af1a4
xor edx, edx
mov r8, rax
xor eax, eax
jmp 0x1401af0f5
lea rbx, [rsp + 0x7f0]
mov rcx, rbx
mov rdx, qword [rsp + 0x80]
call fcn.1401d898c
mov ecx, 0xb
mov rdi, qword [rsp + 0xf0]
lea rsi, [rsp + 0x550]
rep movsq qword [rdi], qword [rsi]
mov ecx, 0x10
lea rdx, [rsp + 0x278]
mov rdi, rdx
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
mov r8d, 0x250
mov rcx, rbx
call sub.msvcrt.dll_memcpy
mov word [rsp + 0xa40], 0
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0xa48], rax
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0xa50], eax
mov byte [rsp + 0xa58], 0
mov al, byte [0x140373e88]
mov edx, 0x540
xor ecx, ecx
call fcn.140231a60
test rax, rax
je 0x1401b04a0
mov rsi, rax
mov r8d, 0x540
mov rcx, rax
mov rdx, rbx
call sub.msvcrt.dll_memcpy
lea rdi, fcn.1401d922b
mov rcx, qword [rsp + 0x80]
call fcn.1401ad693
mov rax, qword [rsp + 0x38]
mov qword [rax + 0x120], 2
mov qword [rax + 0x128], rsi
mov qword [rax + 0x130], rdi
mov eax, 2
jmp 0x1401aef49
mov ecx, 0xa
lea r14, [rsp + 0x138]
mov rdi, r14
lea rsi, [rsp + 0x1b8]
rep movsq qword [rdi], qword [rsi]
lea rbx, [rsp + 0x7f0]
mov rcx, rbx
mov rdx, qword [rsp + 0x80]
call fcn.1401d898c
mov ecx, 0xb
lea rdi, [rsp + 0x348]
lea rsi, [rsp + 0x550]
rep movsq qword [rdi], qword [rsi]
mov ecx, 0xa
mov rdi, qword [rsp + 0xf0]
mov rsi, r14
rep movsq qword [rdi], qword [rsi]
mov ecx, 0x10
lea rdx, [rsp + 0x278]
mov rdi, rdx
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
mov r8d, 0x2d2
mov rcx, rbx
call sub.msvcrt.dll_memcpy
xor eax, eax
mov byte [rsp + 0xac2], al
mov rcx, qword [rsp + 0xf8]
mov qword [rsp + 0x2e38], rcx
mov ecx, dword [rsp + 0x90]
mov dword [rsp + 0x2e40], ecx
mov byte [rsp + 0x2e48], al
mov al, byte [0x140373e88]
mov edx, 0x4d20
xor ecx, ecx
call fcn.140231a60
test rax, rax
lea r13, [rsp + 0x6d8]
je 0x1401b04b4
mov rsi, rax
mov r8d, 0x4d20
mov rcx, rax
mov rdx, rbx
call sub.msvcrt.dll_memcpy
lea rdi, fcn.1401d925d
jmp 0x1401afa1d
cmp rax, 1
jne 0x1401b0488
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax + 0x128]
mov rax, qword [rax + 0x130]
mov rcx, rbx
mov r8, qword [rsp + 0xe8]
call qword [rax + 0x18]
mov dil, byte [rsp + 0x801]
cmp dil, 3
je 0x1401b02bc
mov rsi, qword [rsp + 0x7f0]
mov rbx, qword [rsp + 0x7f8]
cmp dil, 2
jne 0x1401afba5
mov dil, 2
mov r14, qword [rsp + 0x80]
jmp 0x1401afc0b
mov dl, byte [rsp + 0x800]
lea rcx, [rsp + 0x802]
movzx eax, word [rcx + 4]
mov word [r12 + 4], ax
mov eax, dword [rcx]
mov dword [r12], eax
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rbx
mov byte [rsp + 0x23], dl
mov byte [rsp + 0x50], dl
mov byte [rsp + 0x51], dil
mov r14, qword [rsp + 0x80]
mov rcx, r14
call fcn.1401ad693
mov qword [r14], 3
movzx eax, word [r12 + 4]
mov word [rsp + 0x9c], ax
mov eax, dword [r12]
mov dword [rsp + 0x98], eax
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0xc0], rbx
mov al, byte [rsp + 0x23]
mov byte [rsp + 0xc8], al
mov byte [rsp + 0xc9], dil
movzx eax, word [rsp + 0x9c]
lea rcx, [rsp + 0xca]
mov word [rcx + 4], ax
mov eax, dword [rsp + 0x98]
mov dword [rcx], eax
cmp dword [r14], 4
mov r15, qword [rsp + 0x38]
je 0x1401b04f8
mov rcx, r14
call fcn.1401ad693
mov qword [r14], 4
cmp dil, 2
jne 0x1401afc79
mov eax, 1
mov bpl, 2
jmp 0x1401afc9d
lea rcx, [rsp + 0xca]
movzx eax, word [rcx + 4]
mov word [rsp + 0x7f4], ax
mov eax, dword [rcx]
mov dword [rsp + 0x7f0], eax
mov bpl, byte [rsp + 0x23]
xor eax, eax
movzx ecx, word [rsp + 0x7f4]
mov word [rsp + 0x134], cx
mov edx, dword [rsp + 0x7f0]
mov dword [rsp + 0x130], edx
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x120], rbx
mov byte [rsp + 0x128], bpl
mov byte [rsp + 0x129], dil
lea rax, [rsp + 0x118]
mov word [rax + 0x16], cx
mov dword [rax + 0x12], edx
cmp dword [r15], 2
je 0x1401b0519
mov r8d, 0x120
lea rcx, [rsp + 0x7f0]
mov rdx, r15
call sub.msvcrt.dll_memcpy
mov r14, qword [rsp + 0x7f0]
mov r8d, 0x118
mov rcx, r13
lea rdx, [rsp + 0x7f8]
call sub.msvcrt.dll_memcpy
mov qword [r15], 2
cmp r14, 2
je 0x1401b0520
mov qword [rsp + 0x550], r14
mov r8d, 0x118
lea rcx, [rsp + 0x558]
mov rdx, r13
call sub.msvcrt.dll_memcpy
cmp dil, 2
je 0x1401b02cd
mov qword [rsp + 0x278], r14
mov r8d, 0x118
lea rcx, [rsp + 0x280]
mov rdx, r13
call sub.msvcrt.dll_memcpy
xor r14d, r14d
lea rcx, [rsp + 0x40]
mov rdx, rsi
call qword [rbx + 0x50]
mov byte [rsp + 0x51], bpl
test dil, dil
je 0x1401afe6f
lea rcx, [rsp + 0x1b8]
mov rdx, rsi
call qword [rbx + 0x78]
mov r14, qword [rsp + 0x1b8]
movabs rax, 0x8000000000000000
inc rax
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov bl, byte [rsp + 0x50]
cmp r14, rax
lea r15, [rsp + 0x52]
je 0x1401afec8
test rsi, rsi
je 0x1401afe8c
mov qword [rsp + 0x808], rsi
mov qword [rsp + 0x810], rdi
movdqu xmm0, xmmword [rsp + 0x1b8]
movdqa xmmword [rsp + 0x7f0], xmm0
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x800], rax
mov al, byte [0x140373e88]
mov edx, 0x28
xor ecx, ecx
call fcn.140231a60
test rax, rax
lea r14, [rsp + 0x271]
je 0x1401b054b
mov rsi, rax
mov rax, qword [rsp + 0x810]
mov qword [rsi + 0x20], rax
movaps xmm0, xmmword [rsp + 0x7f0]
movaps xmm1, xmmword [rsp + 0x800]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
lea rdi, fcn.1401d830b
jmp 0x1401afed0
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov bl, byte [rsp + 0x50]
lea r14, [rsp + 0x271]
lea r15, [rsp + 0x52]
jmp 0x1401afed0
mov al, byte [0x140373e88]
mov edx, 0x18
xor ecx, ecx
call fcn.140231a60
test rax, rax
je 0x1401b0574
mov rsi, rax
mov rax, qword [rsp + 0x1c8]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rsp + 0x1b8]
movups xmmword [rsi], xmm0
lea rdi, [0x1402ea9b0]
lea r14, [rsp + 0x271]
mov eax, dword [r15 - 1]
mov ecx, dword [r15 + 2]
mov dword [rsp + 0xbb], ecx
mov dword [rsp + 0xb8], eax
mov bpl, byte [rsp + 0x390]
mov eax, ebx
or al, bpl
jne 0x1401b0003
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x820], rax
movdqu xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movaps xmmword [rsp + 0x810], xmm2
movaps xmmword [rsp + 0x800], xmm1
movdqa xmmword [rsp + 0x7f0], xmm0
lea rcx, [rsp + 0x1b8]
lea rdx, [rsp + 0x388]
lea r15, [rsp + 0x7f0]
mov r8, r15
mov r9b, 1
call fcn.1401b087c
mov rcx, r15
call fcn.1401adccf
cmp byte [rsp + 0x1b8], 3
jne 0x1401b0021
mov edx, 0x17
lea rcx, str.ALPN_upgraded_to_HTTP_2C:Usersdelph.cargo_registry_srcmirrors.tuna.tsinghua.edu.cn_2eab394af869c8a2hyper_util_0.1.5_srcclientlegacyclient.rs
call fcn.1401a919f
mov r12, rax
test rsi, rsi
je 0x1401aff92
mov r14b, 1
mov rcx, rsi
mov rdx, rdi
call fcn.140198c5c
lea rcx, [rsp + 0x118]
call fcn.1401adc5a
mov rax, qword [rsp + 0x388]
test rax, rax
lea r14, [rsp + 0x271]
lea rbx, [rsp + 0x7f0]
je 0x1401affcf
lock dec qword [rax]
jne 0x1401affcf
mov rcx, qword [rsp + 0x388]
call fcn.1401aa924
lea rcx, [rsp + 0x278]
call fcn.1401adae3
mov rax, qword [rsp + 0x378]
lock dec qword [rax]
mov bpl, 2
jne 0x1401b01a0
lea rcx, [rsp + 0x378]
call fcn.140237ba2
jmp 0x1401b01a0
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
jmp 0x1401b0046
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [rsp + 0x1b8]
movups xmm1, xmmword [rsp + 0x1c8]
movups xmm2, xmmword [rsp + 0x1d8]
movaps xmmword [rsp + 0x60], xmm2
movaps xmmword [rsp + 0x50], xmm1
movaps xmmword [rsp + 0x40], xmm0
mov eax, ebx
xor al, 1
test bpl, bpl
movzx eax, al
mov ecx, 1
cmovne eax, ecx
mov byte [rsp + 0x938], al
mov r8d, 0x88
lea r15, [rsp + 0x7f0]
mov rcx, r15
lea rdx, [rsp + 0x278]
call sub.msvcrt.dll_memcpy
lea rcx, [rsp + 0x118]
mov rax, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x1a0]
mov qword [rdx + 0x10], rax
movups xmm0, xmmword [rcx]
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rsp + 0x378]
movups xmmword [rsp + 0x920], xmm0
mov rax, qword [rsp + 0x198]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x20]
movups xmm2, xmmword [rax + 0x30]
mov rcx, qword [rsp + 0x190]
movups xmmword [rcx + 0x30], xmm2
movups xmmword [rcx + 0x20], xmm1
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov rax, qword [rsp + 0x388]
mov qword [rsp + 0x930], rax
movdqa xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movaps xmm2, xmmword [rsp + 0x60]
lea rdx, [rsp + 0x802]
movdqu xmmword [rdx + 0xe6], xmm0
movups xmmword [rdx + 0xf6], xmm1
movups xmmword [rdx + 0x106], xmm2
mov rax, qword [rsp + 0x70]
mov qword [rdx + 0x116], rax
mov qword [rsp + 0x8d0], rsi
mov qword [rsp + 0x8d8], rdi
mov byte [rsp + 0x8e0], bl
mov eax, dword [rsp + 0xb8]
mov ecx, dword [rsp + 0xbb]
mov dword [rdx + 0xe2], ecx
mov dword [rdx + 0xdf], eax
mov byte [rsp + 0x939], 0
mov al, byte [0x140373e88]
mov edx, 0x498
xor ecx, ecx
call fcn.140231a60
test rax, rax
je 0x1401b053a
mov r12, rax
mov r8d, 0x498
mov rcx, rax
mov rdx, r15
call sub.msvcrt.dll_memcpy
mov bpl, 4
mov rbx, r15
lea rsi, [rsp + 0x138]
mov r8d, 0x57
mov rcx, rsi
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov eax, dword [rsp + 0x278]
mov ecx, dword [rsp + 0x27b]
mov dword [rsp + 0x24], eax
mov dword [rsp + 0x27], ecx
mov qword [rsp + 0x208], r12
lea rax, [0x1402eb4a8]
mov qword [rsp + 0x210], rax
mov byte [rsp + 0x218], 0
mov r8d, 0x57
lea rcx, [rsp + 0x219]
mov rdx, rsi
call sub.msvcrt.dll_memcpy
mov byte [rsp + 0x270], bpl
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x27]
mov dword [r14], eax
mov dword [r14 + 3], ecx
mov r15, r14
mov r14, qword [rsp + 0xe0]
mov rcx, r14
call fcn.1401ad5b5
mov qword [r14], 3
mov ecx, 0xd
mov rdi, qword [rsp + 0xd0]
lea rsi, [rsp + 0x208]
rep movsq qword [rdi], qword [rsi]
mov byte [r14 + 0x70], bpl
mov eax, dword [r15]
mov ecx, dword [r15 + 3]
mov rdx, qword [rsp + 0xd8]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
mov eax, 3
lea r12, [rsp + 0x52]
lea rbp, [0x1402f072c]
jmp 0x1401aeee5
cmp rax, 1
jne 0x1401b04e0
mov r8, qword [rsp + 0x38]
mov dl, byte [r8 + 0x68]
cmp dl, 4
jne 0x1401b0380
mov rdx, qword [r8]
lea rsi, [rsp + 0x7f0]
mov rcx, rsi
mov r8, qword [rsp + 0xe8]
call fcn.1401b11f5
cmp byte [rsi + 0x68], 3
jne 0x1401b03b5
mov rax, qword [rsp + 0xa0]
mov byte [rax + 0x68], 3
jmp 0x1401b0443
lea rcx, [rsp + 0x118]
mov eax, dword [rcx + 0x11]
mov ecx, dword [rcx + 0x14]
lea rdi, [rsp + 0x138]
mov dword [rdi + 3], ecx
mov dword [rdi], eax
lea rcx, [rsp + 0x550]
call fcn.1401ad76a
mov qword [rsp + 0x208], rsi
mov qword [rsp + 0x210], rbx
mov byte [rsp + 0x218], bpl
mov r8d, 0x57
lea rcx, [rsp + 0x219]
mov rdx, rdi
call sub.msvcrt.dll_memcpy
mov byte [rsp + 0x270], 5
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x27]
lea rdx, [rsp + 0x271]
mov dword [rdx], eax
mov dword [rdx + 3], ecx
mov rdi, qword [rsp + 0xe0]
mov rcx, rdi
call fcn.1401ad5b5
mov qword [rdi], 4
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x680], rax
movdqu xmm0, xmmword [rsp + 0x208]
movdqa xmmword [rsp + 0x670], xmm0
mov dl, 2
jmp 0x1401b040e
mov byte [r8 + 0x68], 3
cmp dl, 3
je 0x1401b055c
lea rax, [rsp + 0x7f0]
mov ecx, 0xd
mov rdi, rax
mov rsi, r8
rep movsq qword [rdi], qword [rsi]
mov byte [rax + 0x68], dl
mov ecx, dword [r8 + 0x69]
mov edx, dword [r8 + 0x6c]
mov dword [rax + 0x69], ecx
mov dword [rax + 0x6c], edx
lea rdi, [rsp + 0x278]
lea rsi, [rsp + 0x7f0]
mov ecx, 0xe
rep movsq qword [rdi], qword [rsi]
mov rcx, r14
call fcn.1401ad5b5
mov qword [r14], 4
lea rdi, [rsp + 0x670]
lea rax, [rsp + 0x278]
mov ecx, 0xd
mov rsi, rax
rep movsq qword [rdi], qword [rsi]
mov dl, byte [rax + 0x68]
mov ecx, dword [rax + 0x69]
mov dword [rsp + 0xa8], ecx
mov eax, dword [rax + 0x6c]
mov dword [rsp + 0xab], eax
lea rsi, [rsp + 0x670]
mov ecx, 0xd
mov r8, qword [rsp + 0xa0]
mov rdi, r8
rep movsq qword [rdi], qword [rsi]
mov byte [r8 + 0x68], dl
mov eax, dword [rsp + 0xa8]
mov ecx, dword [rsp + 0xab]
mov dword [r8 + 0x69], eax
mov dword [r8 + 0x6c], ecx
movaps xmm6, xmmword [rsp + 0x5520]
movaps xmm7, xmmword [rsp + 0x5530]
movaps xmm8, xmmword [rsp + 0x5540]
add rsp, 0x5558
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str.already_calledC:Usersdelph.cargo_registry_srcmirrors.tuna.tsinghua.edu.cn_2eab394af869c8a2_tower_0.4.13_srcutiloneshot.rs
lea r8, [0x1402ef428]
mov edx, 0xe
call fcn.140163ac0
lea rcx, str.polled_after_complete
lea r8, [0x1402ef440]
mov edx, 0x15
call fcn.14016b1bc
mov ecx, 8
mov edx, 0x540
call fcn.1401562d0
jmp 0x1401b0583
mov ecx, 8
mov edx, 0x4d20
call fcn.1401562d0
jmp 0x1401b0583
lea rcx, str.Map_must_not_be_polled_after_it_returned__Poll::Ready_
lea r8, str.C:Usersdelph.cargo_registry_srcmirrors.tuna.tsinghua.edu.cn_2eab394af869c8a2_futures_util_0.3.30_src_future_futuremap.rs
mov edx, 0x36
call fcn.14016b1bc
lea rcx, str.TryFlatten_polled_after_completionC:Usersdelph.cargo_registry_srcmirrors.tuna.tsinghua.edu.cn_2eab394af869c8a2_futures_util_0.3.30_src_future_try_future_try_flatten.rs
lea r8, [0x1402eb828]
mov edx, 0x22
call fcn.14016b1bc
mov qword [r14], 4
lea rcx, str.internal_error:_entered_unreachable_codeUtf8Errorvalid_up_to
lea r8, str.C:Usersdelph.cargo_registry_srcmirrors.tuna.tsinghua.edu.cn_2eab394af869c8a2_futures_util_0.3.30_src_future_futuremap.rs
mov edx, 0x28
call fcn.14015d2f0
jmp 0x1401b0583
mov qword [r15], 2
lea rcx, str.internal_error:_entered_unreachable_codeUtf8Errorvalid_up_to
lea r8, str.C:Usersdelph.cargo_registry_srcmirrors.tuna.tsinghua.edu.cn_2eab394af869c8a2_futures_util_0.3.30_src_future_futuremap.rs
mov edx, 0x28
call fcn.14015d2f0
jmp 0x1401b0583
mov ecx, 8
mov edx, 0x498
call fcn.1401562d0
jmp 0x1401b0583
mov ecx, 8
mov edx, 0x28
call fcn.1401562d0
jmp 0x1401b0583
lea rcx, str.Ready_polled_after_completionC:Usersdelph.cargo_registry_srcmirrors.tuna.tsinghua.edu.cn_2eab394af869c8a2_futures_util_0.3.30_src_future_ready.rs
lea r8, [0x1402ef270]
mov edx, 0x1d
call fcn.140163ac0
mov ecx, 8
mov edx, 0x18
call fcn.1401562d0
ud2
imul ebp, dword [rsi + 0x65], 0x6c6f632d
outsd dx, dword [rsi]
jb 0x14028b705
outsd dx, dword [rsi]
jb 0x14028b749
outsb dx, byte [rsi]
pop rdi
xor al, 0x20
and esp, dword [rbp + 0x36]
xor dword ss:[rax], esi
xor byte [rbx], bh
or eax, 0x6564400a
imul bp, word [rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b726
and byte [rdi + 0x72], ch
invalid
outsd dx, dword [rsi]
jb 0x14028b76a
outsb dx, byte [rsi]
pop rdi
xor eax, 0x36632320
xor al, 0x36
xor byte [rax], dh
cmp ecx, dword [0x1a58cf726]
imul bp, word [rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b747
and byte [rdx + 0x65], dh
jb 0x14028b78e
pop rdi
xor dword [rax], esp
and esp, dword [rsi + 0x36]
xor dword ss:[0x14a35f268], esi
imul bp, word gs:[rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b765
jb 0x14028b7ac
pop rdi
xor ah, byte [rax]
and esp, dword [rbp + 0x64]
xor esi, dword [rbx]
xor esp, dword [rdx + 0x3b]
or eax, 0x6564400a
imul bp, word [rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b783
jb 0x14028b7ca
pop rdi
xor esp, dword [rax]
and esp, dword [rbp + 0x30]
xor dword [rdx + 0x32], esp
xor al, 0x3b
or eax, 0x6564400a
imul bp, word [rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b7a1
xor byte gs:[rcx], dh
invalid
jb 0x14028b7e8
pop rdi
xor al, 0x20
and esp, dword [rbx + 0x30]
xor dword [rbx + 0x32], esp
cmp byte [rbx], bh
or eax, 0x6564400a
cmp ecx, dword [0x1a58cf79e]
imul bp, word [rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b7bf
jb 0x14028b806
pop rdi
xor eax, 0x35612320
xor dword [rdx + rsi + 0x64], esp
cmp ecx, dword [0x1a58cf7bc]
imul bp, word [rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b7dd
jo 0x14028b834
jb 0x14028b831
insb byte [rdi], dx
pop rdi
xor dword [rax], esp
and esp, dword [rbx + riz*2 + 0x38]
invalid
and byte [rax + 0x75], dh
jb 0x14028b852
insb byte [rdi], dx
pop rdi
xor ah, byte [rax]
and esp, dword [rbx + 0x30]
xor dword ss:[rbx + 0x62], esp
cmp ecx, dword [0x1a58cf7fe]
imul bp, word [rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b81f
invalid
jo 0x14028b876
jb 0x14028b873
insb byte [rdi], dx
pop rdi
xor esp, dword [rax]
and edi, dword [rcx]
xor dword [rcx + rsi], esi
invalid
and byte [rax + 0x75], dh
jb 0x14028b894
insb byte [rdi], dx
pop rdi
xor al, 0x20
and edi, dword [rax]
xor dword [rbx], esi
cmp dword fs:[rbx + 0x3b], esp
or eax, 0x6564400a
imul bp, word [rsi + 0x65], 0x632d
imul bp, word gs:[rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b861
jo 0x14028b8b8
jb 0x14028b8b5
insb byte [rdi], dx
pop rdi
xor eax, 0x31362320
xor esi, dword [0x14d63eb8b]
or al, byte [rax + 0x64]
imul bp, word gs:[rsi + 0x65], 0x632d
or eax, 0x6564400a
imul bp, word [rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b882
and byte [rdx + 0x72], ah
outsd dx, dword [rsi]
ja 0x14028b8d5
invalid
pop rdi
xor dword [rax], esp
and esp, dword [rbx + 0x64]
invalid
or al, byte [rax + 0x64]
imul bp, word gs:[rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b8a2
invalid
imul bp, word gs:[rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b8c2
invalid
imul bp, word gs:[rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
imul ebp, dword [rsi + 0x65], 0x6c6f632d
outsd dx, dword [rsi]
jb 0x14028b8e2
invalid
imul bp, word gs:[rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b902
invalid
insb byte [rdi], dx
imul esp, dword [rdi + 0x68], 0x20315f74
and esp, dword [rsi + 0x66]
cmp cx, word [0x1a58cf921]
imul bp, word [rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b942
insb byte [rdi], dx
imul esp, dword [rdi + 0x68], 0x20325f74
and esp, dword [rsi + 0x36]
xor ax, 0x3466
cmp ecx, dword [0x1a58cf941]
imul bp, word [rsi + 0x65], 0x632d
outsd dx, dword [rsi]
insb byte [rdi], dx
outsd dx, dword [rsi]
jb 0x14028b962
insb byte [rdi], dx
imul esp, dword [rdi + 0x68], 0x20335f74
and esp, dword [rbp + riz*2 + 0x64]
invalid
insb byte [rdi], dx
imul esp, dword [rdi + 0x68], 0x20345f74
and esp, dword [rbx + 0x30]
invalid