Function at 0x1400be9d0
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x638
movdqa xmmword [rsp + 0x620], xmm8
movaps xmmword [rsp + 0x610], xmm7
movaps xmmword [rsp + 0x600], xmm6
mov rsi, r8
mov r12, rdx
mov qword [rsp + 0x1e8], rcx
lea rax, [rdx + 0xa8]
mov qword [rsp + 0x3c8], rax
lea rax, [rdx + 0x3b0]
mov qword [rsp + 0x200], rax
lea rax, [rdx + 0x3b1]
mov qword [rsp + 0x410], rax
lea rax, [rdx + 0x338]
mov qword [rsp + 0x400], rax
movzx ecx, byte [rdx + 0x32f]
mov rax, qword [rdx + 0xd0]
mov r14, qword [r8]
cmp byte [rdx + 0x32e], 0
movdqa xmm6, xmmword [0x1401b0140]
movdqa xmm7, xmmword [0x1401b0150]
mov r13, qword [r8 + 8]
lea rdx, [r12 + 0x390]
mov qword [rsp + 0x1f8], rdx
setne r9b
xor ebx, ebx
mov ebp, 0x4805
mov qword [rsp + 0x258], rdx
mov qword [rsp + 0x228], rdx
mov qword [rsp + 0x1f0], rdx
mov dword [rsp + 0x98], edx
mov qword [rsp + 0x208], rdx
mov qword [rsp + 0x88], rdx
mov dword [rsp + 0x48], edx
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0x78], rdx
mov dword [rsp + 0x44], edx
xor edx, edx
mov qword [rsp + 0x278], rdx
xor edx, edx
mov qword [rsp + 0x260], rdx
mov qword [rsp + 0x1e0], r12
mov qword [rsp + 0x428], r14
mov qword [rsp + 0x420], r13
mov qword [rsp + 0x3b8], r8
mov r15d, r9d
mov rdi, rbx
test cl, cl
setne bl
test rax, rax
je 0x1400beb5c
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x3c8]
mov rdx, rsi
call fcn.140068a70
test rax, rax
jne 0x1400c2c06
add qword [rsp + 0x260], rdx
cmp qword [r12 + 0xd0], 0
jne 0x1400beb30
mov rcx, r14
call qword [r13 + 0x70]
test rax, rax
jne 0x1400c2dcc
and r15b, bl
cmp qword [rsp + 0x260], 0
setne al
mov dword [rsp + 0x2bc], r15d
test r15b, al
mov rbx, rdi
jne 0x1400c2c36
nop
test bl, 1
jne 0x1400bee90
cmp qword [r12 + 0x70], 0
jne 0x1400bee90
cmp byte [r12 + 0x332], 0
jne 0x1400bee90
cmp byte [r12 + 0x32e], 0
jne 0x1400bebce
cmp qword [r12 + 0xd0], 0
jne 0x1400bee90
cmp qword [r12 + 0x48], 0
je 0x1400bec30
mov rax, qword [r12 + 0x50]
mov rcx, qword [r12 + 0x60]
xor edx, edx
xor r8d, r8d
test rdx, rdx
je 0x1400bec01
nop word [rax + rax]
add r8, qword [rcx + 0x10]
add rcx, 0x18
add rdx, 0xffffffffffffffe8
test rdx, rdx
jne 0x1400bebf0
cmp r8, rax
jbe 0x1400bec30
mov r8d, 0x1e
mov cl, 0x27
lea rdx, str.received_plaintext_buffer_fullInvalidDnsNameError:_status_code
call fcn.1400ca360
mov rsi, rax
jmp 0x1400beda8
cmp dword [r12 + 0x358], 2
mov eax, 0xffff
cmove rax, rbp
mov rcx, qword [r12 + 0x3e8]
cmp rcx, rax
jae 0x1400becd0
lea rsi, [rcx + 0x1000]
cmp rax, rsi
cmovb rsi, rax
mov r8, qword [r12 + 0x3e0]
mov r15, rsi
sub r15, r8
jbe 0x1400becfa
mov rax, qword [r12 + 0x3d0]
sub rax, r8
cmp rax, r15
jb 0x1400bee35
mov rsi, qword [r12 + 0x3d8]
lea rcx, [rsi + r8]
cmp r15, 2
jb 0x1400becbc
lea rax, [r15 - 1]
xor edx, edx
mov rdi, r8
mov r8, rax
call sub.msvcrt.dll_memset
mov r8, rdi
lea r8, [r15 + rdi]
dec r8
add rsi, r8
mov rcx, rsi
mov byte [rcx], 0
inc r8
mov qword [r12 + 0x3e0], r8
jmp 0x1400bed60
mov r8d, 0x13
mov cl, 0x15
lea rdx, [0x1401ceb30]
call fcn.140064570
mov rsi, rax
mov ecx, 1
test rcx, rcx
je 0x1400bed96
jmp 0x1400bed9f
test rcx, rcx
je 0x1400bed04
cmp r8, rax
jbe 0x1400bed60
mov rax, qword [r12 + 0x3d0]
mov qword [r12 + 0x3e0], rsi
cmp rax, rsi
jbe 0x1400bed55
mov r8, qword [r12 + 0x3d8]
mov rcx, qword [0x14024d108]
xor edx, edx
mov r9, rsi
call sub.kernel32.dll_HeapReAlloc
test rax, rax
je 0x1400c2e0c
mov qword [r12 + 0x3d8], rax
mov qword [r12 + 0x3d0], rsi
mov r8, qword [r12 + 0x3e0]
jmp 0x1400bed60
mov r8, rsi
nop dword [rax + rax]
mov rdx, qword [r12 + 0x3e8]
sub r8, rdx
jb 0x1400c2e0c
add rdx, qword [r12 + 0x3d8]
mov rcx, r14
call qword [r13 + 0x18]
mov rsi, rdx
mov ecx, 1
test rax, rax
je 0x1400bee1d
test rcx, rcx
jne 0x1400bed9f
test rsi, rsi
je 0x1400bee6b
test rcx, rcx
je 0x1400bee78
mov rcx, rsi
call fcn.14008ceb0
cmp al, 0x23
jne 0x1400c2c1e
mov eax, esi
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x1400beb90
test rax, rax
je 0x1400beb90
mov r15, qword [rsi - 1]
mov rdi, qword [rsi + 7]
mov rcx, r15
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1400bee04
cmp qword [rdi + 0x10], 0x11
jb 0x1400bedf3
mov r15, qword [r15 - 8]
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
dec rsi
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
jmp 0x1400beb90
add qword [r12 + 0x3e8], rsi
xor ecx, ecx
test rcx, rcx
je 0x1400bed96
jmp 0x1400bed9f
lea rcx, [r12 + 0x3d0]
mov rdx, r8
mov r8, r15
call fcn.1400a1c40
mov r8, qword [r12 + 0x3e0]
mov rsi, qword [r12 + 0x3d8]
lea rcx, [rsi + r8]
cmp r15, 2
jae 0x1400bec9b
jmp 0x1400becbc
mov byte [r12 + 0x333], 1
mov bl, 1
jmp 0x1400bee90
add qword [rsp + 0x278], rsi
test rsi, rsi
movzx ebx, bl
mov eax, 1
cmove ebx, eax
nop
movzx eax, byte [r12 + 0x3b0]
mov r8, qword [r12 + 0x3b8]
mov r14, qword [r12 + 0x3c0]
mov r15, qword [r12 + 0x3c8]
mov byte [r12 + 0x3b0], 0xf
cmp al, 0x14
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x60], r8
jne 0x1400c1f80
mov qword [rsp + 0x1b0], r14
mov r14, qword [r12 + 0x3e8]
cmp r14, qword [r12 + 0x3e0]
mov rbp, qword [rsp + 0x38]
ja 0x1400c2e0c
mov rax, qword [r12 + 0x3d8]
mov qword [rsp + 0x408], rax
xor r13d, r13d
mov r10, qword [rsp + 0x80]
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x58], r14
movzx ecx, word [r12 + 0x328]
mov word [rsp + 0x1ce], cx
cmp byte [r12 + 0x390], 0x14
mov qword [rsp + 0x1b8], rax
je 0x1400bef68
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0x1f8]
mov rsi, r10
call fcn.140079f40
mov r10, rsi
movzx edi, byte [rsp + 0xf0]
cmp dil, 0x14
jne 0x1400c25d1
cmp r13, r14
ja 0x1400c2e0c
je 0x1400c2147
mov rsi, r14
sub rsi, r13
mov rax, qword [rsp + 0x408]
add rax, r13
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0x1d8], rsi
mov rax, qword [r12 + 0x358]
test rax, rax
je 0x1400befdf
cmp eax, 1
jne 0x1400bf010
mov rax, qword [r12 + 0x360]
mov rdi, qword [r12 + 0x378]
mov rcx, qword [r12 + 0x380]
sub rcx, rdi
mov edx, 0
cmovae rdx, rcx
cmp rax, rdx
jbe 0x1400bfb3e
cmp byte [r12 + 0x38c], 0
jne 0x1400c24ca
mov r9, qword [r12 + 0x370]
cmp qword [rsp + 0x58], r13
jae 0x1400bf01e
jmp 0x1400c2e0c
xor r9d, r9d
cmp qword [rsp + 0x58], r13
jb 0x1400c2e0c
mov qword [rsp + 0x80], r10
cmp rsi, r9
jb 0x1400c2e0c
mov rax, rsi
sub rax, r9
je 0x1400c2101
mov rcx, qword [rsp + 0xb8]
lea r12, [rcx + r9]
movzx r11d, byte [r12]
lea r14d, [r11 - 0x14]
movzx r15d, r14b
cmp r15b, 5
mov ecx, 5
cmovae r15d, ecx
jae 0x1400c212a
lea rcx, [rax - 1]
cmp rcx, 2
jb 0x1400c2134
cmp rax, 2
jbe 0x1400c2e0c
movzx edi, word [r12 + 1]
rol di, 8
movzx ecx, di
cmp ecx, 0xfefb
mov qword [rsp + 0x38], rbp
jg 0x1400bf0d0
lea edx, [rcx - 0x300]
cmp edx, 4
ja case.default.0x1400bf0b2
lea r8, [0x1401b0160]
movsxd rcx, dword [r8 + rdx*4]
add rcx, r8
jmp rcx
mov r10d, 1
mov rbp, r10
jmp 0x1400bf170
cmp ecx, 0xfefc
je 0x1400bf10e
cmp ecx, 0xfefd
je 0x1400bf119
cmp ecx, 0xfeff
jne 0x1400bf145
mov r10d, 6
mov rbp, r10
jmp 0x1400bf170
cmp ecx, 0x200
jne 0x1400bf145
xor r10d, r10d
mov rbp, r10
jmp 0x1400bf170
mov r10d, 5
mov rbp, r10
jmp 0x1400bf170
mov r10d, 8
mov rbp, r10
jmp 0x1400bf170
mov r10d, 7
mov rbp, r10
jmp 0x1400bf170
mov r10d, 3
mov rbp, r10
jmp 0x1400bf170
mov r10d, 4
mov rbp, r10
jmp 0x1400bf170
mov r10d, 2
mov rbp, r10
jmp 0x1400bf170
mov ecx, edi
and ecx, 0xff00
cmp ecx, 0x300
jne 0x1400c2884
mov ebp, 9
mov r10w, 9
nop word cs:[rax + rax]
lea rcx, [rax - 3]
cmp rcx, 2
jb 0x1400c20ac
movzx ecx, word [r12 + 3]
cmp r14b, 3
je 0x1400bf193
test cx, cx
je 0x1400c2341
rol cx, 8
movzx edx, cx
cmp edx, 0x47ff
ja 0x1400c2348
mov qword [rsp + 0x418], rbp
lea r8, [rax - 5]
cmp r8, rdx
jb 0x1400c20ac
lea r8, [rdx + 5]
mov qword [rsp + 0x3c0], r8
cmp r8, rax
ja 0x1400c2e0c
mov ebp, edi
mov rbx, r11
mov rdi, r10
mov qword [rsp + 0xb0], r9
and edx, 0x7f00
movzx r13d, cl
or r13, rdx
je 0x1400bf220
movzx eax, byte [0x14024d119]
xor ecx, ecx
mov rdx, r13
call fcn.140082900
test rax, rax
je 0x1400c2e0c
mov rsi, rax
mov qword [rsp + 0x1c0], r13
jmp 0x1400bf22f
mov esi, 1
xor eax, eax
mov qword [rsp + 0x1c0], rax
add r12, 5
mov rcx, rsi
mov rdx, r12
mov r8, r13
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x3c0]
add rax, rcx
cmp word [rsp + 0x1ce], 0xa
mov qword [rsp + 0x280], rax
jne 0x1400bf290
test r14b, r14b
mov r12, qword [rsp + 0x1e0]
mov r8, qword [rsp + 0x58]
mov r9, rdi
jne 0x1400bf2f0
cmp qword [r12 + 0x358], 2
jne 0x1400bf2f0
jmp 0x1400bfa55
test r15b, r15b
mov r12, qword [rsp + 0x1e0]
mov r9, rdi
je 0x1400bf2d7
movzx eax, r15b
cmp eax, 1
mov r8, qword [rsp + 0x58]
jne 0x1400bf2f0
cmp word [rsp + 0x1ce], 5
jne 0x1400bf2f0
cmp byte [r12 + 0x40], 0
jne 0x1400bf2f0
cmp r13, 2
ja 0x1400bf2f0
cmp qword [r12 + 0x358], 2
jne 0x1400bf2f0
jmp 0x1400c0a22
cmp dword [r12 + 0x358], 2
mov r8, qword [rsp + 0x58]
je 0x1400bfa55
nop dword [rax + rax]
cmp byte [r12 + 0x42], 2
jne 0x1400bf420
mov r14, r12
mov r12, qword [r12 + 0x38]
mov rdx, qword [r14 + 0x20]
mov rax, qword [r14 + 0x28]
mov rcx, qword [rsp + 0x1c0]
mov qword [rsp + 0x2c0], rcx
mov qword [rsp + 0x2c8], rsi
mov qword [rsp + 0x2d0], r13
mov word [rsp + 0x2d8], r9w
mov word [rsp + 0x2da], bp
mov byte [rsp + 0x2dc], r15b
mov byte [rsp + 0x2dd], bl
lea rcx, [rsp + 0xf0]
lea r8, [rsp + 0x2c0]
mov r9, r12
call qword [rax + 0x18]
cmp qword [rsp + 0xf0], 0
je 0x1400bf46d
cmp byte [rsp + 0xf8], 5
mov r12, r14
mov rbx, qword [rsp + 0x70]
jne 0x1400bf398
cmp qword [r12], 0
je 0x1400bf398
mov rax, qword [r12 + 8]
sub rax, r13
jae 0x1400bf490
mov rbp, qword [rsp + 0xf8]
mov r10, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x108]
mov eax, ecx
shr eax, 0x10
mov dword [rsp + 0x98], eax
mov rax, rcx
shr rax, 0x20
mov qword [rsp + 0x1f0], rax
mov rax, rcx
shr rax, 0x28
mov qword [rsp + 0x228], rax
mov rax, rcx
mov qword [rsp + 0x208], rcx
shr rcx, 0x30
mov qword [rsp + 0x258], rcx
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x220], rax
movabs rax, 0x8000000000000015
lea r8, [rax - 0x14]
jmp 0x1400bf559
and qword [rsp + 0x220], 0xffffffffffffff00
mov edi, ebx
mov qword [rsp + 0x228], rdi
mov eax, r15d
mov qword [rsp + 0x1f0], rax
mov ebx, ebp
mov dword [rsp + 0x98], ebx
mov ebp, r9d
mov qword [rsp + 0x208], rbp
mov r10, r13
mov rbp, rsi
mov rbx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x1c0]
jmp 0x1400bf561
lea rax, [r12 + 1]
mov qword [r14 + 0x38], rax
cmp byte [r14 + 0x40], 0
mov rbx, qword [rsp + 0x70]
je 0x1400bf4ca
xor eax, eax
cmp r12, 0xffffffffffff0000
sete al
jmp 0x1400bf4db
mov qword [r12], 1
mov qword [r12 + 8], rax
lea rcx, [rsp + 0xf8]
call fcn.1400c74c0
movabs rax, 0x8000000000000015
lea r8, [rax - 0x15]
mov rbp, qword [rsp + 0x38]
mov r10, qword [rsp + 0x80]
jmp 0x1400bf559
xor eax, eax
cmp r12, 0xffffffffffff0000
sete al
mov byte [r14 + 0x40], 1
mov r8, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0x100]
mov r10, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x110]
mov ecx, edx
shr ecx, 0x10
mov dword [rsp + 0x98], ecx
mov rcx, rdx
shr rcx, 0x20
mov qword [rsp + 0x1f0], rcx
mov rcx, rdx
shr rcx, 0x28
mov qword [rsp + 0x228], rcx
mov rcx, rdx
mov qword [rsp + 0x208], rdx
shr rdx, 0x30
mov qword [rsp + 0x258], rdx
mov rcx, qword [rsp + 0x220]
and rcx, 0xffffffffffffff00
or rcx, rax
mov qword [rsp + 0x220], rcx
mov r12, r14
mov rcx, qword [rsp + 0xb0]
movabs rax, 0x8000000000000000
cmp r8, rax
mov r13, qword [rsp + 0xa8]
mov r14, r10
je 0x1400bf7ee
movabs rax, 0x8000000000000001
cmp r8, rax
je 0x1400bf80f
mov rsi, qword [r12 + 0x358]
cmp rsi, 2
je 0x1400bf5ae
cmp byte [rsp + 0x1f0], 2
jne 0x1400bf88e
cmp byte [rsp + 0x1f0], 2
jne 0x1400bf98f
cmp esi, 2
jne 0x1400bf5e0
cmp r10, 4
jae 0x1400bf657
mov r15, r13
mov r13, rbp
xor ebx, ebx
jmp 0x1400bf683
mov rcx, qword [r12 + 0x380]
mov rdi, rcx
add rdi, r10
jb 0x1400c2e0c
cmp rdi, qword [rsp + 0x1d8]
ja 0x1400c2e0c
mov r15, r13
mov r13, rbp
mov rbp, r8
add rcx, qword [rsp + 0xb8]
mov rdx, r13
mov r8, r10
call sub.msvcrt.dll_memcpy
mov rdx, qword [rsp + 0x280]
mov qword [r12 + 0x370], rdx
mov qword [r12 + 0x380], rdi
test rsi, rsi
je 0x1400bf728
mov rsi, qword [r12 + 0x360]
mov rax, qword [r12 + 0x378]
mov r10, r14
jmp 0x1400bf7a0
movzx esi, byte [rbp + 1]
movzx eax, word [rbp + 2]
shl eax, 0x10
shl esi, 8
or esi, eax
bswap esi
cmp esi, 0xffff
ja 0x1400c045b
mov r15, r13
mov r13, rbp
add esi, 4
mov ebx, 1
cmp qword [rsp + 0x1d8], r10
jb 0x1400c2e0c
mov rbp, r8
mov rcx, qword [rsp + 0xb8]
mov rdx, r13
mov r8, r10
call sub.msvcrt.dll_memcpy
mov r10, r14
mov qword [r12 + 0x358], rbx
mov qword [r12 + 0x360], rsi
mov qword [r12 + 0x368], 0
mov rdx, qword [rsp + 0x280]
mov qword [r12 + 0x370], rdx
mov qword [r12 + 0x378], 0
mov qword [r12 + 0x380], r14
mov rax, qword [rsp + 0x208]
mov word [r12 + 0x388], ax
mov eax, dword [rsp + 0x98]
mov word [r12 + 0x38a], ax
mov byte [r12 + 0x38c], 0
xor eax, eax
mov rdi, r14
test rbx, rbx
mov rbx, qword [rsp + 0x70]
jne 0x1400bf7a0
jmp 0x1400bf7b5
mov rax, qword [r12 + 0x378]
mov rcx, rdi
sub rcx, rax
jb 0x1400c2e0c
cmp rcx, 4
mov r10, r14
jae 0x1400bf749
xor ebx, ebx
jmp 0x1400bf779
mov rcx, qword [rsp + 0xb8]
movzx esi, byte [rcx + rax + 1]
movzx ecx, word [rcx + rax + 2]
shl ecx, 0x10
shl esi, 8
or esi, ecx
bswap esi
cmp esi, 0xffff
ja 0x1400c0a29
add esi, 4
mov ebx, 1
mov qword [r12 + 0x358], rbx
mov qword [r12 + 0x360], rsi
test rbx, rbx
mov rbx, qword [rsp + 0x70]
je 0x1400bf7b5
nop word cs:[rax + rax]
sub rdi, rax
mov eax, 0
cmovae rax, rdi
cmp rsi, rax
jbe 0x1400bfb01
mov rsi, qword [rsp + 0x1d8]
cmp rsi, rdx
jbe 0x1400bfa1c
test rbp, rbp
mov rbp, r13
mov r13, r15
je 0x1400befa0
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, rbp
call sub.kernel32.dll_HeapFree
mov r10, r14
jmp 0x1400befa0
cmp dword [r12 + 0x358], 2
jne 0x1400c0a4d
add r13, qword [rsp + 0x280]
mov r14, qword [rsp + 0x58]
jmp 0x1400bef77
mov rcx, qword [rsp + 0x208]
mov eax, ecx
shr eax, 8
mov dword [rsp + 0x48], eax
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x14]
mov rdx, rbp
mov qword [rsp + 0x90], rcx
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x78], rax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0xe0], rax
mov rax, r10
mov qword [rsp + 0x50], r10
jmp 0x1400bfcc9
mov r15, r13
mov r13, rbp
mov rbp, r8
mov word [rsp + 0x2c0], 0x1b08
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2c0]
call fcn.140079f40
mov rcx, qword [rsp + 0x1f8]
cmp byte [rcx], 0x14
je 0x1400bf8d0
call fcn.1400c74c0
mov rcx, qword [rsp + 0x1f8]
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
mov rdi, qword [rsp + 0x2c0]
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x2d0]
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0xe0], rax
mov eax, ecx
shr eax, 8
mov dword [rsp + 0x48], eax
mov eax, ecx
shr eax, 0x10
mov dword [rsp + 0x44], eax
mov rax, rcx
shr rax, 0x20
mov qword [rsp + 0x78], rax
mov rax, rcx
shr rax, 0x28
mov qword [rsp + 0xa0], rax
mov rax, rcx
mov qword [rsp + 0x90], rcx
shr rcx, 0x30
mov qword [rsp + 0xe8], rcx
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x14]
test rbp, rbp
je 0x1400bfcbd
mov rcx, qword [0x14024d108]
xor edx, edx
mov rbp, r13
mov r8, r13
call sub.kernel32.dll_HeapFree
mov rdx, rdi
jmp 0x1400bfcc3
add r13, rcx
add r13, qword [rsp + 0x3c0]
mov rax, qword [rsp + 0x208]
mov ecx, eax
shr ecx, 8
mov dword [rsp + 0x48], ecx
mov rcx, qword [rsp + 0xe0]
and rcx, 0xffffffffff000000
or rcx, 0x100
mov qword [rsp + 0xe0], rcx
mov rdx, rbp
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x78], rax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x44], eax
mov rax, r10
mov qword [rsp + 0x50], r10
mov rsi, r8
jmp 0x1400bfcc9
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x15]
mov r8, rbp
mov rbp, r13
mov r13, r15
test r8, r8
je 0x1400bfce0
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, rbp
call sub.kernel32.dll_HeapFree
mov r10, r14
jmp 0x1400bfce0
xor eax, eax
mov qword [rsp + 0x78], rax
mov rcx, qword [rsp + 0xa8]
add rcx, qword [rsp + 0x280]
mov rax, rsi
shr rax, 8
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0xe0]
and rax, 0xffffffffff000000
or rax, 0x100
mov qword [rsp + 0xe0], rax
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x88], rsi
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x90], rax
mov edi, ebx
mov qword [rsp + 0xa0], rdi
mov ebx, ebp
mov dword [rsp + 0x44], ebx
mov qword [rsp + 0x50], r13
mov r13, rcx
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x38]
mov r10, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x1c0]
movabs rax, 0x8000000000000000
cmp rdi, rax
jne 0x1400bfde0
jmp 0x1400c24ca
test rbp, rbp
mov rbp, r13
je 0x1400bfb1d
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, rbp
call sub.kernel32.dll_HeapFree
mov r10, r14
cmp qword [r12 + 0x358], 2
je 0x1400c2e0c
mov r13, r15
mov rdi, qword [r12 + 0x378]
mov qword [rsp + 0x50], rsi
jmp 0x1400bfb43
mov qword [rsp + 0x50], rax
mov r14, qword [rsp + 0x58]
sub r14, r13
jb 0x1400c2e0c
mov rbx, rdi
add rbx, qword [rsp + 0x50]
jb 0x1400c2e0c
cmp r14, rbx
jb 0x1400c2e0c
mov r15, r10
movzx eax, word [r12 + 0x388]
mov qword [rsp + 0x90], rax
movzx eax, word [r12 + 0x38a]
mov dword [rsp + 0x44], eax
cmp qword [rsp + 0x50], 0
je 0x1400bfbc3
mov r13, qword [rsp + 0x50]
js 0x1400c2e0c
movzx eax, byte [0x14024d119]
xor ecx, ecx
mov rdx, r13
call fcn.140082900
test rax, rax
je 0x1400c2e0c
mov rcx, r13
mov qword [rsp + 0x1c0], r13
jmp 0x1400bfbd7
mov eax, 1
xor ecx, ecx
mov qword [rsp + 0x1c0], rcx
mov r13, qword [rsp + 0x50]
mov rcx, qword [rsp + 0xb8]
lea rdx, [rcx + rdi]
mov rcx, rax
mov qword [rsp + 0x88], rax
mov r8, r13
call sub.msvcrt.dll_memcpy
mov rsi, qword [rsp + 0x270]
movabs rax, 0xffffff0000000000
and rsi, rax
movabs rax, 0x200000000
or rsi, rax
mov rax, qword [r12 + 0x380]
mov rcx, rax
sub rcx, rdi
mov edx, 0
cmovae rdx, rcx
cmp rdx, r13
jbe 0x1400bfc82
mov qword [r12 + 0x378], rbx
mov rcx, rax
sub rcx, rbx
mov r13, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0x1c0]
jb 0x1400c2e0c
cmp r14, rax
jb 0x1400c2e0c
mov r10, r15
cmp rcx, 4
jae 0x1400bfd00
xor ecx, ecx
mov rax, qword [rsp + 0x3a0]
mov r8, qword [rsp + 0x58]
jmp 0x1400bfd34
mov qword [r12 + 0x358], 2
mov r13, qword [rsp + 0xa8]
add r13, qword [r12 + 0x370]
mov eax, 0x100
mov rbx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x1c0]
mov r10, r15
jmp 0x1400bfd53
mov rdx, rdi
mov rbp, r13
mov r13, r15
mov r10, r14
mov rax, rdx
mov qword [rsp + 0x88], rdx
shr rax, 8
mov qword [rsp + 0x1d0], rax
mov rdi, rsi
mov r8, qword [rsp + 0x58]
movabs rax, 0x8000000000000000
cmp rdi, rax
jne 0x1400bfde0
jmp 0x1400c24ca
mov rcx, qword [rsp + 0xb8]
movzx eax, byte [rcx + rbx + 1]
movzx ecx, word [rcx + rbx + 2]
shl ecx, 0x10
shl eax, 8
or eax, ecx
bswap eax
cmp eax, 0xffff
mov r8, qword [rsp + 0x58]
ja 0x1400c2b91
add eax, 4
mov ecx, 1
mov qword [r12 + 0x358], rcx
mov qword [rsp + 0x3a0], rax
mov qword [r12 + 0x360], rax
xor eax, eax
mov rbx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x88]
shr rcx, 8
mov qword [rsp + 0x1d0], rcx
mov rcx, qword [rsp + 0x270]
mov rdx, rcx
shr rdx, 0x28
mov qword [rsp + 0xa0], rdx
shr rcx, 0x30
mov qword [rsp + 0xe8], rcx
mov rcx, qword [rsp + 0xe0]
and rcx, 0xffffffffff000000
add rcx, rax
add rcx, 0x10000
mov qword [rsp + 0xe0], rcx
mov al, 2
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x270], rsi
movabs rax, 0x8000000000000000
cmp rdi, rax
je 0x1400c24ca
nop word cs:[rax + rax]
movabs rax, 0x8000000000000001
cmp rdi, rax
mov rsi, qword [rsp + 0xe0]
je 0x1400c261e
mov r15, r8
mov r14, r10
test sil, sil
je 0x1400bfe4b
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.1400677a0
mov qword [rsp + 0xa8], r13
test esi, 0xff0000
je 0x1400bfe63
mov qword [r12], 0
mov eax, esi
shr eax, 8
mov byte [r12 + 0x32d], al
mov rax, qword [rsp + 0x1d0]
shl rax, 8
movzx r13d, byte [rsp + 0x88]
or r13, rax
mov rcx, qword [rsp + 0x78]
test cl, cl
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
mov qword [rsp + 0x80], r14
je 0x1400bff16
mov rsi, rdi
movzx eax, byte [rsp + 0x90]
movzx r10d, byte [rsp + 0x48]
shl r10d, 8
or r10d, eax
movabs rax, 0x8000000000000015
lea rdi, [rax - 0x11]
cmp cl, 1
je 0x1400c0070
movzx eax, cl
cmp eax, 2
lea rbx, [rsp + 0xf0]
mov r15, qword [rsp + 0x68]
je 0x1400bffdd
cmp eax, 3
jne 0x1400c00ef
movabs rax, 0x8000000000000015
lea rdi, [rax - 0x12]
mov qword [rsp + 0x218], rsi
mov rax, qword [rsp + 0x50]
jmp 0x1400c0585
cmp byte [r12 + 0x32f], 0
jne 0x1400bff6a
cmp word [r12 + 0x328], 5
jne 0x1400bff6a
cmp qword [rsp + 0x50], 1
jne 0x1400c0109
cmp byte [r13], 1
jne 0x1400c0109
movzx eax, byte [r12 + 0x336]
cmp al, 3
jae 0x1400c0109
mov r10, r14
inc al
mov byte [r12 + 0x336], al
mov sil, 0x14
jmp 0x1400c0420
movzx eax, byte [rsp + 0x90]
movzx r10d, byte [rsp + 0x48]
shl r10d, 8
or r10d, eax
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x1400c018e
mov eax, 1
cmp byte [r13], 1
movabs rcx, 0x8000000000000015
lea rbx, [rsp + 0xf0]
jne 0x1400c01e3
cmp rdx, 1
mov r15, qword [rsp + 0x250]
mov r12, qword [rsp + 0x248]
mov rsi, rdi
jne 0x1400c0488
lea rdi, [rcx - 0x13]
mov rax, qword [rsp + 0x218]
jmp 0x1400c04ab
mov dil, 0xb
cmp qword [rsp + 0x50], 0
mov qword [rsp + 0xb0], r13
mov dword [rsp + 0xb8], r10d
je 0x1400c01ba
mov qword [rsp + 0x38], rbp
movzx ebp, byte [r13]
lea eax, [rbp + 2]
mov edi, 0x13
cmp al, 0x1a
movabs rdx, 0x8000000000000015
ja 0x1400c002a
movzx eax, al
lea rcx, [0x14020c1e0]
mov rdi, qword [rcx + rax*8]
mov byte [rsp + 0x9e], dil
mov byte [rsp + 0x9f], bpl
mov r8, qword [rsp + 0x50]
cmp r8, 4
jae 0x1400c024e
mov r14d, 3
xor r13d, r13d
lea rax, [0x1401cd32d]
xor ecx, ecx
mov rbp, qword [rsp + 0x38]
mov r12, qword [rsp + 0x210]
mov dil, 0xb
jmp 0x1400c028e
mov r8, qword [rsp + 0x50]
test r8, r8
lea rbx, [rsp + 0xf0]
je 0x1400c01fb
mov ebx, r10d
movzx eax, byte [r13]
xor ecx, ecx
cmp rax, 2
setne cl
inc rcx
cmp rax, 1
mov edx, 0
cmovne rdx, rcx
cmp r8, 1
movabs r10, 0x8000000000000015
mov r15, qword [rsp + 0x250]
mov r12, qword [rsp + 0x248]
jne 0x1400c03d2
mov eax, 0x10
mov qword [rsp + 0x28], rax
lea rax, str.AlertDescription_
mov rcx, rax
mov r10d, ebx
lea rbx, [rsp + 0xf0]
jmp 0x1400c021f
mov r15, qword [rsp + 0x250]
mov r12, qword [rsp + 0x248]
mov eax, 2
jmp 0x1400c04ab
mov rsi, rdi
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0x10001
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.1400677a0
mov byte [r12 + 0x331], 1
mov rcx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x1b0]
call qword [rdi]
mov byte [rsp + 0x37], 0x14
cmp qword [rdi + 8], 0
je 0x1400c0246
cmp qword [rdi + 0x10], 0x11
jae 0x1400c0400
mov r8, qword [rsp + 0x60]
jmp 0x1400c0409
mov rsi, rdi
mov r15d, 2
mov eax, 0xb
lea r12, [0x1401cd32b]
movabs rcx, 0x8000000000000015
lea rbx, [rsp + 0xf0]
jmp 0x1400c049a
mov r14d, 0xd
xor r13d, r13d
lea rax, str.HandshakeTypeCipherSuiteSignatureSchemeRsaParameterspadding_alg
xor ecx, ecx
movabs rdx, 0x8000000000000015
mov r12, qword [rsp + 0x210]
jmp 0x1400c028e
mov rsi, rdi
mov r15, qword [rsp + 0x250]
mov r12, qword [rsp + 0x248]
jmp 0x1400c049a
mov eax, 0xa
mov qword [rsp + 0x28], rax
lea rax, [0x1401ccaf3]
mov rcx, rax
mov r15, qword [rsp + 0x250]
mov r12, qword [rsp + 0x248]
movzx eax, al
and rcx, 0xffffffffffffff00
or rcx, rax
mov eax, 0xb
mov qword [rsp + 0x1b8], rcx
mov qword [rsp + 0x3a8], rcx
jmp 0x1400c04ab
mov rdi, rsi
jmp 0x1400c041a
movzx eax, byte [r13 + 1]
movzx ecx, word [r13 + 2]
shl ecx, 0x10
shl eax, 8
or eax, ecx
mov r12d, eax
bswap r12d
lea rcx, [r8 - 4]
cmp rcx, r12
jae 0x1400c0973
mov dil, 0xa
xor r14d, r14d
mov r12, qword [rsp + 0x210]
mov rax, r12
xor r13d, r13d
xor ecx, ecx
mov rbp, qword [rsp + 0x38]
mov r10, rdx
mov r8, rdx
shl rcx, 0x10
movzx edx, r13b
shl edx, 8
or rdx, rcx
movzx edi, dil
or rdi, rdx
mov qword [rsp + 0x28], r10
cmp r10, r8
jne 0x1400c02ef
lea rbx, [r8 - 0x11]
test rsi, rsi
je 0x1400c0518
mov qword [rsp + 0x1b8], rax
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, qword [rsp + 0xb0]
call sub.kernel32.dll_HeapFree
movzx r9d, byte [rsp + 0x24]
movzx r11d, byte [rsp + 0x25]
jmp 0x1400c0520
mov rcx, qword [rsp + 0x330]
mov qword [rsp + 0x4b0], rcx
movaps xmm0, xmmword [rsp + 0x320]
movaps xmmword [rsp + 0x4a0], xmm0
movaps xmm0, xmmword [rsp + 0x310]
movaps xmmword [rsp + 0x490], xmm0
movaps xmm0, xmmword [rsp + 0x300]
movaps xmmword [rsp + 0x480], xmm0
movdqa xmm0, xmmword [rsp + 0x2c0]
movdqa xmm1, xmmword [rsp + 0x2d0]
movaps xmm2, xmmword [rsp + 0x2e0]
movaps xmm3, xmmword [rsp + 0x2f0]
movaps xmmword [rsp + 0x470], xmm3
movaps xmmword [rsp + 0x460], xmm2
movdqa xmmword [rsp + 0x450], xmm1
movdqa xmmword [rsp + 0x440], xmm0
mov ecx, dword [rsp + 0xf0]
mov dword [rsp + 0x268], ecx
movzx ecx, word [rsp + 0xf4]
mov word [rsp + 0x26c], cx
mov qword [rsp + 0x3f8], r14
mov qword [rsp + 0x3f0], rdi
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x1b8], rcx
movzx r11d, byte [rsp + 0x27]
movzx r9d, byte [rsp + 0x26]
mov r13, qword [rsp + 0xa8]
mov rdi, rsi
mov rcx, qword [rsp + 0xb0]
jmp 0x1400c053e
movzx ecx, byte [r13 + 1]
mov r8d, 0x220000
cmp rcx, 0x78
ja case.0x1400c03f5.1
lea r14, [0x1401b0210]
movsxd r9, dword [r14 + rcx*4]
add r9, r14
jmp r9
xor r8d, r8d
jmp case.0x1400c03f5.1
mov rax, qword [rsp + 0x60]
mov r8, qword [rax - 8]
mov rdi, rsi
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov r10, r14
mov sil, 8
test rdi, rdi
je 0x1400c0439
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, r13
call sub.kernel32.dll_HeapFree
mov r10, r14
mov r13, qword [rsp + 0xa8]
mov r14, r15
cmp sil, 0x14
mov rax, qword [rsp + 0x1b8]
je 0x1400bef17
jmp 0x1400c29f5
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x14]
mov al, 2
mov qword [rsp + 0x88], rax
xor eax, eax
mov qword [rsp + 0x50], rax
test r8, r8
jne 0x1400bfa3c
jmp 0x1400bfce0
mov r15d, 0x17
mov eax, 0xe
lea r12, str.ChangeCipherSpecPayloadu8u24u32received_unexpected_message:_got__when_expecting
lea rdi, [rcx - 0x11]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x1b8], r12
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x248], r12
mov qword [rsp + 0x250], r15
test rsi, rsi
je 0x1400c04eb
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, r13
mov esi, r10d
call sub.kernel32.dll_HeapFree
mov r10d, esi
movzx r9d, byte [rsp + 0x24]
movzx r11d, byte [rsp + 0x25]
mov r12, qword [rsp + 0x210]
mov r15, qword [rsp + 0x68]
mov r13, qword [rsp + 0xa8]
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffef
cmp rdi, rax
jne 0x1400c0568
jmp 0x1400c2893
mov qword [rsp + 0x1b8], rax
mov rax, r15
mov qword [rsp + 0x28], r14
mov rcx, rdi
mov rdi, rbx
lea rbx, [rsp + 0xf0]
mov r13, qword [rsp + 0xa8]
mov r15, rax
mov qword [rsp + 0x218], rcx
mov r10d, dword [rsp + 0xb8]
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffef
cmp rdi, rax
je 0x1400c2893
mov rax, qword [rsp + 0x28]
mov r13, qword [rsp + 0x1b8]
mov qword [rsp + 0x210], r12
mov r12, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x218]
mov r14, rbx
shr r14, 0x18
mov esi, ebx
shr esi, 0x10
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x538], r15
mov rcx, qword [rsp + 0x3f8]
mov qword [rsp + 0x540], rcx
mov rcx, qword [rsp + 0x4b0]
lea rdx, [rsp + 0x548]
mov qword [rdx + 0x70], rcx
movaps xmm0, xmmword [rsp + 0x4a0]
movups xmmword [rdx + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x490]
movups xmmword [rdx + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x480]
movups xmmword [rdx + 0x40], xmm0
movdqa xmm0, xmmword [rsp + 0x440]
movdqa xmm1, xmmword [rsp + 0x450]
movaps xmm2, xmmword [rsp + 0x460]
movaps xmm3, xmmword [rsp + 0x470]
movups xmmword [rdx + 0x30], xmm3
movups xmmword [rdx + 0x20], xmm2
movdqu xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx], xmm0
mov byte [rsp + 0x5c0], r11b
mov byte [rsp + 0x5c1], r9b
movzx ecx, word [rsp + 0x26c]
mov word [rdx + 0x7e], cx
mov ecx, dword [rsp + 0x268]
mov dword [rdx + 0x7a], ecx
mov qword [rsp + 0x510], rdi
mov byte [rsp + 0x518], bl
mov byte [rsp + 0x519], bh
mov byte [rsp + 0x51a], sil
mov rcx, rbx
shr rcx, 0x38
mov byte [rsp + 0x51f], cl
mov dword [rsp + 0x51b], r14d
mov qword [rsp + 0x520], r13
mov qword [rsp + 0x528], rax
mov rax, qword [rsp + 0x3f0]
mov qword [rsp + 0x530], rax
mov word [rsp + 0x5c8], r10w
mov eax, dword [rsp + 0x44]
mov word [rsp + 0x5ca], ax
movabs rax, 0x8000000000000015
lea r15, [rax - 0x15]
cmp rdi, r15
mov byte [rsp + 0x25], r11b
mov byte [rsp + 0x24], r9b
jne 0x1400c070e
cmp bl, 2
mov r13, qword [rsp + 0xa8]
je 0x1400c290a
test sil, sil
je 0x1400c07e6
test bl, bl
jne 0x1400c2969
cmp sil, 0x17
je 0x1400c07ef
cmp word [r12 + 0x328], 5
jne 0x1400c07ef
jmp 0x1400c2929
mov r8d, 0xc0
lea rcx, [rsp + 0x2c0]
lea rdx, [rsp + 0x510]
call sub.msvcrt.dll_memcpy
cmp byte [r12 + 0x32f], 0
mov rbx, qword [rsp + 0x70]
mov r14, qword [rsp + 0x58]
mov r13, qword [rsp + 0xa8]
je 0x1400c082a
cmp word [r12 + 0x328], 5
je 0x1400c082a
mov rax, qword [rsp + 0x2c0]
xor rax, r15
cmp rax, 4
setae cl
cmp rax, 1
sete al
or al, cl
cmp byte [r12 + 0x32c], 0
movzx ecx, byte [rsp + 0x370]
je 0x1400c081b
cmp cl, 1
sete cl
test al, cl
je 0x1400c082a
mov word [rsp + 0x1a8], 4
mov qword [rsp + 0xf0], r15
mov dword [rsp + 0xf8], 0x180000
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.1400677a0
lea rcx, [rsp + 0x2c0]
call fcn.1400c2e90
mov sil, 0x14
jmp 0x1400c0954
mov byte [r12 + 0x332], 1
lea rcx, [rsp + 0x510]
call fcn.1400c2e90
mov rbx, qword [rsp + 0x70]
mov r10, qword [rsp + 0x80]
mov rax, qword [rsp + 0x1b8]
mov r14, qword [rsp + 0x58]
jmp 0x1400bef17
test cl, cl
sete cl
and al, cl
cmp al, 1
je 0x1400c079a
mov qword [rsp + 0x440], r12
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0x448], rax
mov r8d, 0xc0
lea rdi, [rsp + 0xf0]
mov rcx, rdi
lea rdx, [rsp + 0x510]
call sub.msvcrt.dll_memcpy
lea rcx, [rsp + 0x288]
mov rdx, qword [rsp + 0x60]
lea r8, [rsp + 0x440]
mov r9, rdi
mov rax, qword [rsp + 0x1b0]
call qword [rax + 0x18]
movzx esi, byte [rsp + 0x288]
cmp esi, 2
jae 0x1400c08cd
mov word [rsp + 0x1a8], 4
mov qword [rsp + 0xf0], r15
mov dword [rsp + 0xf8], 0x10001
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
mov rdx, rdi
call fcn.1400677a0
mov byte [r12 + 0x331], 1
jmp 0x1400c08f1
cmp esi, 0x14
jne 0x1400c08f1
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1b0], rax
jmp 0x1400c0954
movzx eax, byte [rsp + 0x289]
mov byte [rsp + 0x37], al
movzx eax, byte [rsp + 0x28a]
mov byte [rsp + 0x4f], al
mov eax, dword [rsp + 0x28b]
movzx ecx, byte [rsp + 0x28f]
shl rcx, 0x20
or rcx, rax
mov qword [rsp + 0x3b0], rcx
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1b0], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x2a8], rax
mov r10, qword [rsp + 0x80]
cmp sil, 0x14
mov rax, qword [rsp + 0x1b8]
je 0x1400bef17
jmp 0x1400c29f5
lea rcx, [r12 + 4]
cmp rcx, r8
ja 0x1400c2e0c
lea rcx, [r13 + 4]
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x238], r12
mov qword [rsp + 0x240], 0
cmp dil, 0x12
ja case.0x1400c09b9.3
movzx ecx, dil
lea rdx, [0x1401b0174]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
test eax, eax
je 0x1400c15c4
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.140064630
movzx r8d, byte [rsp + 0xf0]
lea r10, [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf1]
mov eax, dword [rsp + 0xf2]
movzx ecx, word [rsp + 0xf6]
shl rcx, 0x20
or rcx, rax
movups xmm0, xmmword [r10]
movaps xmmword [rsp + 0xc0], xmm0
movabs rax, 0x8000000000000015
lea rdx, [rax - 1]
jmp 0x1400c0e11
mov al, 1
jmp 0x1400bfa57
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x14]
mov al, 2
mov qword [rsp + 0x88], rax
xor eax, eax
mov qword [rsp + 0x50], rax
jmp 0x1400bfa2a
mov word [rsp + 0x2c0], 0x2708
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2c0]
call fcn.140079f40
mov rcx, qword [rsp + 0x1f8]
cmp byte [rcx], 0x14
je 0x1400c0a86
call fcn.1400c74c0
mov rcx, qword [rsp + 0x1f8]
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
mov rdx, qword [rsp + 0x2c0]
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x2d0]
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0xe0], rax
mov eax, ecx
shr eax, 8
mov dword [rsp + 0x48], eax
mov eax, ecx
shr eax, 0x10
mov dword [rsp + 0x44], eax
mov rax, rcx
shr rax, 0x20
mov qword [rsp + 0x78], rax
mov rax, rcx
shr rax, 0x28
mov qword [rsp + 0xa0], rax
mov rax, rcx
mov qword [rsp + 0x90], rcx
shr rcx, 0x30
mov qword [rsp + 0xe8], rcx
movabs rax, 0x8000000000000015
lea rsi, [rax - 0x14]
jmp 0x1400bfcc6
mov r8d, 0x200000
jmp case.0x1400c03f5.1
mov r8d, 0x120000
jmp case.0x1400c03f5.1
mov r8d, 0x150000
jmp case.0x1400c03f5.1
mov r8d, 0xd0000
jmp case.0x1400c03f5.1
mov r8d, 0x190000
jmp case.0x1400c03f5.1
mov r8d, 0x210000
jmp case.0x1400c03f5.1
mov r8d, 0x80000
jmp case.0x1400c03f5.1
mov r8d, 0x170000
jmp case.0x1400c03f5.1
mov r8d, 0xa0000
jmp case.0x1400c03f5.1
mov r8d, 0x1c0000
jmp case.0x1400c03f5.1
mov r8d, 0x160000
jmp case.0x1400c03f5.1
mov r8d, 0xc0000
jmp case.0x1400c03f5.1
mov r8d, 0x130000
jmp case.0x1400c03f5.1
mov r8d, 0x1d0000
jmp case.0x1400c03f5.1
mov r8d, 0x1f0000
jmp case.0x1400c03f5.1
mov r8d, 0x10000
jmp case.0x1400c03f5.1
mov r8d, 0x20000
jmp case.0x1400c03f5.1
mov r8d, 0x40000
jmp case.0x1400c03f5.1
mov r8d, 0xb0000
jmp case.0x1400c03f5.1
mov r8d, 0x50000
jmp case.0x1400c03f5.1
mov r8d, 0x30000
jmp case.0x1400c03f5.1
mov r8d, 0x180000
jmp case.0x1400c03f5.1
mov r8d, 0xe0000
jmp case.0x1400c03f5.1
mov r8d, 0xf0000
jmp case.0x1400c03f5.1
mov r8d, 0x60000
jmp case.0x1400c03f5.1
mov r8d, 0x70000
jmp case.0x1400c03f5.1
mov r8d, 0x1e0000
jmp case.0x1400c03f5.1
mov r8d, 0x90000
jmp case.0x1400c03f5.1
mov r8d, 0x110000
jmp case.0x1400c03f5.1
mov r8d, 0x100000
jmp case.0x1400c03f5.1
mov r8d, 0x140000
jmp case.0x1400c03f5.1
mov r8d, 0x1b0000
jmp case.0x1400c03f5.1
mov r8d, 0x1a0000
cmp qword [rsp + 0x50], 2
jbe 0x1400c0c8f
mov eax, 0x13
mov qword [rsp + 0x28], rax
lea rcx, [0x1401ce909]
mov eax, 0xe
movzx r9d, byte [rsp + 0x24]
mov r10d, ebx
lea rbx, [rsp + 0xf0]
jmp 0x1400c0231
movabs r9, 0xffffffff00000000
mov rdi, qword [rsp + 0x3a8]
and rdi, r9
or rdi, r8
shl eax, 8
or rax, rdi
shl ecx, 0x18
or rcx, rax
or rcx, rdx
mov eax, ecx
and eax, 0xffffff03
mov rdx, qword [rsp + 0x218]
and rdx, r9
or rdx, rax
mov rax, rdx
lea rdi, [r10 - 0x15]
mov qword [rsp + 0x3a8], rcx
movzx r9d, byte [rsp + 0x24]
mov r10d, ebx
lea rbx, [rsp + 0xf0]
jmp 0x1400c04ab
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.140064630
movzx r8d, byte [rsp + 0xf0]
lea r10, [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf1]
mov eax, dword [rsp + 0xf2]
movzx ecx, word [rsp + 0xf6]
shl rcx, 0x20
or rcx, rax
movups xmm0, xmmword [r10]
movaps xmmword [rsp + 0xc0], xmm0
movabs rax, 0x8000000000000015
lea rdx, [rax - 4]
mov dil, 0xe
jmp 0x1400c0e11
test eax, eax
je 0x1400c1593
xor r13d, r13d
mov dil, 0xe
mov r14d, 0xf
lea rax, [0x1402079d9]
xor ecx, ecx
mov rbp, qword [rsp + 0x38]
movabs rdx, 0x8000000000000015
jmp 0x1400c028e
test eax, eax
je 0x1400c15a6
xor r13d, r13d
mov dil, 0xe
mov r14d, 0xe
lea rax, [0x140207984]
xor ecx, ecx
mov rbp, qword [rsp + 0x38]
movabs rdx, 0x8000000000000015
jmp 0x1400c028e
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.140064630
movzx r8d, byte [rsp + 0xf0]
lea r10, [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf1]
mov eax, dword [rsp + 0xf2]
movzx ecx, word [rsp + 0xf6]
shl rcx, 0x20
or rcx, rax
movups xmm0, xmmword [r10]
movaps xmmword [rsp + 0xc0], xmm0
movabs rax, 0x8000000000000015
lea rdx, [rax - 9]
mov dil, 0xd
jmp 0x1400c16a3
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.140040460
mov r11, qword [rsp + 0xf0]
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x15]
mov eax, dword [rsp + 0xfa]
movzx ecx, word [rsp + 0xfe]
shl rcx, 0x20
or rcx, rax
movzx edi, byte [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf9]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r11, rdx
je 0x1400c1573
lea r10, [rsp + 0xf8]
mov rdx, qword [r10 + 0x38]
mov qword [rsp + 0x500], rdx
movups xmm0, xmmword [r10 + 0x18]
movups xmm1, xmmword [r10 + 0x28]
movaps xmmword [rsp + 0x4f0], xmm1
movaps xmmword [rsp + 0x4e0], xmm0
movq xmm0, qword [rsp + 0x138]
mov edx, dword [rsp + 0x13c]
mov r8, qword [rsp + 0x140]
mov qword [rsp + 0x1d8], r8
movups xmm1, xmmword [r10 + 0x50]
movaps xmmword [rsp + 0x430], xmm1
movq xmm8, qword [rsp + 0x158]
mov r9d, dword [r10 + 0x6c]
mov dword [rsp + 0x2b8], r9d
mov r9, qword [r10 + 0x64]
mov qword [rsp + 0x2b0], r9
movups xmm1, xmmword [r10 + 0x70]
movups xmm2, xmmword [r10 + 0x80]
movaps xmmword [rsp + 0x4d0], xmm2
movaps xmmword [rsp + 0x4c0], xmm1
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], r14
mov r14d, edx
mov rax, qword [rsp + 0x4e0]
mov qword [rsp + 0xd0], rax
lea rax, [rsp + 0x4e8]
movdqu xmm1, xmmword [rax]
movups xmm2, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x390], xmm2
movdqa xmmword [rsp + 0x380], xmm1
mov r8, rdi
mov dil, 1
mov rdx, r11
jmp 0x1400c16a3
mov r14d, 0x11
xor r13d, r13d
lea rax, [0x140207992]
jmp 0x1400c13b8
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.140053600
mov r9, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0xf8]
movabs r8, 0x8000000000000015
lea rcx, [r8 - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r9, rcx
je 0x1400c140d
mov r13d, r9d
shr r13d, 8
mov rcx, r9
shr rcx, 0x10
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
lea rdx, [r8 - 0xc]
mov r8, r9
mov dil, 0xc
jmp 0x1400c169b
mov rcx, rbx
lea rdx, [rsp + 0x230]
cmp r10w, 5
jne 0x1400c13d1
call fcn.1400431e0
mov r8, qword [rsp + 0xf0]
mov r9, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r8, rcx
jne 0x1400c15e1
mov r13d, r9d
shr r13d, 8
mov rcx, r9
shr rcx, 0x10
mov edi, r9d
jmp 0x1400c1573
mov rcx, rbx
lea rdi, [rsp + 0x230]
mov rdx, rdi
call fcn.14006aef0
mov rax, qword [rsp + 0xf0]
movq xmm8, qword [rsp + 0xf8]
cmp rax, 0x14
jne 0x1400c1422
mov rcx, rbx
mov rdx, rdi
call fcn.14003f740
cmp byte [rsp + 0xf0], 0
je 0x1400c1cb0
mov rdi, qword [rsp + 0xf8]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
mov rbp, qword [rsp + 0x38]
jmp 0x1400c1de0
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.14003ec90
mov eax, dword [rsp + 0xfa]
movzx ecx, word [rsp + 0xfe]
shl rcx, 0x20
or rcx, rax
cmp qword [rsp + 0xf0], 0
movzx edi, byte [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf9]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
jne 0x1400c1573
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 6]
mov r8, rdi
mov dil, 7
jmp 0x1400c169b
mov rcx, rbx
lea rdx, [rsp + 0x230]
cmp r10w, 5
jne 0x1400c1474
call fcn.1400419f0
mov r8, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r8, rcx
je 0x1400c140d
lea r10, [rsp + 0xf8]
movups xmm0, xmmword [r10 + 0x18]
movaps xmmword [rsp + 0x380], xmm0
mov r13d, r8d
shr r13d, 8
mov rcx, r8
shr rcx, 0x10
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x10]
mov dil, 8
jmp 0x1400c0e11
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.1400438b0
mov eax, dword [rsp + 0xfa]
movzx ecx, word [rsp + 0xfe]
shl rcx, 0x20
or rcx, rax
cmp qword [rsp + 0xf0], 0
movzx edi, byte [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf9]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
jne 0x1400c1573
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 3]
mov r8, rdi
mov dil, 0x10
jmp 0x1400c169b
mov rcx, rbx
lea rdx, [rsp + 0x230]
call fcn.14004c090
mov rcx, qword [rsp + 0xf0]
movzx r8d, byte [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf9]
cmp rcx, 0x14
jne 0x1400c14e8
movabs rax, 0x8000000000000015
lea rdx, [rax - 5]
mov dil, 0x11
jmp 0x1400c169b
mov rcx, rbx
lea rdx, [rsp + 0x230]
cmp r10w, 5
jne 0x1400c1526
call fcn.1400429f0
mov r8, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r8, rcx
je 0x1400c140d
lea r10, [rsp + 0xf8]
movups xmm0, xmmword [r10 + 0x18]
movaps xmmword [rsp + 0x380], xmm0
mov r13d, r8d
shr r13d, 8
mov rcx, r8
shr rcx, 0x10
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 0xd]
mov dil, 0xa
jmp 0x1400c0e11
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0x230]
call fcn.140064630
movabs rax, 0x8000000000000015
lea rdx, [rax - 0xf]
mov dil, 9
lea r10, [rsp + 0xf8]
xor r13d, r13d
movabs rcx, 0x800000000000
xor r8d, r8d
jmp 0x1400c16a3
mov r14d, 0xb
xor r13d, r13d
lea rax, [0x140207a3a]
xor ecx, ecx
mov rbp, qword [rsp + 0x38]
mov dil, 0xf
movabs rdx, 0x8000000000000015
jmp 0x1400c028e
call fcn.140043120
mov r8, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r8, rcx
jne 0x1400c1664
mov r13d, edx
shr r13d, 8
mov rcx, rdx
shr rcx, 0x10
mov edi, edx
jmp 0x1400c1573
mov r8, rax
mov r14, qword [rsp + 0x100]
mov eax, dword [rsp + 0xfc]
pextrw ecx, xmm8, 0
pextrw edx, xmm8, 1
shl edx, 0x10
or edx, ecx
shl rax, 0x20
or rax, rdx
xor r13d, r13d
xor ecx, ecx
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
mov rbp, qword [rsp + 0x38]
mov rdi, r8
movabs rdx, 0x8000000000000015
jmp 0x1400c028e
call fcn.14003d9d0
mov eax, dword [rsp + 0xfa]
movzx ecx, word [rsp + 0xfe]
shl rcx, 0x20
or rcx, rax
cmp qword [rsp + 0xf0], 0
movzx edi, byte [rsp + 0xf8]
movzx r13d, byte [rsp + 0xf9]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
jne 0x1400c1573
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x11]
mov r8, rdi
mov dil, 8
jmp 0x1400c169b
movzx edx, r8b
movzx r8d, r13b
movzx eax, word [rsp + 0xfe]
mov r9d, dword [rsp + 0xfa]
mov r14, qword [rsp + 0x100]
shl r8d, 8
or r8, rdx
shl r9, 0x10
shl rax, 0x30
or rax, r9
or rax, r8
xor r13d, r13d
mov edi, ecx
xor ecx, ecx
jmp 0x1400c1573
call fcn.140042670
mov r9, qword [rsp + 0xf0]
mov r8, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r9, rcx
jne 0x1400c18c0
mov r13d, r8d
shr r13d, 8
mov rcx, r8
shr rcx, 0x10
mov edi, r8d
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
mov rbp, qword [rsp + 0x38]
movabs rdx, 0x8000000000000015
jmp 0x1400c028e
movabs rax, 0x8000000000000015
lea rdx, [rax - 0xb]
mov dil, 0xb
jmp 0x1400c15b7
movabs rax, 0x8000000000000015
lea rdx, [rax - 0xa]
mov dil, 5
lea r10, [rsp + 0xf8]
jmp 0x1400c16a3
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x15]
xor edi, edi
lea r10, [rsp + 0xf8]
jmp 0x1400c16a3
lea r10, [rsp + 0xf8]
movups xmm0, xmmword [r10 + 0x18]
movdqu xmm1, xmmword [r10 + 0x28]
movdqa xmmword [rsp + 0x390], xmm1
movaps xmmword [rsp + 0x380], xmm0
movq xmm0, qword [rsp + 0x130]
mov edx, dword [rsp + 0x134]
mov rcx, qword [rsp + 0x138]
mov qword [rsp + 0x1d8], rcx
mov r13d, r8d
shr r13d, 8
mov rcx, r8
shr rcx, 0x10
mov qword [rsp + 0xc0], r9
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
mov r14d, edx
movabs rax, 0x8000000000000015
lea rdx, [rax - 7]
mov dil, 4
jmp 0x1400c1931
mov r13d, r8d
shr r13d, 8
mov rcx, r8
shr rcx, 0x10
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
movabs rax, 0x8000000000000015
lea rdx, [rax - 8]
mov dil, 4
lea r10, [rsp + 0xf8]
mov rax, qword [rsp + 0x240]
mov r9, rcx
shr r9, 0x20
lea r11, [rsp + 0x9e]
mov qword [rsp + 0x188], r11
mov qword [rsp + 0xf0], rdx
mov byte [rsp + 0xf8], r8b
mov byte [rsp + 0xf9], r13b
mov word [rsp + 0xfe], r9w
mov dword [rsp + 0xfa], ecx
mov rcx, qword [rsp + 0xd0]
mov qword [r10 + 0x18], rcx
movaps xmm1, xmmword [rsp + 0xc0]
movups xmmword [r10 + 8], xmm1
movaps xmm1, xmmword [rsp + 0x380]
movaps xmm2, xmmword [rsp + 0x390]
movups xmmword [r10 + 0x30], xmm2
movups xmmword [r10 + 0x20], xmm1
movd dword [rsp + 0x138], xmm0
mov dword [rsp + 0x13c], r14d
mov rcx, qword [rsp + 0x1d8]
mov qword [rsp + 0x140], rcx
movaps xmm0, xmmword [rsp + 0x430]
movups xmmword [r10 + 0x50], xmm0
movd dword [rsp + 0x158], xmm8
mov ecx, dword [rsp + 0x2b8]
mov dword [r10 + 0x6c], ecx
mov rcx, qword [rsp + 0x2b0]
mov qword [r10 + 0x64], rcx
movdqa xmm0, xmmword [rsp + 0x4c0]
movdqa xmm1, xmmword [rsp + 0x4d0]
movdqu xmmword [r10 + 0x80], xmm1
movdqu xmmword [r10 + 0x70], xmm0
cmp rax, qword [rsp + 0x238]
mov r8, rdx
jae 0x1400c17ef
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov rcx, r8
xor rcx, rax
cmp rcx, 0x15
mov edx, 1
cmovae rcx, rdx
mov dl, 0xe
mov qword [rsp + 0x1d8], rdx
cmp rcx, 0x13
ja case.default.0x1400c17e2
lea rdx, [0x1401b01c0]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
movzx edi, byte [rsp + 0x27]
jmp rcx
mov r14d, 0x17
jmp 0x1400c1aac
mov qword [rsp + 0x28], r8
mov rcx, qword [rsp + 0xf8]
mov rax, qword [rsp + 0x100]
mov r13d, ecx
shr r13d, 8
mov rdx, rcx
mov qword [rsp + 0x1d8], rcx
shr rcx, 0x10
mov r14, qword [rsp + 0x108]
movups xmm0, xmmword [r10 + 0x18]
movdqu xmm1, xmmword [r10 + 0x28]
movups xmm2, xmmword [r10 + 0x38]
movups xmm3, xmmword [r10 + 0x48]
movaps xmmword [rsp + 0x2c0], xmm0
movdqa xmmword [rsp + 0x2d0], xmm1
movaps xmmword [rsp + 0x2e0], xmm2
movaps xmmword [rsp + 0x2f0], xmm3
movups xmm0, xmmword [r10 + 0x58]
movaps xmmword [rsp + 0x300], xmm0
movups xmm0, xmmword [r10 + 0x68]
movaps xmmword [rsp + 0x310], xmm0
movdqu xmm0, xmmword [r10 + 0x78]
movdqa xmmword [rsp + 0x320], xmm0
mov rdx, qword [r10 + 0x88]
mov qword [rsp + 0x330], rdx
jmp 0x1400c1af4
mov r14d, 0x17
jmp 0x1400c1ad2
mov r14d, 0x17
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
call fcn.14003b540
jmp 0x1400c1aac
lea r10, [rsp + 0xf8]
movups xmm0, xmmword [r10 + 0x18]
movdqu xmm1, xmmword [r10 + 0x28]
movdqa xmmword [rsp + 0x390], xmm1
movaps xmmword [rsp + 0x380], xmm0
movq xmm0, qword [rsp + 0x130]
mov edx, dword [rsp + 0x134]
mov r13d, r9d
shr r13d, 8
mov rcx, r9
shr rcx, 0x10
mov qword [rsp + 0xc0], r8
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
mov r14d, edx
movabs rax, 0x8000000000000015
lea rdx, [rax - 0xe]
mov r8, r9
mov dil, 0xa
jmp 0x1400c16a3
mov r14d, 0x17
cmp qword [rsp + 0xf8], 0
je 0x1400c195d
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x120]
call fcn.14003b430
jmp 0x1400c1b6b
mov r14d, 0x17
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
call fcn.1400ab700
jmp 0x1400c1aac
mov r14d, 0x17
mov rcx, qword [rsp + 0xf8]
mov edi, 8
cmp rcx, rax
je 0x1400c19cf
mov edi, 0x20
test rcx, rcx
je 0x1400c19cf
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
cmp qword [rsp + rdi + 0xf8], 0
je 0x1400c1c69
mov r8, qword [rsp + rdi + 0x100]
jmp 0x1400c1c56
mov r14d, 0x17
test r8, r8
je 0x1400c1a0c
mov r8, qword [rsp + 0xf8]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
cmp qword [rsp + 0x108], 0
je 0x1400c1a2d
mov r8, qword [rsp + 0x110]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rcx, qword [rsp + 0x128]
mov rdx, qword [rsp + 0x130]
call fcn.14003b6d0
cmp qword [rsp + 0x120], 0
je 0x1400c1c69
mov r8, qword [rsp + 0x128]
jmp 0x1400c1c56
mov r14d, 0x17
cmp qword [rsp + 0xf8], 0
je 0x1400c1d68
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x14024d108]
xor r13d, r13d
xor edx, edx
call sub.kernel32.dll_HeapFree
jmp 0x1400c1d6b
mov r14d, 0x17
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
call fcn.14003b230
cmp qword [rsp + 0xf8], 0
je 0x1400c1ad2
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x14024d108]
xor r13d, r13d
xor edx, edx
call sub.kernel32.dll_HeapFree
jmp 0x1400c1ad5
xor r13d, r13d
movabs rax, 0x8000000000000015
mov qword [rsp + 0x28], rax
movzx eax, byte [rsp + 0x26]
mov ebp, eax
lea rax, [0x1401ccbc8]
xor ecx, ecx
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
mov edx, edi
mov byte [rsp + 0x27], dil
mov edx, ebp
mov byte [rsp + 0x26], bpl
movabs r8, 0x8000000000000015
mov rbp, qword [rsp + 0x38]
mov r10, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x1d8]
jmp 0x1400c0294
mov r14d, 0x17
cmp qword [rsp + 0xf8], 0
je 0x1400c1b56
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x120]
call fcn.14003b330
cmp qword [rsp + 0x110], 0
je 0x1400c1c69
mov r8, qword [rsp + 0x118]
jmp 0x1400c1c56
mov r14d, 0x17
cmp qword [rsp + 0xf8], 0
je 0x1400c1bae
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
cmp qword [rsp + 0x110], 0
je 0x1400c1bcf
mov r8, qword [rsp + 0x118]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rcx, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x138]
call fcn.14003b2e0
jmp 0x1400c1c43
mov r14d, 0x17
cmp qword [rsp + 0xf8], 0
je 0x1400c1c0d
mov r8, qword [rsp + 0x100]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
cmp qword [rsp + 0x110], 0
je 0x1400c1c2e
mov r8, qword [rsp + 0x118]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rcx, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x138]
call fcn.1400ab840
cmp qword [rsp + 0x128], 0
je 0x1400c1c69
mov r8, qword [rsp + 0x130]
mov rcx, qword [0x14024d108]
xor r13d, r13d
xor edx, edx
call sub.kernel32.dll_HeapFree
jmp 0x1400c1c6c
xor r13d, r13d
movabs rax, 0x8000000000000015
mov qword [rsp + 0x28], rax
movzx eax, byte [rsp + 0x27]
mov edi, eax
movzx eax, byte [rsp + 0x26]
mov ebp, eax
lea rax, [0x1401ccbc8]
xor ecx, ecx
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
lea rbx, [rsp + 0xf0]
mov r15, qword [rsp + 0x68]
jmp 0x1400c1b00
lea rcx, [rsp + 0xf8]
mov eax, dword [rcx - 7]
mov ecx, dword [rcx - 4]
mov dword [rsp + 0x2c3], ecx
mov dword [rsp + 0x2c0], eax
movups xmm0, xmmword [rsp + 0xf8]
mov rax, qword [rsp + 0x108]
movzx ecx, byte [rsp + 0x110]
movups xmmword [rsp + 0x2c7], xmm0
mov qword [rsp + 0x2d7], rax
mov byte [rsp + 0x2df], cl
movdqu xmm0, xmmword [rsp + 0x2d0]
pcmpeqb xmm0, xmm6
movdqu xmm1, xmmword [rsp + 0x2c0]
pcmpeqb xmm1, xmm7
pand xmm1, xmm0
pmovmskb eax, xmm1
mov rcx, rbx
mov rdx, rdi
cmp eax, 0xffff
je 0x1400c1d86
call fcn.140041500
mov r9, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
cmp r9, rcx
jne 0x1400c1dfd
mov r14, qword [rsp + 0x108]
jmp 0x1400c1dc2
xor r13d, r13d
movabs rax, 0x8000000000000015
mov qword [rsp + 0x28], rax
movzx eax, byte [rsp + 0x27]
mov edi, eax
jmp 0x1400c1ae4
call fcn.140040eb0
mov r9, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0xf8]
movabs rax, 0x8000000000000015
lea rcx, [rax - 0x15]
mov rax, qword [rsp + 0x100]
mov r14, qword [rsp + 0x108]
cmp r9, rcx
jne 0x1400c1ed9
movzx r11d, byte [rsp + 0x25]
movzx r9d, byte [rsp + 0x24]
lea rbx, [rsp + 0xf0]
mov rbp, qword [rsp + 0x38]
mov r15, qword [rsp + 0x68]
mov rcx, rdi
shr rcx, 0x10
mov r13d, edi
shr r13d, 8
movabs rdx, 0x8000000000000015
jmp 0x1400c028e
lea r10, [rsp + 0xf8]
movups xmm0, xmmword [r10 + 0x18]
movups xmm1, xmmword [r10 + 0x28]
lea r11, [rsp + 0x5d8]
movups xmmword [r11 + 0x10], xmm1
movups xmmword [r11], xmm0
movq xmm0, qword [rsp + 0x130]
mov ecx, dword [rsp + 0x134]
mov dword [rsp + 0x1c0], ecx
mov rcx, qword [rsp + 0x138]
mov qword [rsp + 0x1d8], rcx
movups xmm1, xmmword [r10 + 0x48]
movaps xmmword [rsp + 0x430], xmm1
mov ecx, dword [r10 + 0x64]
mov dword [rsp + 0x2b8], ecx
mov rcx, qword [r10 + 0x5c]
mov qword [rsp + 0x2b0], rcx
movups xmm1, xmmword [rsp + 0x2c0]
movups xmm2, xmmword [rsp + 0x2d0]
movaps xmmword [rsp + 0x5e0], xmm2
movaps xmmword [rsp + 0x5d0], xmm1
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0xd0], rax
movdqu xmm1, xmmword [r11]
movups xmm2, xmmword [r11 + 0x10]
movaps xmmword [rsp + 0x390], xmm2
movdqa xmmword [rsp + 0x380], xmm1
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x13]
mov dil, 2
jmp 0x1400c1f3f
lea rcx, [rsp + 0xf8]
movups xmm0, xmmword [rcx + 0x18]
movdqu xmm1, xmmword [rcx + 0x28]
movdqa xmmword [rsp + 0x390], xmm1
movaps xmmword [rsp + 0x380], xmm0
mov ecx, dword [rsp + 0x134]
mov dword [rsp + 0x1c0], ecx
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r14
mov byte [rsp + 0x9e], 6
movabs rax, 0x8000000000000015
lea rdx, [rax - 0x12]
mov dil, 6
movdqa xmm0, xmm8
mov r13d, r9d
shr r13d, 8
mov rcx, r9
shr rcx, 0x10
mov r8d, r9d
lea r10, [rsp + 0xf8]
lea rbx, [rsp + 0xf0]
mov r15, qword [rsp + 0x68]
mov r14d, dword [rsp + 0x1c0]
jmp 0x1400c16a3
mov byte [rsp + 0x2c0], al
mov rcx, qword [rsp + 0x410]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
lea rdx, [rsp + 0x2c1]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
mov qword [rsp + 0x2c8], r8
mov qword [rsp + 0x2d0], r14
mov qword [rsp + 0x2d8], r15
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2c0]
call fcn.140079f40
mov eax, r15d
shr eax, 8
mov dword [rsp + 0x58], eax
mov r13d, r15d
shr r13d, 0x10
mov rbp, r15
shr rbp, 0x20
mov r12, r15
shr r12, 0x28
mov rdi, r15
shr rdi, 0x30
mov rcx, qword [rsp + 0x200]
cmp byte [rcx], 0x14
jne 0x1400c20a2
mov rax, qword [rsp + 0x1e0]
mov rsi, qword [rax + 0x3b8]
mov rbx, qword [rax + 0x3c0]
mov rcx, rsi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x1400c20c3
cmp qword [rbx + 0x10], 0x11
jb 0x1400c2036
mov rsi, qword [rsi - 8]
mov rbx, qword [rsp + 0x70]
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x60], rax
mov r14, qword [rsp + 0x2d0]
movzx r15d, byte [rsp + 0x2d8]
movzx eax, byte [rsp + 0x2d9]
mov dword [rsp + 0x58], eax
movzx r13d, word [rsp + 0x2da]
movzx ebp, byte [rsp + 0x2dc]
movzx r12d, byte [rsp + 0x2dd]
movzx edi, word [rsp + 0x2de]
mov rsi, qword [rsp + 0x200]
jmp 0x1400c20d0
mov rsi, rcx
call fcn.1400c2e10
jmp 0x1400c20d0
mov r14, r13
mov r12, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x38]
jmp 0x1400c2104
mov rsi, qword [rsp + 0x200]
mov rbx, qword [rsp + 0x70]
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmmword [rsi + 0x10], xmm1
movdqu xmmword [rsi], xmm0
mov rcx, qword [rsp + 0x2c0]
cmp cl, 0x14
je 0x1400c27f0
jmp 0x1400c2c62
mov r14, r13
mov r10, qword [rsp + 0x80]
mov rax, qword [r12 + 0x3e8]
mov rsi, rax
sub rsi, r14
ja 0x1400c2157
mov rcx, qword [rsp + 0x200]
jne 0x1400c2191
xor esi, esi
jmp 0x1400c2189
mov eax, 2
jmp 0x1400c2357
mov r14, r13
mov r12, qword [rsp + 0x1e0]
mov r10, qword [rsp + 0x80]
mov rax, qword [r12 + 0x3e8]
mov rsi, rax
sub rsi, r14
jbe 0x1400c211c
cmp rax, qword [r12 + 0x3e0]
ja 0x1400c2e0c
mov rdi, r10
mov rcx, qword [r12 + 0x3d8]
add r14, rcx
mov rdx, r14
mov r8, rsi
call sub.msvcrt.dll_memmove
mov rcx, qword [rsp + 0x200]
mov r10, rdi
mov qword [r12 + 0x3e8], rsi
mov r14, r10
cmp byte [rcx], 0x14
jne 0x1400c21d3
mov rsi, qword [r12 + 0x3b8]
mov rdi, qword [r12 + 0x3c0]
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1400c21d8
cmp qword [rdi + 0x10], 0x11
jb 0x1400c21c0
mov rsi, qword [rsi - 8]
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
jmp 0x1400c21d8
call fcn.1400c2e10
mov byte [r12 + 0x3b0], 0x14
mov rax, qword [rsp + 0x60]
mov qword [r12 + 0x3b8], rax
mov rax, qword [rsp + 0x1b0]
mov qword [r12 + 0x3c0], rax
mov rax, qword [r12 + 0xd0]
test rax, rax
mov r10, r14
je 0x1400c2244
mov rdx, qword [r12 + 0xb8]
mov rcx, qword [r12 + 0xc8]
cmp rcx, rdx
mov r8d, 0
cmovae r8, rdx
sub rcx, r8
mov r8, rdx
sub r8, rcx
mov r9, rax
sub r9, r8
ja 0x1400c224b
add rax, rcx
mov rdx, rax
jmp 0x1400c2248
xor ecx, ecx
xor edx, edx
xor r9d, r9d
mov rax, qword [r12 + 0xc0]
lea rcx, [rcx + rcx*2]
lea rcx, [rax + rcx*8]
lea rdx, [rdx + rdx*2]
lea r8, [rax + rdx*8]
lea rdx, [r9 + r9*2]
lea rdx, [rax + rdx*8]
jmp 0x1400c2280
mov r9, rdx
mov rdx, r8
add rcx, 0x18
mov r8, rdx
mov rdx, r9
cmp rcx, r8
jne 0x1400c2270
cmp rax, rdx
je 0x1400c2298
mov rcx, rax
mov r9, r8
test rax, rax
mov rax, r8
jne 0x1400c2276
mov rax, qword [r12 + 0x70]
test rax, rax
je 0x1400c22d2
mov rdx, qword [r12 + 0x58]
mov rcx, qword [r12 + 0x68]
cmp rcx, rdx
mov r8d, 0
cmovae r8, rdx
sub rcx, r8
mov r8, rdx
sub r8, rcx
mov r9, rax
sub r9, r8
ja 0x1400c22d9
add rax, rcx
mov rdx, rax
jmp 0x1400c22d6
xor ecx, ecx
xor edx, edx
xor r9d, r9d
mov rax, qword [r12 + 0x60]
lea rcx, [rcx + rcx*2]
lea rcx, [rax + rcx*8]
lea rdx, [rdx + rdx*2]
lea r8, [rax + rdx*8]
lea rdx, [r9 + r9*2]
lea rdx, [rax + rdx*8]
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x80], r10
jmp 0x1400c2320
mov r9, rdx
mov rdx, r8
add rcx, 0x18
mov r8, rdx
mov rdx, r9
cmp rcx, r8
jne 0x1400c2310
cmp rax, rdx
je 0x1400c27f0
mov rcx, rax
mov r9, r8
test rax, rax
mov rax, r8
jne 0x1400c2316
jmp 0x1400c27f0
mov eax, 6
jmp 0x1400c234d
mov eax, 9
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x38]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x2c8], rax
mov byte [rsp + 0x2c0], 2
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2c0]
call fcn.140079f40
mov rcx, qword [rsp + 0x1f8]
cmp byte [rcx], 0x14
mov r12, qword [rsp + 0x1e0]
mov r10, qword [rsp + 0x80]
je 0x1400c23b1
mov rsi, r10
call fcn.1400c74c0
mov r10, rsi
mov rcx, qword [rsp + 0x1f8]
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
mov rdi, qword [rsp + 0x2c0]
mov rcx, qword [rsp + 0x2d0]
mov rsi, qword [rsp + 0x2d8]
mov rax, rdi
shr rax, 8
mov qword [rsp + 0x1d0], rax
mov eax, ecx
shr eax, 8
mov dword [rsp + 0x48], eax
mov eax, ecx
shr eax, 0x10
mov dword [rsp + 0x44], eax
mov rax, rcx
shr rax, 0x20
mov qword [rsp + 0x78], rax
mov rax, rcx
shr rax, 0x28
mov qword [rsp + 0xa0], rax
mov rax, rcx
mov qword [rsp + 0x90], rcx
shr rcx, 0x30
mov qword [rsp + 0xe8], rcx
mov qword [rsp + 0xe0], rsi
cmp dil, 2
je 0x1400c2638
movzx ecx, dil
cmp ecx, 5
mov qword [rsp + 0x38], rbp
mov r15, r10
je 0x1400c24e6
cmp ecx, 0x10
jne 0x1400c255e
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0x40001
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.1400677a0
mov byte [r12 + 0x331], 1
mov rax, qword [rsp + 0x1d0]
shl rax, 8
or rax, 0x10
jmp 0x1400c2554
mov r14, r13
mov rax, qword [r12 + 0x3e8]
mov rsi, rax
sub rsi, r14
ja 0x1400c2157
jmp 0x1400c211c
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x1b0]
call qword [rax + 0x30]
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0x20001
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.1400677a0
mov byte [r12 + 0x331], 1
mov rax, qword [rsp + 0x1d0]
shl rax, 8
or rax, 5
mov qword [rsp + 0xb8], rax
jmp 0x1400c2575
mov rax, qword [rsp + 0x1d0]
shl rax, 8
or rcx, rax
mov qword [rsp + 0xb8], rcx
movzx eax, byte [rsp + 0x48]
shl eax, 8
movzx ecx, byte [rsp + 0x90]
or rcx, rax
movzx eax, word [rsp + 0xe8]
shl rax, 0x30
movzx edx, byte [rsp + 0xa0]
shl rdx, 0x28
or rdx, rax
movzx eax, byte [rsp + 0x78]
shl rax, 0x20
or rax, rdx
mov edx, dword [rsp + 0x44]
shl edx, 0x10
or rdx, rax
or rdx, rcx
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0x88], rdi
jmp 0x1400c2740
movzx eax, byte [rsp + 0xf7]
shl eax, 0x10
movzx ecx, word [rsp + 0xf5]
or ecx, eax
shl rcx, 0x20
mov eax, dword [rsp + 0xf1]
or rax, rcx
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x100]
mov rsi, qword [rsp + 0x108]
jmp 0x1400c23f3
mov rdi, qword [rsp + 0x88]
mov qword [rsp + 0xe0], rsi
cmp dil, 2
jne 0x1400c2449
mov r13, r10
mov qword [rsp + 0x88], rdi
mov rdi, qword [rsp + 0x90]
mov rax, qword [rsp + 0xe8]
cmp byte [r12 + 0x334], 0
mov rsi, r12
movzx r12d, byte [rsp + 0x48]
mov qword [rsp + 0x90], rdi
movzx edi, dil
mov qword [rsp + 0xe8], rax
movzx r15d, ax
movzx r14d, byte [rsp + 0xa0]
movzx ebx, byte [rsp + 0x78]
mov qword [rsp + 0x38], rbp
je 0x1400c269b
mov byte [rsi + 0x2c0], 0x10
jmp 0x1400c26e5
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0x100001
cmp byte [rsi + 0x41], 2
sete r8b
mov rcx, rsi
lea rdx, [rsp + 0xf0]
call fcn.1400677a0
mov byte [rsi + 0x331], 1
mov rcx, qword [rsp + 0x1d0]
movabs rax, 0xffffffffffffff
and rcx, rax
shl r12d, 8
or rdi, r12
shl r15, 0x30
shl r14, 0x28
or r14, r15
shl rbx, 0x20
or rbx, r14
mov eax, dword [rsp + 0x44]
shl eax, 0x10
or rax, rbx
or rax, rdi
mov qword [rsp + 0xb0], rax
shl rcx, 8
or rcx, 2
mov qword [rsp + 0xb8], rcx
mov rbx, qword [rsp + 0x70]
mov r15, r13
mov r14, qword [rsp + 0xe0]
mov rbp, r14
shr rbp, 0x20
mov r12, r14
shr r12, 0x28
mov rdi, r14
shr rdi, 0x30
mov eax, r14d
shr eax, 8
mov dword [rsp + 0x58], eax
mov r13d, r14d
shr r13d, 0x10
mov rcx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x1b0]
call qword [rsi]
cmp qword [rsi + 8], 0
mov qword [rsp + 0x80], r15
je 0x1400c279a
cmp qword [rsi + 0x10], 0x11
jae 0x1400c279f
mov r8, qword [rsp + 0x60]
jmp 0x1400c27a8
mov r15d, r14d
jmp 0x1400c27be
mov r8, qword [rsp + 0x60]
mov r8, qword [r8 - 8]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov r15, qword [rsp + 0xe0]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x60], rax
mov rcx, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xb0]
cmp cl, 0x14
jne 0x1400c2c62
nop word cs:[rax + rax]
cmp byte [rsp + 0x2bc], 0
jne 0x1400c2c36
mov r12, qword [rsp + 0x1e0]
movzx r8d, byte [r12 + 0x32e]
movzx edx, byte [r12 + 0x32f]
mov rax, qword [r12 + 0xd0]
mov r9b, 1
test r8b, r8b
mov rsi, qword [rsp + 0x3b8]
mov r14, qword [rsp + 0x428]
mov r13, qword [rsp + 0x420]
mov ebp, 0x4805
je 0x1400c2854
test dl, dl
je 0x1400c2854
mov cl, 1
test rax, rax
jne 0x1400beb16
test r8b, r8b
je 0x1400c2871
test dl, dl
jne 0x1400c2c36
xor ecx, ecx
test bl, 1
je 0x1400beb16
jmp 0x1400c2dc2
xor r9d, r9d
mov ecx, edx
test bl, 1
je 0x1400beb16
jmp 0x1400c2dc2
mov eax, 0x10
mov rbx, qword [rsp + 0x70]
jmp 0x1400c2357
mov byte [rsp + 0x24], r9b
mov byte [rsp + 0x25], r11b
mov word [rsp + 0x1a8], 4
movabs rax, 0x8000000000000015
add rax, 0xffffffffffffffeb
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0x100001
mov rdi, qword [rsp + 0x1e0]
cmp byte [rdi + 0x41], 2
sete r8b
mov rcx, rdi
mov rdx, rbx
call fcn.1400677a0
mov byte [rdi + 0x331], 1
mov al, 2
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x210], r12
mov r12, rdi
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x2a8], rcx
jmp 0x1400c2984
mov word [rsp + 0x1a8], 4
mov qword [rsp + 0xf0], r15
mov dword [rsp + 0xf8], 0xd0001
jmp 0x1400c2946
mov word [rsp + 0x1a8], 4
mov qword [rsp + 0xf0], r15
mov dword [rsp + 0xf8], 0x100001
cmp byte [r12 + 0x41], 2
sete r8b
mov rcx, r12
lea rdx, [rsp + 0xf0]
call fcn.1400677a0
mov byte [r12 + 0x331], 1
lea rcx, [rsp + 0x510]
call fcn.1400c2e90
mov al, 9
mov dword [rsp + 0x58], eax
mov eax, r14d
mov r15, qword [rsp + 0x68]
mov byte [rsp + 0x4f], al
mov rcx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x1b0]
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1400c29c3
cmp qword [rdi + 0x10], 0x11
jae 0x1400c29ac
mov r8, qword [rsp + 0x60]
jmp 0x1400c29b5
mov r8, qword [rsp + 0x60]
mov r8, qword [r8 - 8]
mov rcx, qword [0x14024d108]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov qword [rsp + 0x68], r15
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x1b0], rax
mov rcx, qword [rsp + 0x218]
mov qword [rsp + 0x60], rcx
mov ecx, esi
mov byte [rsp + 0x37], sil
mov rbx, qword [rsp + 0x70]
mov esi, dword [rsp + 0x58]
mov qword [rsp + 0x1b8], rax
mov byte [rsp + 0x2c0], sil
movzx eax, byte [rsp + 0x37]
mov byte [rsp + 0x2c1], al
movzx eax, byte [rsp + 0x4f]
mov byte [rsp + 0x2c2], al
mov rax, qword [rsp + 0x3b0]
mov dword [rsp + 0x2c3], eax
shr rax, 0x20
mov byte [rsp + 0x2c7], al
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x2d8], rax
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2c0]
call fcn.140079f40
mov rcx, qword [rsp + 0x200]
cmp byte [rcx], 0x14
jne 0x1400c2ac0
mov rsi, qword [r12 + 0x3b8]
mov rdi, qword [r12 + 0x3c0]
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1400c2ac5
cmp qword [rdi + 0x10], 0x11
jb 0x1400c2aad
mov rsi, qword [rsi - 8]
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
jmp 0x1400c2ac5
call fcn.1400c2e10
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
mov rax, qword [rsp + 0x200]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov rax, qword [r12 + 0x3e8]
mov rsi, rax
sub rsi, r13
jbe 0x1400c2b1e
cmp rax, qword [r12 + 0x3e0]
ja 0x1400c2e0c
mov rcx, qword [r12 + 0x3d8]
add r13, rcx
mov rdx, r13
mov r8, rsi
call sub.msvcrt.dll_memmove
jmp 0x1400c2b22
jne 0x1400c2b2a
xor esi, esi
mov qword [r12 + 0x3e8], rsi
mov qword [rsp + 0x38], rbp
mov rcx, qword [rsp + 0x2c0]
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x60], rax
mov r14, qword [rsp + 0x2d0]
movzx r15d, byte [rsp + 0x2d8]
movzx eax, byte [rsp + 0x2d9]
mov dword [rsp + 0x58], eax
movzx r13d, word [rsp + 0x2da]
movzx ebp, byte [rsp + 0x2dc]
movzx r12d, byte [rsp + 0x2dd]
movzx edi, word [rsp + 0x2de]
cmp cl, 0x14
je 0x1400c27f0
jmp 0x1400c2c62
mov rcx, rdi
mov rdi, qword [rsp + 0x3a0]
mov eax, edi
shr eax, 8
mov dword [rsp + 0x48], eax
mov eax, edi
shr eax, 0x10
mov dword [rsp + 0x44], eax
mov r13, r10
test rcx, rcx
je 0x1400c2bd5
mov rcx, qword [0x14024d108]
xor eax, eax
mov qword [rsp + 0x50], rax
xor edx, edx
mov r8, qword [rsp + 0x88]
call sub.kernel32.dll_HeapFree
jmp 0x1400c2bdc
xor eax, eax
mov qword [rsp + 0x50], rax
xor eax, eax
mov qword [rsp + 0x78], rax
xor eax, eax
mov qword [rsp + 0xa0], rax
xor eax, eax
mov cl, 2
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x270], rsi
jmp 0x1400c2653
mov rax, qword [rsp + 0x1e8]
mov qword [rax + 8], rdx
mov qword [rax], 1
jmp 0x1400c2ddf
mov rax, qword [rsp + 0x1e8]
mov qword [rax + 8], rsi
mov qword [rax], 1
jmp 0x1400c2ddf
mov rax, qword [rsp + 0x1e8]
mov rcx, qword [rsp + 0x278]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0x260]
mov qword [rax + 0x10], rcx
mov qword [rax], 0
jmp 0x1400c2ddf
mov qword [rsp + 0x3d0], rcx
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x3d8], rax
mov qword [rsp + 0x3e0], r14
mov byte [rsp + 0x3e8], r15b
mov eax, dword [rsp + 0x58]
mov byte [rsp + 0x3e9], al
mov word [rsp + 0x3ea], r13w
mov byte [rsp + 0x3ec], bpl
mov byte [rsp + 0x3ed], r12b
mov word [rsp + 0x3ee], di
mov rcx, qword [rsp + 0x3c8]
mov rdi, qword [rsp + 0x3b8]
mov rdx, rdi
call fcn.140068a70
mov rbx, rax
mov rsi, rdx
mov rcx, qword [rdi]
mov rax, qword [rdi + 8]
call qword [rax + 0x70]
mov r14, rax
lea rcx, [rsp + 0x3d0]
call fcn.1400caa90
mov rcx, qword [rsp + 0x1e8]
mov qword [rcx + 8], rax
mov qword [rcx], 1
test r14, r14
je 0x1400c2d60
mov eax, r14d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x1400c2d60
test rax, rax
je 0x1400c2d60
mov rdi, r14
dec rdi
mov r15, qword [r14 - 1]
mov r14, qword [r14 + 7]
mov rcx, r15
call qword [r14]
cmp qword [r14 + 8], 0
je 0x1400c2d4f
cmp qword [r14 + 0x10], 0x11
jb 0x1400c2d3e
mov r15, qword [r15 - 8]
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
test rbx, rbx
je 0x1400c2ddf
mov eax, esi
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x1400c2ddf
test rax, rax
je 0x1400c2ddf
mov rdi, rsi
dec rdi
mov rbx, qword [rsi - 1]
mov rsi, qword [rsi + 7]
mov rcx, rbx
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1400c2daf
cmp qword [rsi + 0x10], 0x11
jb 0x1400c2d9e
mov rbx, qword [rbx - 8]
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov rcx, qword [0x14024d108]
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
jmp 0x1400c2ddf
movabs rax, 0x2500000003
mov rcx, qword [rsp + 0x1e8]
mov qword [rcx + 8], rax
mov qword [rcx], 1
movaps xmm6, xmmword [rsp + 0x600]
movaps xmm7, xmmword [rsp + 0x610]
movaps xmm8, xmmword [rsp + 0x620]
add rsp, 0x638
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2