Function at 0x140036de0
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x278
movdqa xmmword [rsp + 0x260], xmm15
movdqa xmmword [rsp + 0x250], xmm14
movdqa xmmword [rsp + 0x240], xmm13
movdqa xmmword [rsp + 0x230], xmm12
movdqa xmmword [rsp + 0x220], xmm11
movdqa xmmword [rsp + 0x210], xmm10
movdqa xmmword [rsp + 0x200], xmm9
movaps xmmword [rsp + 0x1f0], xmm8
movdqa xmmword [rsp + 0x1e0], xmm7
movdqa xmmword [rsp + 0x1d0], xmm6
mov qword [rsp + 0x190], rcx
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2e0]
mov qword [rsp + 0x1a0], r9
mov qword [rcx + 0x10], 0
mov dword [rsp + 0x108], 0
mov qword [rsp + 0x100], 0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x198], rax
add r8, rdx
pxor xmm6, xmm6
movdqu xmmword [rsp + 0x1ad], xmm6
mov byte [rsp + 0x1bd], 0
movdqu xmmword [rsp + 0x1c0], xmm6
mov qword [rsp + 0x38], 0
lea r13, [rsp + 0x48]
mov dword [rsp + 0x48], 0
mov word [rsp + 0x4c], 0
mov byte [rsp + 0x50], 0
mov dword [rsp + 0x54], 0
mov byte [rsp + 0x58], 0
mov dword [rsp + 0x5c], 0
mov byte [rsp + 0x60], 0
mov dword [rsp + 0x64], 0
mov byte [rsp + 0x68], 0
mov dword [rsp + 0x6c], 0
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], r8
lea rax, [rsp + 0x100]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], 0
mov rax, r9
shr rax, 0x20
mov byte [rsp + 0x9c], al
mov qword [rsp + 0x188], r9
mov dword [rsp + 0x98], r9d
movups xmm0, xmmword [rsp + 0x1aa]
movups xmmword [rsp + 0x9d], xmm0
mov eax, dword [rsp + 0x1ba]
mov dword [rsp + 0xad], eax
mov dword [rsp + 0xb8], 0
mov word [rsp + 0xbc], 0
movzx eax, word [rsp + 0x1ce]
mov word [rsp + 0xce], ax
movdqu xmm0, xmmword [rsp + 0x1be]
movdqu xmmword [rsp + 0xbe], xmm0
mov dword [rsp + 0xd8], 0x110000
mov byte [rsp + 0xdc], 0
lea r12, [0x14013f7c0]
lea r14, [0x140143290]
xor eax, eax
jmp 0x140036fe3
mov rax, qword [rsi + 8]
mov byte [rax + rdi], bl
inc rdi
mov qword [rsi + 0x10], rdi
mov rax, qword [rsp + 0x38]
cmp rax, 2
je 0x140037020
cmp rax, 1
jne 0x14003717a
mov rax, qword [rsp + 0x40]
cmp dword [rsp + 0xb8], 0
je 0x140037048
cmp rax, qword [rsp + 0xd0]
jae 0x1400370d9
mov rdx, qword [rsp + 0xc8]
jmp 0x14003706b
mov rdx, qword [rsp + 0x40]
mov eax, dword [rsp + 0xb8]
test eax, eax
je 0x140037090
cmp rdx, qword [rsp + 0xd0]
jae 0x1400370e7
mov r8, qword [rsp + 0xc8]
jmp 0x1400370b3
movzx ecx, word [rsp + 0xbc]
cmp rcx, 4
ja 0x14003a61b
lea rdx, [rsp + 0xc0]
cmp rax, rcx
jae 0x1400370f8
mov ebx, dword [rdx + rax*4]
inc rax
mov qword [rsp + 0x38], 1
mov qword [rsp + 0x40], rax
cmp ebx, 0x80
jb 0x14003845c
jmp 0x14003829e
movzx ecx, word [rsp + 0xbc]
cmp rcx, 5
jae 0x14003a61b
lea r8, [rsp + 0xc0]
cmp rdx, rcx
jae 0x140038418
mov ebx, dword [r8 + rdx*4]
inc rdx
mov qword [rsp + 0x38], 2
mov qword [rsp + 0x40], rdx
cmp ebx, 0x80
jb 0x14003845c
jmp 0x14003829e
mov qword [rsp + 0xd0], 0
jmp 0x140037107
mov qword [rsp + 0xd0], 0
jmp 0x140038427
test cx, cx
je 0x140037107
mov word [rsp + 0xbc], 0
mov qword [rsp + 0x38], 0
jmp 0x14003717a
movzx edi, bx
imul esi, edi, 0x6f75
shr esi, 0x18
lea edx, [rsi + 0x1100]
mov rcx, r13
call fcn.14003d040
imul eax, esi, 0x24c
sub ebx, eax
movzx eax, bx
imul edx, eax, 0x925
shr edx, 0x10
add edx, 0x1161
mov rcx, r13
call fcn.14003d040
mov eax, edi
shr eax, 2
imul eax, eax, 0x4925
shr eax, 0x11
lea ecx, [rax + rax*8]
lea ecx, [rcx + rcx*2]
add ecx, eax
sub di, cx
je 0x14003717a
add edi, 0x11a7
movzx edx, di
mov rcx, r13
call fcn.14003d040
mov r9, qword [rsp + 0xa8]
test r9, r9
jne 0x140037440
movzx r10d, byte [rsp + 0x98]
cmp r10b, 2
je 0x140037555
mov r8, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x78]
mov rax, qword [rsp + 0x80]
movzx ebx, byte [rsp + 0x99]
mov r15, qword [rsp + 0x90]
nop dword [rax + rax]
test r8, r8
je 0x1400371ea
cmp r8, r15
jne 0x140037836
mov qword [rsp + 0x88], 0
cmp rdi, r11
je 0x14003754d
lea rcx, [rdi + 1]
mov qword [rsp + 0x70], rcx
movzx r8d, byte [rdi]
movzx edx, r8b
test dl, dl
js 0x140037220
mov rdi, rcx
lea ecx, [rdx - 0x2d]
cmp ecx, 2
jae 0x1400372c0
jmp case.0x140037397.0
mov ecx, edx
and ecx, 0x1f
lea rbp, [rdi + 2]
mov qword [rsp + 0x70], rbp
movzx r9d, byte [rdi + 1]
and r9d, 0x3f
cmp dl, 0xdf
jbe 0x14003728d
lea rbp, [rdi + 3]
mov qword [rsp + 0x70], rbp
movzx edx, byte [rdi + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x1400372a5
lea r8, [rdi + 4]
mov qword [rsp + 0x70], r8
movzx r9d, byte [rdi + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and r9d, 0x3f
or r9d, edx
or r9d, ecx
mov rdi, r8
mov edx, r9d
lea ecx, [rdx - 0x2d]
cmp ecx, 2
jae 0x1400372c0
jmp case.0x140037397.0
shl ecx, 6
or ecx, r9d
mov rdi, rbp
mov edx, ecx
lea ecx, [rdx - 0x2d]
cmp ecx, 2
jae 0x1400372c0
jmp case.0x140037397.0
shl ecx, 0xc
or edx, ecx
mov rdi, rbp
lea ecx, [rdx - 0x2d]
cmp ecx, 2
jb case.0x140037397.0
nop dword [rax]
lea ecx, [rdx - 0x61]
cmp ecx, 0x1a
jb case.0x140037397.0
lea ecx, [rdx - 0x30]
cmp ecx, 0xa
jb case.0x140037397.0
mov r8d, 0x75a
xor ecx, ecx
mov r9d, 0x75a
nop word cs:[rax + rax]
shr r8, 1
add r8, rcx
mov ebp, dword [r12 + r8*8]
cmp ebp, edx
je 0x140037327
lea rsi, [r8 + 1]
cmp ebp, edx
cmova r9, r8
cmovb rcx, rsi
mov r8, r9
sub r8, rcx
ja 0x1400372f0
dec rcx
mov r8, rcx
cmp rcx, 0x759
ja 0x14003a534
movzx r9d, word [r12 + r8*8 + 4]
mov ecx, r9d
and ecx, 0x7fff
test r9w, r9w
js 0x140037360
movzx r8d, word [r12 + r8*8]
mov r9d, edx
sub r9w, r8w
movzx ecx, cx
add ecx, r9d
movzx ecx, cx
cmp ecx, 0x1f73
jb 0x140037371
jmp 0x14003a523
movzx r8d, cx
cmp r8d, 0x1f73
jae 0x14003a560
movzx r9d, byte [r14 + rcx*4]
mov r8d, 0
cmp r9d, 1
je case.default.0x140037397
mov r8d, r9d
lea r9, [0x14018a86c]
movsxd r8, dword [r9 + r8*4]
add r8, r9
jmp r8
mov eax, dword [rsp + 0x48]
lea r15, [rsp + 0x50]
mov rcx, qword [rsp + 0xa0]
test eax, eax
je 0x140037469
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
cmp rcx, rdx
jb 0x140037484
jmp 0x14003a571
movzx edx, word [rsp + 0x4c]
cmp rdx, 5
jae 0x14003a54c
mov r8, r15
cmp rcx, rdx
jae 0x14003a571
mov edi, dword [r8 + rcx*8 + 4]
inc rcx
cmp rcx, r9
jne 0x140037540
test eax, eax
je 0x1400375a8
mov r8, qword [rsp + 0x60]
sub r8, r9
je 0x1400375b7
xor ecx, ecx
jmp 0x1400374d3
movzx edx, byte [r9 + rax*8]
mov eax, dword [r9 + rax*8 + 4]
mov byte [r9 + rcx*8], dl
mov dword [r9 + rcx*8 + 4], eax
lea rax, [rcx + 1]
mov rcx, rax
cmp r8, rax
je 0x1400375c9
mov rax, qword [rsp + 0xa8]
add rax, rcx
cmp dword [rsp + 0x48], 0
je 0x140037510
mov rdx, qword [rsp + 0x60]
cmp rax, rdx
jae 0x14003a508
mov r9, qword [rsp + 0x58]
cmp rcx, rdx
jb 0x1400374b0
jmp 0x14003a517
movzx edx, word [rsp + 0x4c]
cmp rdx, 5
jae 0x14003a54c
cmp rax, rdx
jae 0x14003a508
mov r9, r15
cmp rcx, rdx
jb 0x1400374b0
jmp 0x14003a517
mov qword [rsp + 0xa0], rcx
jmp 0x1400375f6
mov byte [rsp + 0x98], 2
mov r9d, dword [rsp + 0x48]
test r9d, r9d
mov rdx, qword [rsp + 0x60]
movzx r8d, word [rsp + 0x4c]
movzx eax, r8w
mov rcx, rdx
cmove rcx, rax
test rcx, rcx
je 0x14003831b
mov rcx, qword [rsp + 0xa8]
test r9d, r9d
lea r15, [rsp + 0x50]
je 0x140037930
mov r8, qword [rsp + 0x58]
mov rax, rdx
sub rax, rcx
jae 0x14003794d
jmp 0x14003a59a
movzx r8d, word [rsp + 0x4c]
sub r8, r9
jne 0x1400374ab
test eax, eax
je 0x1400375d1
cmp qword [rsp + 0x60], r8
jb 0x1400375f0
mov qword [rsp + 0x60], r8
jmp 0x1400375f0
mov eax, dword [rsp + 0x48]
test eax, eax
jne 0x1400375bb
movzx eax, word [rsp + 0x4c]
cmp r8, rax
jae 0x1400375f0
mov word [rsp + 0x4c], r8w
nop word cs:[rax + rax]
movdqu xmmword [r13 + 0x58], xmm6
imul eax, edi, 0x9e3779b9
imul ecx, edi, 0x31415926
xor eax, ecx
imul rax, rax, 0x39a
shr rax, 0x20
lea rdx, [0x140166640]
movzx eax, word [rdx + rax*2]
add eax, edi
imul eax, eax, 0x9e3779b9
xor eax, ecx
imul rax, rax, 0x39a
shr rax, 0x20
lea rcx, [0x140166d74]
mov ebp, dword [rcx + rax*4]
mov eax, ebp
shr eax, 8
cmp eax, edi
mov eax, 0
cmovne ebp, eax
mov ebx, dword [rsp + 0xd8]
cmp ebx, 0x110000
jne 0x140037670
test bpl, bpl
jne 0x140038290
mov dword [rsp + 0xd8], edi
jmp 0x14003717a
cmp byte [rsp + 0xdc], 0
je 0x1400377f7
cmp byte [rsp + 0xdd], bpl
jae 0x140037922
lea eax, [rbx - 0x1100]
cmp eax, 0x13
jae 0x140037b80
lea eax, [rdi - 0x1161]
cmp eax, 0x15
jae 0x140037bca
imul eax, ebx, 0x24c
lea ecx, [rdi + rdi*8]
lea ecx, [rcx + rcx*2]
add ecx, edi
add eax, ecx
add eax, 0xffd7b964
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
cmp edx, 0x80
jb 0x140037172
lea ebx, [rdx - 0xac00]
cmp ebx, 0x2ba4
jb 0x140037112
imul eax, edx, 0x9e3779b9
imul ecx, edx, 0x31415926
xor eax, ecx
imul rax, rax, 0x80d
shr rax, 0x20
lea r8, [0x14016a01c]
movzx eax, word [r8 + rax*2]
add eax, edx
imul eax, eax, 0x9e3779b9
xor eax, ecx
imul rax, rax, 0x80d
shr rax, 0x20
lea rcx, [0x14016b038]
mov rbx, qword [rcx + rax*8]
cmp edx, ebx
jne 0x140037172
mov rax, rbx
shr rax, 0x20
movzx ecx, ax
movzx eax, ax
cmp eax, 0xd4e
ja 0x14003a5c9
shr rbx, 0x30
mov edx, 0xd4e
sub rdx, rcx
cmp rdx, rbx
jb 0x14003a5ba
test rbx, rbx
je 0x14003717a
lea rax, [0x14016f0a0]
lea rdi, [rax + rcx*4]
shl ebx, 2
xor r15d, r15d
nop word cs:[rax + rax]
mov edx, dword [rdi + r15]
mov rcx, r13
call fcn.14003d040
add r15, 4
cmp rbx, r15
jne 0x1400377c0
jmp 0x14003717a
lea eax, [rbx - 0x1100]
cmp eax, 0x13
jae 0x140037a8a
lea eax, [rdi - 0x1161]
cmp eax, 0x15
jae 0x140037ad4
imul eax, ebx, 0x24c
lea ecx, [rdi + rdi*8]
lea ecx, [rcx + rcx*2]
add ecx, edi
add eax, ecx
add eax, 0xffd7b964
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
lea rax, [r8 + 1]
mov qword [rsp + 0x88], rax
movzx ecx, byte [r8]
movzx edx, cl
test dl, dl
js 0x140037c3e
nop word cs:[rax + rax]
cmp byte [rsp + 0xb0], 0
je 0x140037700
cmp edx, 0x80
jb 0x140037172
lea ebx, [rdx - 0xac00]
cmp ebx, 0x2ba4
jb 0x140037112
imul ecx, edx, 0x9e3779b9
imul eax, edx, 0x31415926
xor ecx, eax
imul r8, rcx, 0xee4
shr r8, 0x20
lea r9, [0x140172678]
movzx r8d, word [r9 + r8*2]
add r8d, edx
imul r8d, r8d, 0x9e3779b9
xor r8d, eax
imul r8, r8, 0xee4
shr r8, 0x20
lea r9, [0x140174440]
mov rbx, qword [r9 + r8*8]
cmp edx, ebx
jne 0x1400379e1
mov rax, rbx
shr rax, 0x20
movzx ecx, ax
movzx eax, ax
cmp eax, 0x1667
ja 0x14003a5e9
shr rbx, 0x30
mov edx, 0x1667
sub rdx, rcx
cmp rdx, rbx
jb 0x14003a5da
lea rax, [0x14017bb60]
lea rdi, [rax + rcx*4]
test rbx, rbx
jne 0x140037a61
jmp 0x14003717a
test bpl, bpl
jne 0x140037fa6
jmp 0x1400383ea
cmp r8w, 5
jae 0x14003a5a6
mov rdx, rax
mov r8, r15
mov rax, rdx
sub rax, rcx
jb 0x14003a59a
cmp rax, 2
jb 0x140037b53
lea rcx, [r8 + rcx*8]
cmp rax, 0x15
jae 0x140037b4b
lea rax, [r8 + rdx*8]
lea rdx, [rcx + 8]
xor r8d, r8d
jmp 0x14003799e
mov rdi, rcx
shl r10, 0x20
or r10, r9
mov qword [rdi], r10
add rdx, 8
add r8, 0xfffffffffffffff8
cmp rdx, rax
je 0x140037b53
movzx r11d, byte [rdx]
cmp r11b, byte [rdx - 8]
jae 0x14003798d
movzx r9d, r11b
mov r10d, dword [rdx + 4]
xor ebx, ebx
nop word cs:[rax + rax]
mov rsi, qword [rdx + rbx - 8]
mov qword [rdx + rbx], rsi
cmp r8, rbx
je 0x140037980
lea rdi, [rbx - 8]
cmp r11b, byte [rdx + rbx - 0x10]
mov rbx, rdi
jb 0x1400379c0
add rdi, rdx
jmp 0x140037983
imul rcx, rcx, 0x80d
shr rcx, 0x20
lea r8, [0x14016a01c]
movzx ecx, word [r8 + rcx*2]
add ecx, edx
imul ecx, ecx, 0x9e3779b9
xor ecx, eax
imul rax, rcx, 0x80d
shr rax, 0x20
lea rcx, [0x14016b038]
mov rbx, qword [rcx + rax*8]
cmp edx, ebx
jne 0x140037172
mov rax, rbx
shr rax, 0x20
movzx ecx, ax
movzx eax, ax
cmp eax, 0xd4e
ja 0x14003a5c9
shr rbx, 0x30
mov edx, 0xd4e
sub rdx, rcx
cmp rdx, rbx
jb 0x14003a5ba
lea rax, [0x14016f0a0]
lea rdi, [rax + rcx*4]
test rbx, rbx
je 0x14003717a
shl ebx, 2
xor r15d, r15d
nop word [rax + rax]
mov edx, dword [rdi + r15]
mov rcx, r13
call fcn.14003d040
add r15, 4
cmp rbx, r15
jne 0x140037a70
jmp 0x14003717a
lea eax, [rbx - 0xac00]
cmp eax, 0x2ba3
ja 0x140037ad4
lea ecx, [rdi - 0x11a8]
cmp ecx, 0x1a
ja 0x140037ad4
movzx ecx, ax
shr ecx, 2
imul ecx, ecx, 0x4925
shr ecx, 0x11
lea edx, [rcx + rcx*8]
lea edx, [rdx + rdx*2]
add edx, ecx
sub eax, edx
test ax, ax
jne 0x140037ad4
lea eax, [rbx + rdi]
add eax, 0xffffee59
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
mov eax, edi
or eax, ebx
cmp eax, 0x10000
jae 0x140037cbb
mov ecx, ebx
shl ecx, 0x10
or ecx, edi
imul eax, ecx, 0x9e3779b9
imul edx, ecx, 0x31415926
xor eax, edx
imul rax, rax, 0x3a0
shr rax, 0x20
lea r8, [0x140167bdc]
movzx eax, word [r8 + rax*2]
add eax, ecx
imul eax, eax, 0x9e3779b9
xor eax, edx
imul rax, rax, 0x3a0
shr rax, 0x20
lea rdx, [0x14016831c]
cmp dword [rdx + rax*8], ecx
jne 0x140037f9d
lea rcx, [0x14016831c]
mov eax, dword [rcx + rax*8 + 4]
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
mov rdx, rax
call fcn.14003e390
mov eax, dword [rsp + 0x48]
test eax, eax
je 0x140037b6d
mov r9, qword [rsp + 0x60]
mov qword [rsp + 0xa8], r9
jmp 0x140037449
movzx r9d, word [rsp + 0x4c]
mov qword [rsp + 0xa8], r9
jmp 0x140037449
lea eax, [rbx - 0xac00]
cmp eax, 0x2ba3
ja 0x140037bca
lea ecx, [rdi - 0x11a8]
cmp ecx, 0x1a
ja 0x140037bca
movzx ecx, ax
shr ecx, 2
imul ecx, ecx, 0x4925
shr ecx, 0x11
lea edx, [rcx + rcx*8]
lea edx, [rdx + rdx*2]
add edx, ecx
sub eax, edx
test ax, ax
jne 0x140037bca
lea eax, [rbx + rdi]
add eax, 0xffffee59
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
mov eax, edi
or eax, ebx
cmp eax, 0x10000
jae 0x140037d0d
shl ebx, 0x10
or ebx, edi
imul eax, ebx, 0x9e3779b9
imul ecx, ebx, 0x31415926
xor eax, ecx
imul rax, rax, 0x3a0
shr rax, 0x20
lea rdx, [0x140167bdc]
movzx eax, word [rdx + rax*2]
add eax, ebx
imul eax, eax, 0x9e3779b9
xor eax, ecx
imul rax, rax, 0x3a0
shr rax, 0x20
lea rcx, [0x14016831c]
cmp dword [rcx + rax*8], ebx
jne 0x140037fa6
lea rcx, [0x14016831c]
mov eax, dword [rcx + rax*8 + 4]
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
mov eax, edx
and eax, 0x1f
lea r9, [r8 + 2]
mov qword [rsp + 0x88], r9
movzx r9d, byte [r8 + 1]
and r9d, 0x3f
cmp dl, 0xdf
jbe 0x140037d5f
lea rdx, [r8 + 3]
mov qword [rsp + 0x88], rdx
movzx edx, byte [r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp cl, 0xf0
jb 0x140037e06
lea rcx, [r8 + 4]
mov qword [rsp + 0x88], rcx
movzx ecx, byte [r8 + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
mov edx, ecx
cmp byte [rsp + 0xb0], 0
jne 0x14003786e
jmp 0x140037700
cmp ebx, 0x11346
jg 0x140037d7a
cmp ebx, 0x110a4
jle 0x140037e1e
cmp ebx, 0x110a5
je 0x140037f53
cmp ebx, 0x11131
je 0x140037f79
cmp ebx, 0x11132
jne 0x140037f9d
mov eax, 0x1112f
cmp edi, 0x11127
je 0x14003782a
jmp 0x140037f9d
cmp ebx, 0x11346
jg 0x140037dc0
cmp ebx, 0x110a4
jle 0x140037e99
cmp ebx, 0x110a5
je 0x1400381ea
cmp ebx, 0x11131
je 0x140038216
cmp ebx, 0x11132
jne 0x140037fa6
mov eax, 0x1112f
cmp edi, 0x11127
je 0x1400376bf
jmp 0x140037fa6
shl eax, 6
or eax, r9d
mov edx, eax
cmp byte [rsp + 0xb0], 0
jne 0x14003786e
jmp 0x140037700
cmp ebx, 0x115b7
jle 0x140037e4c
cmp ebx, 0x115b8
je 0x140037f66
cmp ebx, 0x115b9
je 0x140037f8c
cmp ebx, 0x11935
jne 0x140037f9d
mov eax, 0x11938
cmp edi, 0x11930
je 0x14003782a
jmp 0x140037f9d
cmp ebx, 0x115b7
jle 0x140037ec7
cmp ebx, 0x115b8
je 0x140038200
cmp ebx, 0x115b9
je 0x14003822c
cmp ebx, 0x11935
jne 0x140037fa6
mov eax, 0x11938
cmp edi, 0x11930
je 0x1400376bf
jmp 0x140037fa6
shl eax, 0xc
or edx, eax
cmp byte [rsp + 0xb0], 0
jne 0x14003786e
jmp 0x140037700
cmp ebx, 0x11099
je 0x140037f14
cmp ebx, 0x1109b
jne 0x140037f9d
mov eax, 0x1109c
cmp edi, 0x110ba
je 0x14003782a
jmp 0x140037f9d
cmp ebx, 0x11347
je 0x140037f27
cmp ebx, 0x114b9
jne 0x140037f9d
cmp edi, 0x114b0
je 0x140038253
cmp edi, 0x114ba
je 0x140038242
cmp edi, 0x114bd
jne 0x140037f9d
mov eax, 0x114be
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
cmp ebx, 0x11099
je 0x1400381a5
cmp ebx, 0x1109b
jne 0x140037fa6
mov eax, 0x1109c
cmp edi, 0x110ba
je 0x1400376bf
jmp 0x140037fa6
cmp ebx, 0x11347
je 0x1400381bb
cmp ebx, 0x114b9
jne 0x140037fa6
cmp edi, 0x114b0
je 0x140038275
cmp edi, 0x114ba
je 0x140038264
cmp edi, 0x114bd
jne 0x140037fa6
mov eax, 0x114be
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
mov eax, 0x1109a
cmp edi, 0x110ba
je 0x14003782a
jmp 0x140037f9d
mov eax, 0x1134b
cmp edi, 0x1133e
je 0x14003782a
mov eax, 0x110000
cmp edi, 0x11357
mov ecx, 0x1134c
cmove eax, ecx
je 0x14003782a
jmp 0x140037f9d
mov eax, 0x110ab
cmp edi, 0x110ba
je 0x14003782a
jmp 0x140037f9d
mov eax, 0x115ba
cmp edi, 0x115af
je 0x14003782a
jmp 0x140037f9d
mov eax, 0x1112e
cmp edi, 0x11127
je 0x14003782a
jmp 0x140037f9d
mov eax, 0x115bb
cmp edi, 0x115af
je 0x14003782a
test bpl, bpl
je 0x14003849d
cmp dword [rsp + 0xb8], 0
je 0x140037fea
mov rbx, qword [rsp + 0xd0]
cmp rbx, qword [rsp + 0xc0]
jne 0x140037fcf
lea rcx, [rsp + 0xc0]
call fcn.14003e090
mov rax, qword [rsp + 0xc8]
mov dword [rax + rbx*4], edi
inc rbx
mov qword [rsp + 0xd0], rbx
jmp 0x140038190
movzx ebx, word [rsp + 0xbc]
cmp rbx, 3
ja 0x14003800f
mov dword [rsp + rbx*4 + 0xc0], edi
lea eax, [rbx + 1]
mov word [rsp + 0xbc], ax
jmp 0x140038190
lea r15d, [rbx*8]
movzx eax, byte [0x140196310]
xor ecx, ecx
mov rdx, r15
call fcn.1400f0c90
test rax, rax
je 0x14003a5fa
lea ecx, [rbx + rbx]
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], 0
cmp bx, 4
jne 0x14003a607
mov ecx, dword [rsp + 0xc0]
mov dword [rsp + 0xc0], 0
mov dword [rax], ecx
mov ecx, dword [rsp + 0xc4]
mov dword [rsp + 0xc4], 0
mov dword [rax + 4], ecx
mov ecx, dword [rsp + 0xc8]
mov dword [rsp + 0xc8], 0
mov dword [rax + 8], ecx
mov ecx, dword [rsp + 0xcc]
mov dword [rsp + 0xcc], 0
mov dword [rax + 0xc], ecx
mov word [rsp + 0xbc], 0
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0xf0], 4
cmp qword [rsp + 0xe0], 4
jne 0x1400380fb
lea rcx, [rsp + 0xe0]
call fcn.14003e090
mov rax, qword [rsp + 0xe8]
mov ecx, 4
mov dword [rax + rcx*4], edi
lea rax, [rcx + 1]
mov qword [rsp + 0xf0], rax
lea rcx, [rsp + 0x144]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0xe0]
mov qword [rcx], rax
mov rax, qword [rsp + 0xe8]
mov qword [rcx + 8], rax
cmp dword [rsp + 0xb8], 0
je 0x140038166
cmp qword [rsp + 0xc0], 0
je 0x140038166
mov r8, qword [rsp + 0xc8]
mov rcx, qword [0x140196260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov dword [rsp + 0xb8], 1
movdqu xmm0, xmmword [rsp + 0x140]
movups xmm1, xmmword [rsp + 0x14c]
movups xmmword [r13 + 0x80], xmm1
movdqu xmmword [r13 + 0x74], xmm0
mov byte [rsp + 0xdc], 1
mov byte [rsp + 0xdd], bpl
jmp 0x14003717a
mov eax, 0x1109a
cmp edi, 0x110ba
je 0x1400376bf
jmp 0x140037fa6
mov eax, 0x1134b
cmp edi, 0x1133e
je 0x1400376bf
mov eax, 0x110000
cmp edi, 0x11357
mov ecx, 0x1134c
cmove eax, ecx
je 0x1400376bf
jmp 0x140037fa6
mov eax, 0x110ab
cmp edi, 0x110ba
je 0x1400376bf
jmp 0x140037fa6
mov eax, 0x115ba
cmp edi, 0x115af
je 0x1400376bf
jmp 0x140037fa6
mov eax, 0x1112e
cmp edi, 0x11127
je 0x1400376bf
jmp 0x140037fa6
mov eax, 0x115bb
cmp edi, 0x115af
je 0x1400376bf
jmp 0x140037fa6
mov eax, 0x114bb
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
mov eax, 0x114bc
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
mov eax, 0x114bb
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
mov eax, 0x114bc
mov dword [rsp + 0xd8], eax
jmp 0x14003717a
mov ebx, edi
cmp ebx, 0x80
jb 0x14003845c
mov dword [rsp + 0x140], 0
mov eax, ebx
cmp ebx, 0x800
jae 0x1400382e0
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x140], al
and bl, 0x3f
or bl, 0x80
mov byte [rsp + 0x141], bl
mov ebx, 2
jmp 0x14003839f
cmp ebx, 0x10000
jae 0x140038361
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x140], al
mov eax, ebx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x141], al
and bl, 0x3f
or bl, 0x80
mov byte [rsp + 0x142], bl
mov ebx, 3
jmp 0x14003839f
mov qword [rsp + 0x38], 2
mov qword [rsp + 0x40], 0
mov ebx, dword [rsp + 0xd8]
mov eax, 2
cmp ebx, 0x110000
je 0x140036fe3
mov dword [rsp + 0xd8], 0x110000
cmp ebx, 0x80
jb 0x14003845c
jmp 0x14003829e
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x140], al
mov eax, ebx
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x141], al
mov eax, ebx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x142], al
and bl, 0x3f
or bl, 0x80
mov byte [rsp + 0x143], bl
mov ebx, 4
mov rcx, qword [rsp + 0x2e0]
mov rax, qword [rcx]
mov r15, qword [rcx + 0x10]
sub rax, r15
cmp rax, rbx
jb 0x14003847e
mov rsi, qword [rsp + 0x2e0]
mov rcx, qword [rsi + 8]
add rcx, r15
lea rdx, [rsp + 0x140]
mov r8, rbx
call fcn.140118560
add r15, rbx
mov qword [rsi + 0x10], r15
mov rax, qword [rsp + 0x38]
jmp 0x140036fe3
mov dword [rsp + 0xd8], edi
mov byte [rsp + 0xdc], 0
mov qword [rsp + 0x38], 1
mov qword [rsp + 0x40], 0
cmp ebx, 0x80
jb 0x14003845c
jmp 0x14003829e
test cx, cx
je 0x140038427
mov word [rsp + 0xbc], 0
mov ebx, dword [rsp + 0xd8]
mov dword [rsp + 0xd8], 0x110000
cmp ebx, 0x110000
je 0x1400384b1
nop word cs:[rax + rax]
cmp ebx, 0x80
jae 0x14003829e
mov rsi, qword [rsp + 0x2e0]
mov rdi, qword [rsi + 0x10]
cmp rdi, qword [rsi]
jne 0x140036fd0
mov rcx, rsi
call fcn.14003df40
jmp 0x140036fd0
mov rsi, qword [rsp + 0x2e0]
mov rcx, rsi
mov rdx, r15
mov r8, rbx
call fcn.14011f430
mov r15, qword [rsi + 0x10]
jmp 0x1400383ba
mov dword [rsp + 0xd8], edi
cmp ebx, 0x80
jb 0x14003845c
jmp 0x14003829e
cmp dword [rsp + 0x48], 0
je 0x1400384e9
cmp qword [rsp + 0x50], 0
mov rsi, qword [rsp + 0x2e0]
je 0x1400384e3
mov r8, qword [rsp + 0x58]
mov rcx, qword [0x140196260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [rsp + 0xb8]
test eax, eax
jne 0x1400384f5
jmp 0x140038517
mov rsi, qword [rsp + 0x2e0]
test eax, eax
je 0x140038517
cmp qword [rsp + 0xc0], 0
je 0x140038517
mov r8, qword [rsp + 0xc8]
mov rcx, qword [0x140196260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsp + 0x110], 0
mov qword [rsp + 0x118], 8
mov qword [rsp + 0x120], 0
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
mov qword [rsp + 0x140], 0
mov qword [rsp + 0x148], rcx
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x160], 0
mov qword [rsp + 0x168], rcx
movabs rax, 0x2e0000002e
mov qword [rsp + 0x170], rax
mov byte [rsp + 0x178], 1
mov word [rsp + 0x180], 1
and qword [rsp + 0x188], 0xffffffffffff00ff
mov bpl, 1
lea r14, [rsp + 0x140]
lea r13, [0x140162278]
movdqa xmm6, xmmword [str.________________]
movdqa xmm7, xmmword [0x140126700]
xorps xmm8, xmm8
movdqa xmm14, xmmword [0x140126720]
movdqa xmm15, xmmword [0x1401269f0]
movdqa xmm10, xmmword [0x140126a10]
movdqa xmm11, xmmword [0x140126a20]
movdqa xmm12, xmmword [0x140126a30]
movdqa xmm13, xmmword [0x140126a40]
movq mm5, qword [0x140126a40]
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srcdecompose.rs
mov rcx, rax
call fcn.1401193e0
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srcdecompose.rs
call fcn.1401193e0
lea r8, [0x14013f748]
mov edx, 0x1f73
call fcn.1401193e0
lea r8, [0x14013f730]
mov edx, 0x75a
mov rcx, 0xffffffffffffffff
call fcn.1401193e0
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov rcx, rdx
mov edx, 4
call fcn.140119450
lea r8, [0x14013f760]
mov edx, 0x1f73
call fcn.1401193e0
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srcdecompose.rs
call fcn.1401193e0
lea rax, [0x14013f718]
mov qword [rsp + 0x20], rax
lea rcx, [0x14014b05c]
mov edx, 0x321c
call fcn.140119a10
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srcdecompose.rs
call fcn.140119370
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov edx, 4
mov rcx, rax
call fcn.140119450
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srclookups.rs
mov rcx, rbx
call fcn.140119450
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srclookups.rs
mov edx, 0xd4e
call fcn.140119370
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srclookups.rs
mov rcx, rbx
call fcn.140119450
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srclookups.rs
mov edx, 0x1667
call fcn.140119370
mov ecx, 4
mov rdx, r15
call fcn.140119070
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov edx, 4
mov rcx, rbx
call fcn.140119450
lea r8, str.C:UsersBOTNET.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov edx, 4
call fcn.140119450