Function at 0x140022e97
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa18
mov r12, rcx
mov rdx, qword [rcx + 8]
mov r8, qword [rcx + 0x10]
lea rcx, [rsp + 0x200]
call fcn.140040d40
lea rdx, str.APPDATAsrc_firefox_firefox.rs
lea rsi, [rsp + 0x280]
mov r8d, 7
mov rcx, rsi
call fcn.1400f10d0
cmp byte [rsi + 0x18], 3
jne 0x140025ef7
mov rax, qword [rsp + 0x290]
lea rdi, [rsp + 0x7c0]
mov qword [rdi + 0x10], rax
movups xmm0, xmmword [rsp + 0x280]
movaps xmmword [rdi], xmm0
lea rax, [0x140241775]
lea rdx, [rsp + 0x540]
mov qword [rdx], rax
mov rax, qword [rdx]
mov rcx, qword [0x1402f85e8]
rol rcx, 6
movabs r8, 0xac1bbd5516b6417
imul r8, rcx
movabs rcx, 0xb3e4bad8004d7d4
add rcx, r8
rol rcx, 2
movzx ecx, cx
movabs r8, 0x95acdbf1d5b1b009
xor r8, qword [rax + rcx]
lea r9, [rsp + 0x50]
mov qword [r9], r8
mov al, byte [rax + rcx + 8]
xor al, 0x98
mov byte [r9 + 8], al
lea rcx, [rsp + 0x90]
mov qword [rcx], r9
mov qword [rcx + 8], 9
mov qword [rsp + 0x280], rdi
lea rax, [0x14000aee0]
mov qword [rsp + 0x288], rax
mov qword [rsp + 0x290], rcx
lea rax, [0x1400ecb90]
mov qword [rsp + 0x298], rax
lea rax, str.failed_to_write_whole_buffer
mov qword [rdx + 0x10], rax
mov eax, 2
mov qword [rdx + 0x18], rax
mov qword [rdx], 0
mov qword [rdx + 0x20], rsi
mov qword [rdx + 0x28], rax
lea rcx, [rsp + 0x120]
call fcn.14003ff20
cmp qword [rdi], 0
je 0x140022ff8
mov r8, qword [rsp + 0x7c8]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov r15, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x128]
mov r14, qword [rsp + 0x130]
lea rsi, [rsp + 0x540]
mov rcx, rsi
mov rdx, rbx
mov r8, r14
call fcn.1400f5a30
cmp dword [rsi], 2
mov qword [rsp + 0x48], r12
jne 0x14002304e
mov rax, qword [rsp + 0x548]
mov qword [rsp + 0x288], rax
mov qword [rsp + 0x280], 2
jmp 0x140023073
lea rax, [rsp + 0x280]
lea rsi, [rsp + 0x540]
mov ecx, 9
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
cmp qword [rax], 2
jne 0x1400235ab
lea rcx, [rsp + 0x288]
call fcn.1400089cb
test r15, r15
je 0x140023097
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x200], 0
je 0x1400230b9
mov r8, qword [rsp + 0x208]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rdx, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
lea rcx, [rsp + 0x90]
call fcn.140040d40
lea rdx, str.APPDATAsrc_firefox_firefox.rs
lea r13, [rsp + 0x280]
mov r8d, 7
mov rcx, r13
call fcn.1400f10d0
cmp byte [r13 + 0x18], 3
jne 0x140025f21
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x130], rax
movups xmm0, xmmword [rsp + 0x280]
movaps xmmword [rsp + 0x120], xmm0
lea rax, [0x14023c1a2]
mov qword [rsp + 0x540], rax
mov rcx, qword [rsp + 0x540]
mov rax, 0xffffffffbc43cae0
add rax, qword [0x1402f85f8]
mov rdx, rax
shr rdx, 0xa
xor rdx, rax
mov eax, 0x8ad7d9b2
add rax, rdx
rol rax, 4
movzx eax, ax
add rax, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x280], xmm0
movaps xmmword [rsp + 0x290], xmm0
mov qword [rsp + 0x2a0], 0
mov rcx, 0xfffffffffffffff8
lea rdx, [0x140240948]
mov r8, qword [rcx + rdx + 8]
xor r8, qword [rax + rcx + 8]
mov qword [rsp + rcx + 0x288], r8
add rcx, 8
cmp rcx, 0x20
jb 0x140023186
movzx eax, word [rax + 0x28]
xor eax, 0x149c
mov word [rsp + 0x2a8], ax
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], 0x2a
lea rax, [rsp + 0x120]
mov qword [rsp + 0x7c0], rax
lea rax, [0x14000aee0]
mov qword [rsp + 0x7c8], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x7d0], rax
lea rax, [0x1400ecb90]
mov qword [rsp + 0x7d8], rax
lea rdx, [rsp + 0x540]
lea rax, str.failed_to_write_whole_buffer
mov qword [rdx + 0x10], rax
mov eax, 2
mov qword [rdx + 0x18], rax
mov qword [rdx], 0
lea rcx, [rsp + 0x7c0]
mov qword [rdx + 0x20], rcx
mov qword [rdx + 0x28], rax
lea rcx, [rsp + 0x200]
call fcn.14003ff20
cmp qword [rsp + 0x120], 0
je 0x14002325e
mov r8, qword [rsp + 0x128]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x38], rax
mov rdx, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x210]
lea rsi, [rsp + 0x540]
mov rcx, rsi
mov qword [rsp + 0x30], rdx
mov r8, rbx
call fcn.1400f5a30
cmp dword [rsi], 2
jne 0x1400232b6
mov rax, qword [rsp + 0x548]
mov qword [rsp + 0x288], rax
mov qword [rsp + 0x280], 2
jmp 0x1400232db
lea rax, [rsp + 0x280]
lea rsi, [rsp + 0x540]
mov ecx, 9
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
cmp qword [rax], 2
jne 0x14002390c
lea rcx, [rsp + 0x288]
call fcn.1400089cb
cmp qword [rsp + 0x38], 0
je 0x140023304
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, qword [rsp + 0x30]
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x90], 0
je 0x140023326
mov r8, qword [rsp + 0x98]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rdx, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
lea rcx, [rsp + 0x4e8]
call fcn.140040d40
lea rdx, str.APPDATAsrc_firefox_firefox.rs
lea rsi, [rsp + 0x540]
mov r8d, 7
mov rcx, rsi
call fcn.1400f10d0
mov al, byte [rsi + 0x18]
cmp al, 3
jne 0x140023587
mov rax, qword [rsp + 0x548]
test rax, rax
je 0x14002583d
mov rcx, qword [rsp + 0x540]
mov rdx, qword [rsp + 0x550]
mov qword [rsp + 0x500], rcx
mov qword [rsp + 0x508], rax
mov qword [rsp + 0x510], rdx
lea rax, [0x14023e8c8]
mov qword [rsp + 0x540], rax
mov rcx, qword [rsp + 0x540]
mov eax, 0x1a031908
sub rax, qword [0x1402f8608]
rol rax, 7
movzx eax, ax
add rax, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x120], xmm0
mov cl, 1
xor edx, edx
lea r8, [0x1402409b8]
movzx r10d, byte [rdx + r8]
mov r9, rdx
or r9, 1
movzx r9d, byte [r9 + r8]
mov r11, rdx
or r11, 2
movzx r11d, byte [r11 + r8]
mov rsi, rdx
or rsi, 3
movzx esi, byte [rsi + r8]
mov rdi, rdx
or rdi, 4
movzx edi, byte [rdi + r8]
mov rbx, rdx
or rbx, 5
movzx ebx, byte [rbx + r8]
mov r15, rdx
or r15, 7
mov r14, rdx
or r14, 6
movzx r14d, byte [r14 + r8]
movzx r15d, byte [r15 + r8]
shl r15, 0x38
shl r14, 0x30
or r14, r15
shl rbx, 0x28
shl rdi, 0x20
shl rsi, 0x18
shl r11, 0x10
shl r9, 8
or r9, r10
or r9, r11
or r9, rsi
or r9, rdi
or r9, rbx
or r9, r14
xor r9, qword [rax + rdx]
mov qword [rsp + rdx + 0x120], r9
mov edx, 8
test cl, 1
mov ecx, 0
jne 0x1400233e1
mov ecx, 0x1901a708
xor ecx, dword [rax + 0x10]
mov dword [rsp + 0x130], ecx
movzx eax, word [rax + 0x14]
xor eax, 0x8ef8
mov word [rsp + 0x134], ax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x200], rax
mov qword [rsp + 0x208], 0x16
lea r15, [rsp + 0x500]
mov qword [rsp + 0x280], r15
lea rax, [0x14000aee0]
mov qword [rsp + 0x288], rax
lea rax, [rsp + 0x200]
mov qword [rsp + 0x290], rax
lea rax, [0x1400ecb90]
mov qword [rsp + 0x298], rax
lea rdx, [rsp + 0x540]
lea rax, str.failed_to_write_whole_buffer
mov qword [rdx + 0x10], rax
mov eax, 2
mov qword [rdx + 0x18], rax
mov qword [rdx], 0
mov qword [rdx + 0x20], r13
mov qword [rdx + 0x28], rax
lea rsi, [rsp + 0x7c0]
mov rcx, rsi
call fcn.14003ff20
mov r14, qword [rsi]
mov rbx, qword [rsi + 8]
mov r8, qword [rsi + 0x10]
lea rsi, [rsp + 0x540]
mov rcx, rsi
mov rdx, rbx
call fcn.1400f5a30
cmp dword [rsi], 2
jne 0x140023ceb
mov rax, qword [rsp + 0x548]
mov qword [rsp + 0x288], rax
mov qword [rsp + 0x280], 2
jmp 0x140023d0d
cmp al, 2
je 0x14002583d
cmp qword [rsp + 0x540], 0
je 0x14002583d
mov r8, qword [rsp + 0x548]
jmp 0x14002582e
mov qword [rsp + 0x30], r15
lea rcx, [0x140240568]
lea rsi, [rsp + 0x540]
mov qword [rsi], rcx
mov rcx, qword [rsi]
mov edx, 0x327b9527
add rdx, qword [0x1402f85f0]
rol rdx, 2
movabs r8, 0xc0000000000016b2
xor r8, rdx
rol r8, 2
movzx edx, r8w
mov r8d, 0xd2e41626
xor r8d, dword [rcx + rdx]
mov dword [rsp + 0x90], r8d
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0x128], 4
lea rcx, [rsp + 0x200]
mov qword [rsp + 0x280], rcx
lea rcx, [0x14000aee0]
mov qword [rsp + 0x288], rcx
lea rcx, [rsp + 0x120]
mov qword [rsp + 0x290], rcx
lea rcx, [0x1400ecb90]
mov qword [rsp + 0x298], rcx
lea rcx, str.failed_to_write_whole_buffer
mov qword [rsi + 0x10], rcx
mov ecx, 2
mov qword [rsi + 0x18], rcx
mov qword [rsi], 0
mov qword [rsi + 0x20], rax
mov qword [rsi + 0x28], rcx
lea r12, [rsp + 0x7c0]
mov rcx, r12
mov rdx, rsi
call fcn.14003ff20
mov rcx, r12
call fcn.1400058db
mov qword [rsi], rax
test rax, rax
je 0x1400236a9
lea rcx, [rsp + 0x540]
call fcn.1400089cb
lea r13, [rsp + 0x540]
mov rcx, r13
mov qword [rsp + 0x38], rbx
mov rdx, rbx
mov r8, r14
call fcn.140109220
xor eax, eax
mov qword [r13 + 0x20], rax
mov qword [r13 + 0x30], 0xa
mov qword [r13 + 0x38], rax
mov word [r13 + 0x48], 0
mov byte [r13 + 0x4a], 0
mov qword [r13 + 0x40], 1
lea rbp, [rsp + 0x280]
mov ecx, 0xa
mov rdi, rbp
mov rsi, r13
rep movsq qword [rdi], qword [rsi]
movups xmm0, xmmword [rbp + 0x40]
movaps xmmword [r13 + 0x40], xmm0
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
movups xmm2, xmmword [rbp + 0x20]
movups xmm3, xmmword [rbp + 0x30]
movaps xmmword [r13 + 0x30], xmm3
movaps xmmword [r13 + 0x20], xmm2
movaps xmmword [r13], xmm0
movaps xmmword [r13 + 0x10], xmm1
mov qword [r13 + 0x70], rax
mov ecx, 8
mov qword [r13 + 0x78], rcx
xorps xmm0, xmm0
movaps xmmword [r13 + 0x80], xmm0
mov qword [r13 + 0x90], rcx
movaps xmmword [r13 + 0x60], xmm0
movups xmmword [r13 + 0x98], xmm0
mov qword [r13 + 0xa8], rcx
mov qword [r13 + 0xb0], rax
mov qword [r13 + 0x50], rax
lea rax, [rsp + 0x50]
add rcx, rax
mov qword [rsp + 0x40], rcx
mov rcx, rbp
mov rdx, r13
call fcn.14011c813
mov rax, qword [rsp + 0x2b0]
cmp rax, 2
je 0x1400238ec
cmp eax, 3
je 0x140023c7e
mov rbx, qword [rsp + 0x280]
mov rsi, qword [rsp + 0x288]
mov rdi, qword [rsp + 0x290]
mov rcx, rsi
mov rdx, rdi
call fcn.1400f8600
test rax, rax
cmove rax, rsi
cmove rdx, rdi
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025e7d
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rdx
lea rax, [rsp + 0x200]
mov qword [rsp + 0x7c0], rax
lea rax, [0x14000aee0]
mov qword [rsp + 0x7c8], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x7d0], rax
lea rax, [0x1400ecb90]
mov qword [rsp + 0x7d8], rax
lea rax, str.failed_to_write_whole_buffer
mov qword [rsp + 0x290], rax
mov eax, 2
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x280], 0
mov qword [rsp + 0x2a0], r12
mov qword [rsp + 0x2a8], rax
lea rcx, [rsp + 0x120]
mov rdx, rbp
call fcn.14003ff20
mov r14, qword [rsp + 0x120]
mov r15, qword [rsp + 0x128]
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, rdi
mov r9, r15
call fcn.140108ec0
cmp qword [rsp + 0x50], 0
je 0x1400238b5
mov rcx, qword [rsp + 0x40]
call fcn.1400089cb
test r14, r14
je 0x1400238cc
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, r15
call qword [sym.imp.kernel32.dll_HeapFree]
test rbx, rbx
je 0x140023778
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x140023778
mov ecx, 9
mov rdi, r12
lea rsi, [rsp + 0x2b8]
rep movsq qword [rdi], qword [rsi]
mov rcx, r12
call fcn.140008a07
jmp 0x140023778
lea rcx, [0x140237110]
lea rsi, [rsp + 0x540]
mov qword [rsi], rcx
mov rcx, qword [rsi]
mov rdx, qword [0x1402f8600]
rol rdx, 1
add rdx, 0x1a918f91
rol rdx, 3
movzx edx, dx
mov r8d, dword [rcx + rdx]
movzx ecx, word [rcx + rdx + 4]
xor ecx, 0xa63f
mov edx, 0xad42e52c
xor rdx, r8
mov dword [rsp + 0x200], edx
mov word [rsp + 0x204], cx
lea rcx, [rsp + 0x200]
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0x128], 6
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x280], rcx
lea rcx, [0x14000aee0]
mov qword [rsp + 0x288], rcx
lea rcx, [rsp + 0x120]
mov qword [rsp + 0x290], rcx
lea rcx, [0x1400ecb90]
mov qword [rsp + 0x298], rcx
lea rcx, str.failed_to_write_whole_buffer
mov qword [rsi + 0x10], rcx
mov ecx, 2
mov qword [rsi + 0x18], rcx
mov qword [rsi], 0
mov qword [rsi + 0x20], rax
mov qword [rsi + 0x28], rcx
lea r13, [rsp + 0x7c0]
mov rcx, r13
mov rdx, rsi
call fcn.14003ff20
mov rcx, r13
call fcn.1400058db
mov qword [rsi], rax
test rax, rax
je 0x140023a0c
lea rcx, [rsp + 0x540]
call fcn.1400089cb
lea r12, [rsp + 0x540]
mov rcx, r12
mov rdx, qword [rsp + 0x30]
mov r8, rbx
call fcn.140109220
xor eax, eax
mov qword [r12 + 0x20], rax
mov qword [r12 + 0x30], 0xa
mov qword [r12 + 0x38], rax
mov word [r12 + 0x48], 0
mov byte [r12 + 0x4a], 0
mov qword [r12 + 0x40], 1
lea rbx, [rsp + 0x280]
mov ecx, 0xa
mov rdi, rbx
mov rsi, r12
rep movsq qword [rdi], qword [rsi]
movups xmm0, xmmword [rbx + 0x40]
movaps xmmword [r12 + 0x40], xmm0
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmm2, xmmword [rbx + 0x20]
movups xmm3, xmmword [rbx + 0x30]
movaps xmmword [r12 + 0x30], xmm3
movaps xmmword [r12 + 0x20], xmm2
movaps xmmword [r12], xmm0
movaps xmmword [r12 + 0x10], xmm1
mov qword [r12 + 0x70], rax
mov ecx, 8
mov qword [r12 + 0x78], rcx
xorps xmm0, xmm0
movaps xmmword [r12 + 0x80], xmm0
mov qword [r12 + 0x90], rcx
movaps xmmword [r12 + 0x60], xmm0
movups xmmword [r12 + 0x98], xmm0
mov qword [r12 + 0xa8], rcx
mov qword [r12 + 0xb0], rax
mov qword [r12 + 0x50], rax
lea rax, [rsp + 0x50]
add rcx, rax
mov qword [rsp + 0x40], rcx
mov rcx, rbx
mov rdx, r12
call fcn.14011c813
mov rax, qword [rsp + 0x2b0]
cmp rax, 2
je 0x140023c5e
cmp eax, 3
je 0x140023cb3
mov r15, qword [rsp + 0x280]
mov rsi, qword [rsp + 0x288]
mov rdi, qword [rsp + 0x290]
mov rcx, rsi
mov rdx, rdi
call fcn.1400f8600
test rax, rax
cmove rax, rsi
cmove rdx, rdi
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025e8d
mov qword [rsp + 0x200], rax
mov qword [rsp + 0x208], rdx
lea rax, [rsp + 0x90]
mov qword [rsp + 0x7c0], rax
lea rax, [0x14000aee0]
mov qword [rsp + 0x7c8], rax
lea rax, [rsp + 0x200]
mov qword [rsp + 0x7d0], rax
lea rax, [0x1400ecb90]
mov qword [rsp + 0x7d8], rax
lea rax, str.failed_to_write_whole_buffer
mov qword [rsp + 0x290], rax
mov eax, 2
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x280], 0
mov qword [rsp + 0x2a0], r13
mov qword [rsp + 0x2a8], rax
lea rcx, [rsp + 0x120]
mov rdx, rbx
call fcn.14003ff20
mov r14, qword [rsp + 0x120]
mov rbp, qword [rsp + 0x128]
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, rdi
mov r9, rbp
call fcn.140108ec0
cmp qword [rsp + 0x50], 0
je 0x140023c27
mov rcx, qword [rsp + 0x40]
call fcn.1400089cb
test r14, r14
je 0x140023c3e
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rbp
call qword [sym.imp.kernel32.dll_HeapFree]
test r15, r15
je 0x140023aea
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x140023aea
mov ecx, 9
mov rdi, r13
lea rsi, [rsp + 0x2b8]
rep movsq qword [rdi], qword [rsi]
mov rcx, r13
call fcn.140008a07
jmp 0x140023aea
lea rcx, [rsp + 0x280]
call fcn.140007d61
lea rcx, [rsp + 0x540]
call fcn.1400081c2
cmp qword [rsp + 0x30], 0
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x38]
jne 0x140023085
jmp 0x140023097
lea rcx, [rsp + 0x280]
call fcn.140007d61
lea rcx, [rsp + 0x540]
call fcn.1400081c2
cmp qword [rsp + 0x38], 0
mov r12, qword [rsp + 0x48]
lea r13, [rsp + 0x280]
jne 0x1400232f0
jmp 0x140023304
lea r13, [rsp + 0x280]
lea rsi, [rsp + 0x540]
mov ecx, 9
mov rdi, r13
rep movsq qword [rdi], qword [rsi]
cmp qword [r13], 2
jne 0x140023d39
lea rcx, [rsp + 0x288]
call fcn.1400089cb
test r14, r14
mov r12, qword [rsp + 0x48]
je 0x14002581b
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rbx
jmp 0x140025815
test r14, r14
je 0x140023d50
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
lea rax, [0x14023ad47]
lea rdi, [rsp + 0x540]
mov qword [rdi], rax
mov rax, qword [rdi]
xor ecx, ecx
sub rcx, qword [0x1402f8610]
rol rcx, 2
not rcx
mov rdx, rcx
shr rdx, 0x17
xor edx, ecx
shld rdx, rcx, 5
movzx ecx, dx
movabs rdx, 0x7f4799a057464221
xor rdx, qword [rax + rcx]
mov qword [rsp + 0x200], rdx
mov al, byte [rax + rcx + 8]
xor al, 0xb9
mov byte [rsp + 0x208], al
lea rax, [rsp + 0x200]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 9
lea rax, [rsp + 0x4e8]
mov qword [rsp + 0x280], rax
lea rax, [0x14000aee0]
mov qword [rsp + 0x288], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x290], rax
lea rax, [0x1400ecb90]
mov qword [rsp + 0x298], rax
lea rax, str.failed_to_write_whole_buffer
mov qword [rdi + 0x10], rax
mov eax, 2
mov qword [rdi + 0x18], rax
mov qword [rdi], 0
mov qword [rdi + 0x20], r13
mov qword [rdi + 0x28], rax
lea rsi, [rsp + 0x7c0]
mov rcx, rsi
mov rdx, rdi
call fcn.14003ff20
mov rcx, rsi
call fcn.1400058db
mov qword [rdi], rax
test rax, rax
je 0x140023e56
lea rcx, [rsp + 0x540]
call fcn.1400089cb
lea rax, [0x140239b3d]
mov qword [rsp + 0x540], rax
mov rcx, qword [rsp + 0x540]
mov rax, qword [0x1402f8618]
mov rdx, rax
xor rdx, 0x15
shld rdx, rax, 6
movabs rax, 0xf800000000000725
xor rax, rdx
rol rax, 5
movzx eax, ax
add rax, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x120], xmm0
mov cl, 1
xor edx, edx
lea r8, [0x1402409ce]
movzx r10d, byte [rdx + r8]
mov r9, rdx
or r9, 1
movzx r9d, byte [r9 + r8]
mov r11, rdx
or r11, 2
movzx r11d, byte [r11 + r8]
mov rsi, rdx
or rsi, 3
movzx esi, byte [rsi + r8]
mov rdi, rdx
or rdi, 4
movzx edi, byte [rdi + r8]
mov rbx, rdx
or rbx, 5
movzx ebx, byte [rbx + r8]
mov r12, rdx
or r12, 7
mov r14, rdx
or r14, 6
movzx r14d, byte [r14 + r8]
movzx r12d, byte [r12 + r8]
shl r12, 0x38
shl r14, 0x30
or r14, r12
shl rbx, 0x28
shl rdi, 0x20
shl rsi, 0x18
shl r11, 0x10
shl r9, 8
or r9, r10
or r9, r11
or r9, rsi
or r9, rdi
or r9, rbx
or r9, r14
xor r9, qword [rax + rdx]
mov qword [rsp + rdx + 0x120], r9
mov edx, 8
test cl, 1
mov ecx, 0
jne 0x140023ead
mov ecx, 0x6a3abcec
xor ecx, dword [rax + 0x10]
lea rbx, [rsp + 0x120]
mov dword [rbx + 0x10], ecx
movzx ecx, byte [rax + 0x16]
movzx eax, word [rax + 0x14]
xor eax, 0x65df
mov word [rbx + 0x14], ax
xor cl, 0x43
mov byte [rbx + 0x16], cl
lea r14, [rsp + 0x200]
lea rax, [rsp + 0x120]
mov qword [r14], rax
mov qword [r14 + 8], 0x17
lea r12, [rsp + 0x280]
mov qword [r12], r15
lea rax, [0x14000aee0]
mov qword [r12 + 8], rax
lea rax, [rsp + 0x200]
mov qword [r12 + 0x10], rax
lea rax, [0x1400ecb90]
mov qword [r12 + 0x18], rax
lea rsi, [rsp + 0x540]
lea rax, str.failed_to_write_whole_buffer
mov qword [rsi + 0x10], rax
mov eax, 2
mov qword [rsi + 0x18], rax
xor ebp, ebp
mov qword [rsi], rbp
mov qword [rsi + 0x20], r13
mov qword [rsi + 0x28], rax
lea r15, [rsp + 0x7c0]
mov rcx, r15
lea rdx, [rsp + 0x540]
call fcn.14003ff20
mov rax, qword [r15]
mov qword [rsp + 0x38], rax
mov rdx, qword [r15 + 8]
mov r8, qword [r15 + 0x10]
mov rcx, rsi
mov qword [rsp + 0x1d8], rdx
call fcn.140109220
mov qword [rsi + 0x20], rbp
mov qword [rsi + 0x30], 0xa
mov qword [rsi + 0x38], rbp
mov word [rsi + 0x48], 0
mov byte [rsi + 0x4a], 0
mov qword [rsi + 0x40], 3
mov ecx, 0xa
mov rdi, r12
rep movsq qword [rdi], qword [rsi]
movups xmm0, xmmword [r12]
movups xmm1, xmmword [r12 + 0x10]
movups xmm2, xmmword [r12 + 0x20]
movups xmm3, xmmword [r12 + 0x30]
movaps xmmword [r14 + 0x20], xmm2
movaps xmmword [r14 + 0x30], xmm3
movups xmm2, xmmword [r12 + 0x40]
movaps xmmword [r14 + 0x40], xmm2
movaps xmmword [r14], xmm0
movaps xmmword [r14 + 0x10], xmm1
xorps xmm0, xmm0
movups xmmword [rbx + 0x80], xmm0
movups xmmword [rsp + 0x7b0], xmm0
movups xmmword [rbx + 0x98], xmm0
mov ecx, 0xa
mov rdi, rbx
mov rsi, r14
rep movsq qword [rdi], qword [rsi]
mov qword [rbx + 0x50], rbp
movups xmm0, xmmword [rsp + 0x7a8]
movups xmmword [rbx + 0x58], xmm0
mov rax, qword [rsp + 0x7b8]
mov qword [rbx + 0x68], rax
mov qword [rbx + 0x70], rbp
mov eax, 8
mov qword [rbx + 0x78], rax
mov qword [rbx + 0x90], rax
mov qword [rbx + 0xa8], rax
mov qword [rbx + 0xb0], rbp
mov ebp, 8
lea rbx, [rsp + 0x578]
lea rax, [r12 + rbp]
mov qword [rsp + 0xd0], rax
mov r12, r15
lea r15, [rsp + 0x540]
add rbp, r12
lea r14, [0x140241281]
mov rcx, r15
lea rdx, [rsp + 0x120]
call fcn.14011c813
mov rax, qword [rsp + 0x570]
cmp rax, 2
jne 0x140024158
mov ecx, 9
mov rdi, r13
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
mov rcx, r13
call fcn.140008a07
jmp 0x140024122
cmp eax, 3
je 0x140024ca0
mov rax, qword [rsp + 0x540]
mov qword [rsp + 0x30], rax
mov rdi, qword [rsp + 0x548]
mov rsi, qword [rsp + 0x550]
mov rcx, rdi
mov rdx, rsi
call fcn.1400f8600
test rax, rax
mov qword [rsp + 0x40], rdi
cmove rax, rdi
cmove rdx, rsi
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025fcb
cmp rdx, 0x10
jne 0x140024400
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0x540], r14
mov rax, qword [rsp + 0x540]
mov rcx, qword [0x1402f8620]
xor edx, edx
sub rdx, rcx
mov rcx, rdx
shr rcx, 0xa
xor rcx, rdx
imul rcx, rcx, 0xffffffff96decc55
rol rcx, 4
movzx ecx, cx
mov rdx, qword [rax + rcx]
movabs r8, 0xfeb33c95f7e976ab
xor rdx, r8
mov qword [rsp + 0x100], rdx
mov edx, dword [rax + rcx + 8]
mov r8d, 0xbd1bd0a5
xor edx, r8d
mov dword [rsp + 0x108], edx
movzx eax, word [rax + rcx + 0xc]
xor eax, 0x7762
mov word [rsp + 0x10c], ax
lea rax, [rsp + 0x100]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 0xe
mov r14, qword [rsp + 0x40]
mov rcx, r14
mov rdx, rsi
call fcn.1400f8600
test rax, rax
cmove rax, r14
cmove rdx, rsi
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025fde
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rdx
lea rax, [rsp + 0x4e8]
mov qword [rsp + 0x540], rax
lea rax, [0x14000aee0]
mov qword [rsp + 0x548], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x550], rax
lea rax, [0x1400ecb90]
mov qword [rsp + 0x558], rax
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x560], rcx
mov qword [rsp + 0x568], rax
lea rax, str.failed_to_write_whole_buffer
mov qword [rsp + 0x290], rax
mov eax, 3
mov qword [rsp + 0x298], rax
xor ebx, ebx
mov qword [rsp + 0x280], rbx
mov qword [rsp + 0x2a0], r15
mov qword [rsp + 0x2a8], rax
mov rcx, r12
mov rdx, r13
call fcn.14003ff20
mov rax, qword [rsp + 0x7c0]
mov qword [rsp + 0x528], rax
mov rbp, qword [rsp + 0x7c8]
mov rdi, qword [rsp + 0x7d0]
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], 8
mov qword [rsp + 0x80], rbx
mov rcx, r15
mov rdx, r14
mov r8, rsi
call fcn.140109220
lea rcx, [rsp + 0x70]
xor edx, edx
call fcn.14012210e
mov rax, qword [rsp + 0x78]
mov rbx, r14
mov r14, qword [rsp + 0x80]
mov rcx, r14
shl rcx, 5
movups xmm0, xmmword [rsp + 0x540]
movups xmm1, xmmword [rsp + 0x550]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc r14
mov qword [rsp + 0x80], r14
lea rcx, [rsp + 0x260]
mov qword [rsp + 0x518], rbp
mov rdx, rbp
mov r8, rdi
call fcn.140109220
mov rcx, r12
mov rdx, rbx
mov r8, rsi
call fcn.140109220
mov rsi, qword [rsp + 0x7c8]
mov r8, qword [rsp + 0x7d0]
mov rcx, r15
mov rdx, rsi
call fcn.1400f8ae0
xor ebx, ebx
mov rcx, r13
mov rdx, r15
call fcn.1400ee1e0
cmp byte [rsp + 0x290], 0xa
je 0x140024411
inc rbx
jmp 0x1400243e6
cmp qword [rsp + 0x30], 0
jne 0x140024c77
jmp 0x140024122
cmp qword [rsp + 0x7c0], 0
je 0x140024436
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov r14, qword [rsp + 0x80]
test r14, r14
je 0x14002450d
dec r14
mov qword [rsp + 0x80], r14
mov rax, qword [rsp + 0x78]
mov rcx, r14
shl rcx, 5
mov bpl, byte [rax + rcx + 0x18]
cmp bpl, 2
je 0x140024510
lea r8, [rax + rcx]
mov rdx, qword [rax + rcx]
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rax + rcx + 8]
mov rdi, qword [rax + rcx + 0x10]
mov eax, dword [r8 + 0x19]
mov ecx, dword [r8 + 0x1c]
mov dword [rsp + 0xdb], ecx
mov dword [rsp + 0xd8], eax
mov rcx, r15
mov qword [rsp + 0x258], rdx
mov r8, rdi
call fcn.1400f8ae0
xor eax, eax
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0x1e8], 1
mov qword [rsp + 0x1f0], rax
mov byte [rsp + 0x1f8], 1
mov qword [rsp + 0x580], rbx
test rbx, rbx
mov qword [rsp + 0x520], rdi
je 0x1400245af
mov rsi, rbx
dec rsi
je 0x14002458e
mov rcx, r13
mov rdx, r15
call fcn.1400ee1e0
cmp byte [rsp + 0x290], 0xa
jne 0x1400244ea
jmp 0x1400245a3
xor r14d, r14d
cmp qword [rsp + 0x260], 0
je 0x14002453a
mov r8, qword [rsp + 0x268]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov r14, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
test r14, r14
lea rbx, [rsp + 0x578]
je 0x140024565
lea rdi, [rsi + 8]
mov rcx, qword [rdi - 8]
mov rdx, qword [rdi]
call fcn.14003f840
add rdi, 0x20
dec r14
jne 0x140024550
cmp qword [rsp + 0x70], 0
mov rbp, qword [rsp + 0x88]
je 0x140024587
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
xor esi, esi
jmp 0x140024c2b
mov rcx, r12
mov rdx, r15
call fcn.1400ee1e0
cmp byte [rsp + 0x7d0], 0xa
jne 0x1400245af
mov esi, 1
xor edi, edi
jmp 0x140024676
movups xmm0, xmmword [rsp + 0x540]
movups xmm1, xmmword [rsp + 0x550]
movups xmm2, xmmword [rsp + 0x560]
movups xmm3, xmmword [rsp + 0x570]
movaps xmmword [rsp + 0x2b0], xmm3
movaps xmmword [rsp + 0x2a0], xmm2
movaps xmmword [rsp + 0x290], xmm1
movaps xmmword [rsp + 0x280], xmm0
lea rcx, [rsp + 0x90]
mov rdx, r13
call fcn.1400ee1e0
cmp byte [rsp + 0xa0], 0xa
je 0x140024666
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x7f0], rax
movups xmm0, xmmword [rsp + 0x90]
movups xmm1, xmmword [rsp + 0xa0]
movups xmm2, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x7e0], xmm2
movaps xmmword [rsp + 0x7d0], xmm1
movaps xmmword [rsp + 0x7c0], xmm0
mov rcx, r12
call fcn.1400f8590
mov r8, rdx
lea rcx, [rsp + 0x1e0]
mov rdx, rax
call fcn.1400f3d10
jmp 0x1400245ef
mov rsi, qword [rsp + 0x1e8]
mov rdi, qword [rsp + 0x1f0]
mov rcx, r15
mov rdx, rsi
mov r8, rdi
call fcn.1400f8ae0
xor r14d, r14d
mov rcx, r13
mov rdx, r15
call fcn.1400ee1e0
cmp byte [rsp + 0x290], 0xa
je 0x1400246a1
dec r14
jmp 0x140024687
mov r15, r12
test r14, r14
je 0x1400246d8
mov rdx, qword [rsp + 0x268]
mov r8, qword [rsp + 0x270]
mov qword [rsp + 0x20], rdi
lea rcx, [rsp + 0xe0]
mov r9, rsi
call fcn.1400f8a00
mov r14, qword [rsp + 0xf0]
jmp 0x140024726
mov rsi, qword [rsp + 0x268]
mov r14, qword [rsp + 0x270]
mov rcx, r14
xor edx, edx
call fcn.140043ed9
mov rcx, rdx
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], rdx
mov rdx, rsi
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0xf0], r14
mov al, byte [rsp + 0x278]
mov byte [rsp + 0xf8], al
mov r12, qword [rsp + 0xe8]
lea rsi, [rsp + 0x540]
mov rcx, rsi
mov rdx, r12
mov r8, r14
call fcn.1400f5a30
cmp dword [rsp + 0x540], 2
jne 0x14002476c
mov rax, qword [rsp + 0x548]
mov qword [rsp + 0x288], rax
mov qword [rsp + 0x280], 2
jmp 0x140024782
mov ecx, 9
mov rdi, r13
rep movsq qword [rdi], qword [rsi]
cmp qword [rsp + 0x280], 2
jne 0x1400247b4
mov rcx, qword [rsp + 0xd0]
call fcn.1400089cb
mov rcx, r12
mov rdx, r14
call fcn.1400f4b80
test rax, rax
mov r12, r15
je 0x1400247b7
mov rsi, rax
xor edi, edi
lea r15, [rsp + 0x540]
jmp 0x140024c93
mov r12, r15
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x540], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x548], rax
mov rax, qword [rsp + 0x520]
mov qword [rsp + 0x550], rax
mov byte [rsp + 0x558], bpl
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
lea rdx, [rsp + 0x540]
mov dword [rdx + 0x1c], ecx
mov dword [rdx + 0x19], eax
mov rcx, r13
lea r15, [rsp + 0x540]
mov rdx, r15
call fcn.140123982
mov edi, dword [rsp + 0x290]
mov rsi, qword [rsp + 0x280]
cmp edi, 2
je 0x140024c90
mov r14, qword [rsp + 0x288]
mov r8d, 0x254
lea rcx, [rsp + 0x554]
lea rdx, [rsp + 0x294]
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x540], rsi
mov qword [rsp + 0x548], r14
lea r14, [rsp + 0x290]
mov dword [rsp + 0x550], edi
mov rbp, qword [rsp + 0x88]
mov rcx, r13
mov rdx, r15
call fcn.1400f3840
cmp qword [rsp + 0x280], 0
je 0x140024a78
mov rsi, qword [rsp + 0x288]
mov rdi, qword [rsp + 0x4d8]
test rdi, rdi
je 0x140024b45
mov r8d, 0x248
mov rcx, rbp
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x7c0], rsi
mov qword [rsp + 0xa10], rdi
mov eax, esi
shr eax, 0xa
mov cl, byte [rsp + 0x7e7]
and cl, 0x20
shr cl, 5
test al, cl
jne 0x140024955
and esi, 0x10
je 0x140024955
lea rcx, [rsp + 0x90]
mov rdx, r12
call fcn.1400f3a80
mov rdx, qword [rsp + 0x80]
cmp rdx, qword [rsp + 0x70]
jne 0x140024920
lea rcx, [rsp + 0x70]
call fcn.14012210e
mov rdx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x78]
mov rcx, rdx
shl rcx, 5
movups xmm0, xmmword [rsp + 0x90]
movups xmm1, xmmword [rsp + 0xa0]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsp + 0x80], rdx
jmp 0x140024a54
lea rcx, [rsp + 0x100]
mov rdx, r12
call fcn.1400f3a80
mov rcx, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x110]
call fcn.1400f8600
test rax, rax
je 0x140024a32
mov rsi, rax
mov rdi, rdx
lea rcx, [rsp + 0x50]
mov rdx, r12
call fcn.1400f3a80
mov rdx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xf0]
mov qword [rsp + 0x20], rdi
lea rcx, [rsp + 0x90]
mov r9, rsi
call fcn.1400f8a00
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x98]
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x530]
mov r9, rdi
call fcn.140108ec0
cmp qword [rsp + 0x530], 0
jne 0x140024ac7
cmp qword [rsp + 0x90], 0
je 0x140024a16
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x50], 0
je 0x140024a32
mov r8, qword [rsp + 0x58]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x100], 0
je 0x140024a54
mov r8, qword [rsp + 0x108]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0xa10]
lock dec qword [rax]
jne 0x140024880
mov rcx, qword [rsp + 0xa10]
call fcn.14010b152
jmp 0x140024880
mov rcx, r15
call fcn.140008192
cmp qword [rsp + 0xe0], 0
je 0x140024aa2
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x1e0], 0
je 0x14002442e
mov r8, qword [rsp + 0x1e8]
mov rcx, qword [0x1402fea40]
xor edx, edx
jmp 0x140024428
mov rsi, qword [rsp + 0x538]
cmp qword [rsp + 0x90], 0
je 0x140024aec
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x50], 0
je 0x140024b08
mov r8, qword [rsp + 0x58]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x100], 0
je 0x140024b2a
mov r8, qword [rsp + 0x108]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0xa10]
lock dec qword [rax]
jne 0x140024b45
mov rcx, qword [rsp + 0xa10]
call fcn.14010b152
mov rcx, r15
call fcn.140008192
mov dil, 1
cmp qword [rsp + 0xe0], 0
je 0x140024b72
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x1e0], 0
je 0x140024b94
mov r8, qword [rsp + 0x1e8]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0xc8], 0
sete al
or dil, al
jne 0x140024bbc
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, qword [rsp + 0x258]
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x260], 0
je 0x140024bde
mov r8, qword [rsp + 0x268]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rdi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x80]
test rbx, rbx
je 0x140024c09
lea r14, [rdi + 8]
mov rcx, qword [r14 - 8]
mov rdx, qword [r14]
call fcn.14003f840
add r14, 0x20
dec rbx
jne 0x140024bf4
cmp qword [rsp + 0x70], 0
je 0x140024c23
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
lea rbx, [rsp + 0x578]
lea r14, [0x140241281]
mov rdi, qword [rsp + 0x30]
cmp qword [rsp + 0x528], 0
je 0x140024c59
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, qword [rsp + 0x518]
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsp + 0x540], rsi
test rsi, rsi
je 0x140024c6e
mov rcx, r15
call fcn.1400089cb
test rdi, rdi
je 0x140024122
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, qword [rsp + 0x40]
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x140024122
mov dil, 1
mov rbp, qword [rsp + 0x88]
jmp 0x140024b50
lea rcx, [rsp + 0x540]
call fcn.140007d61
lea rcx, [rsp + 0x120]
call fcn.1400081c2
cmp qword [rsp + 0x38], 0
je 0x140024cd9
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, qword [rsp + 0x1d8]
call qword [sym.imp.kernel32.dll_HeapFree]
lea rax, [fcn.140238a2e]
mov qword [rsp + 0x540], rax
mov rcx, qword [rsp + 0x540]
mov rax, qword [0x1402f8628]
mov rdx, rax
shr rdx, 0x1d
xor rdx, rax
xor rdx, 0xffffffff9ec6b75a
inc rdx
mov eax, edx
shr eax, 5
xor eax, edx
shld rax, rdx, 1
movzx eax, ax
add rax, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x120], xmm0
mov cl, 1
xor edx, edx
lea r8, [0x140240a60]
mov r12, qword [rsp + 0x48]
lea r13, [rsp + 0x280]
movzx r10d, byte [rdx + r8]
mov r9, rdx
or r9, 1
movzx r9d, byte [r9 + r8]
mov r11, rdx
or r11, 2
movzx r11d, byte [r11 + r8]
mov rsi, rdx
or rsi, 3
movzx esi, byte [rsi + r8]
mov rdi, rdx
or rdi, 4
movzx edi, byte [rdi + r8]
mov rbx, rdx
or rbx, 5
movzx ebx, byte [rbx + r8]
mov r14, rdx
or r14, 6
mov r15, rdx
or r15, 7
movzx r14d, byte [r14 + r8]
movzx r15d, byte [r15 + r8]
shl r15, 0x38
shl r14, 0x30
or r14, r15
shl rbx, 0x28
shl rdi, 0x20
shl rsi, 0x18
shl r11, 0x10
shl r9, 8
or r9, r10
or r9, r11
or r9, rsi
or r9, rdi
or r9, rbx
or r9, r14
xor r9, qword [rax + rdx]
mov qword [rsp + rdx + 0x120], r9
mov edx, 8
test cl, 1
mov ecx, 0
jne 0x140024d40
lea rbp, [rsp + 0x120]
mov qword [rsp + 0x200], rbp
mov qword [rsp + 0x208], 0x10
lea rbp, [rsp + 0x280]
lea rax, [rsp + 0x500]
mov qword [rbp], rax
lea rax, [0x14000aee0]
mov qword [rbp + 8], rax
lea rax, [rsp + 0x200]
mov qword [rbp + 0x10], rax
lea rax, [0x1400ecb90]
mov qword [rbp + 0x18], rax
lea r15, [rsp + 0x540]
lea rax, str.failed_to_write_whole_buffer
mov qword [r15 + 0x10], rax
mov eax, 2
mov qword [r15 + 0x18], rax
xor ecx, ecx
mov qword [r15], rcx
mov qword [r15 + 0x20], r13
mov qword [r15 + 0x28], rax
lea rbx, [rsp + 0x7c0]
mov rcx, rbx
mov rdx, r15
call fcn.14003ff20
mov rax, qword [rbx]
mov qword [rsp + 0xc8], rax
mov rdx, qword [rbx + 8]
mov r8, qword [rbx + 0x10]
lea r14, [rsp + 0x540]
mov rcx, r14
mov qword [rsp + 0x88], rdx
call fcn.140109220
xor eax, eax
mov qword [r14 + 0x20], rax
mov qword [r14 + 0x30], 0xa
mov qword [r14 + 0x38], rax
xor edx, edx
mov word [r14 + 0x48], 0
mov byte [r14 + 0x4a], 0
mov qword [r14 + 0x40], 3
mov ecx, 0xa
mov rdi, rbp
mov rsi, r14
rep movsq qword [rdi], qword [rsi]
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
movups xmm2, xmmword [rbp + 0x20]
movups xmm3, xmmword [rbp + 0x30]
movaps xmmword [rbx + 0x20], xmm2
movaps xmmword [rbx + 0x30], xmm3
movups xmm2, xmmword [rbp + 0x40]
movaps xmmword [rbx + 0x40], xmm2
movaps xmmword [rbx], xmm0
movaps xmmword [rbx + 0x10], xmm1
lea rbx, [rsp + 0x120]
xorps xmm0, xmm0
movups xmmword [r14 + 0x80], xmm0
movups xmmword [rsp + 0x98], xmm0
movups xmmword [r14 + 0x98], xmm0
lea rax, [rsp + 0x540]
lea rsi, [rsp + 0x7c0]
mov ecx, 0xa
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
mov qword [rax + 0x50], rdx
movups xmm0, xmmword [rsp + 0x90]
movups xmmword [rax + 0x58], xmm0
mov rcx, qword [rsp + 0xa0]
mov qword [rax + 0x68], rcx
mov qword [rax + 0x70], rdx
mov ecx, 8
mov qword [rax + 0x78], rcx
mov qword [rax + 0x90], rcx
mov qword [rax + 0xa8], rcx
mov qword [rax + 0xb0], rdx
add rbp, rcx
mov qword [rsp + 0x1d8], rbp
lea rax, [rsp + 0xe0]
add rcx, rax
mov qword [rsp + 0xd0], rcx
mov rcx, r13
mov rdx, r15
call fcn.14011c813
mov rax, qword [rsp + 0x2b0]
cmp rax, 2
je 0x14002506f
cmp eax, 3
je 0x1400257df
mov r14, qword [rsp + 0x280]
mov rbp, qword [rsp + 0x288]
mov rdi, qword [rsp + 0x290]
cmp byte [rsp + 0x2f8], 0
mov qword [rsp + 0x40], rdi
je 0x14002508f
mov rsi, qword [rsp + 0x2a8]
mov rcx, rbx
mov rdx, rbp
mov r8, rdi
call fcn.1400f5a30
mov rax, qword [rsp + 0x120]
cmp rax, 2
jne 0x140025107
mov r8, rdi
mov rdi, qword [rsp + 0x128]
mov rcx, rbx
mov rdx, rbp
call fcn.140109220
mov qword [rsp + 0x160], rsi
mov qword [rsp + 0x140], rdi
mov byte [rsp + 0x158], 2
mov ecx, 9
mov rax, qword [rsp + 0x1d8]
mov rdi, rax
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
mov qword [rsp + 0x280], 1
mov rcx, rax
call fcn.140008a07
jmp 0x140025285
mov ecx, 9
mov rdi, rbx
lea rsi, [rsp + 0x2b8]
rep movsq qword [rdi], qword [rsi]
mov rcx, rbx
call fcn.140008a07
jmp 0x140024f99
mov qword [rsp + 0x38], r14
mov rcx, qword [rsp + 0x2b8]
mov qword [rsp + 0x30], rcx
mov r8d, dword [rsp + 0x2c0]
mov r9d, dword [rsp + 0x2c4]
mov r10d, dword [rsp + 0x2c8]
mov r11d, dword [rsp + 0x2cc]
mov esi, dword [rsp + 0x2d0]
mov edi, dword [rsp + 0x2d4]
mov rcx, qword [rsp + 0x2d8]
mov r12d, dword [rsp + 0x2e0]
mov r13d, dword [rsp + 0x2e4]
mov r15d, dword [rsp + 0x2e8]
mov r14d, dword [rsp + 0x2ec]
mov edx, dword [rsp + 0x2f0]
mov ebx, dword [rsp + 0x2f4]
jmp 0x14002517d
mov qword [rsp + 0x38], r14
mov rcx, qword [rsp + 0x128]
mov qword [rsp + 0x30], rcx
mov r8d, dword [rsp + 0x130]
mov r9d, dword [rsp + 0x134]
mov r10d, dword [rsp + 0x138]
mov r11d, dword [rsp + 0x13c]
mov esi, dword [rsp + 0x140]
mov edi, dword [rsp + 0x144]
mov rcx, qword [rsp + 0x148]
mov r12d, dword [rsp + 0x150]
mov r13d, dword [rsp + 0x154]
mov r15d, dword [rsp + 0x158]
mov r14d, dword [rsp + 0x15c]
mov edx, dword [rsp + 0x160]
mov ebx, dword [rsp + 0x164]
mov qword [rsp + 0x288], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x290], rax
mov dword [rsp + 0x298], r8d
mov dword [rsp + 0x29c], r9d
mov dword [rsp + 0x2a0], r10d
mov dword [rsp + 0x2a4], r11d
mov dword [rsp + 0x2a8], esi
mov dword [rsp + 0x2ac], edi
mov qword [rsp + 0x2b0], rcx
mov dword [rsp + 0x2b8], r12d
mov dword [rsp + 0x2bc], r13d
mov dword [rsp + 0x2c0], r15d
mov dword [rsp + 0x2c4], r14d
mov dword [rsp + 0x2c8], edx
mov dword [rsp + 0x2cc], ebx
mov qword [rsp + 0x280], 0
call fcn.1400809c7
mov r8, rdx
cmp rax, 0x5fffff
jbe 0x14002524f
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x38], 0
mov r12, qword [rsp + 0x48]
lea r13, [rsp + 0x280]
lea rbx, [rsp + 0x120]
lea r15, [rsp + 0x540]
jne 0x1400257c8
jmp 0x140024f99
test rax, rax
mov r12, qword [rsp + 0x48]
lea r13, [rsp + 0x280]
lea rbx, [rsp + 0x120]
lea r15, [rsp + 0x540]
mov r14, qword [rsp + 0x38]
je 0x140025285
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, rbp
mov rdi, qword [rsp + 0x40]
mov rdx, rdi
call fcn.1400f8600
test rax, rax
cmove rax, rbp
cmove rdx, rdi
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025eb7
test rdx, rdx
je 0x140025463
cmp byte [rdx + rax - 1], 0x73
jne 0x140025463
mov rcx, rbp
mov rdx, rdi
call fcn.1400f8600
test rax, rax
cmove rax, rbp
cmove rdx, rdi
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025fa5
cmp rdx, 0x11
jne 0x140025463
lea rax, [0x140237f2f]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x280]
imul rcx, qword [0x1402f8630], 0xffffffffbabf23a8
mov rdx, rcx
xor rdx, 0xffffffffed8ebc68
mov r8, rdx
shr r8, 0x1c
xor r8d, ecx
xor r8d, 0x1c5
shld r8, rdx, 6
movzx ecx, r8w
mov rax, qword [rax + rcx]
movabs rcx, 0xa4929ef02b10be91
xor rax, rcx
mov qword [rsp + 0x1e0], rax
lea rax, [rsp + 0x1e0]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], 8
mov rcx, rbp
mov rdx, rdi
call fcn.14011c7f0
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025fb8
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rdx
lea rax, [rsp + 0x4e8]
mov qword [rsp + 0x280], rax
lea rax, [0x14000aee0]
mov qword [rsp + 0x288], rax
lea rax, [rsp + 0x100]
mov qword [rsp + 0x290], rax
lea rcx, [0x1400ecb90]
mov qword [rsp + 0x298], rcx
lea rax, [rsp + 0x50]
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], rcx
lea rax, str.failed_to_write_whole_buffer
mov qword [rsp + 0x130], rax
mov eax, 3
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x140], r13
mov qword [rsp + 0x148], rax
lea rsi, [rsp + 0x200]
mov rcx, rsi
mov rdx, rbx
call fcn.14003ff20
lea rcx, [rsp + 0xe0]
mov rdx, rbp
mov r8, rdi
mov r9, rsi
call fcn.14000599c
cmp qword [rsp + 0xe0], 0
je 0x140025463
mov rcx, qword [rsp + 0xd0]
call fcn.1400089cb
mov rcx, rbp
mov rdx, rdi
call fcn.1400f8600
test rax, rax
cmove rax, rbp
cmove rdx, rdi
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025ec7
lea rcx, [0x14023a3c2]
mov qword [rsp + 0x280], rcx
mov rcx, qword [rsp + 0x280]
mov r8, qword [0x1402f8638]
mov r9, r8
shr r9, 0x14
xor r9, r8
movabs r8, 0x1fffa8425eba
add r8, r9
shr r8, 0x1f
mov r10d, 0x57bda145
sub r10, r9
xor r8d, r10d
shld r8, r10, 2
movzx r8d, r8w
mov r9d, dword [rcx + r8]
movzx r10d, byte [rcx + r8 + 6]
movzx ecx, word [rcx + r8 + 4]
xor ecx, 0xed43
xor r10b, 0xb7
movzx r8d, r10b
mov byte [rsp + 0x126], r8b
shl r8, 0x30
shl rcx, 0x20
or rcx, r8
xor r9d, 0x324c1114
mov dword [rsp + 0x120], r9d
shr rcx, 0x20
mov word [rsp + 0x124], cx
cmp rdx, 6
jbe 0x140025545
mov ecx, dword [rsp + 0x120]
xor ecx, dword [rax]
mov edx, dword [rsp + 0x123]
xor edx, dword [rax + 3]
or edx, ecx
je 0x140025654
mov rcx, rbp
mov rdx, rdi
call fcn.1400f8600
test rax, rax
cmove rax, rbp
cmove rdx, rdi
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025ed7
lea rcx, [0x140238208]
mov qword [rsp + 0x280], rcx
mov rcx, qword [rsp + 0x280]
imul r8, qword [0x1402f8640], 0x18aa37ca
add r8, 0x5ea44c83
rol r8, 5
imul r8, r8, 0xffffffffb0a2e1c8
rol r8, 7
and r8d, 0xfc7f
mov rcx, qword [rcx + r8]
movabs r8, 0x9d27e8addff0e872
xor rcx, r8
mov qword [rsp + 0x120], rcx
cmp rdx, 7
jbe 0x1400255d7
mov rcx, qword [rsp + 0x120]
cmp rcx, qword [rax]
je 0x140025654
mov rcx, rbp
mov rdx, rdi
call fcn.14011c7f0
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025ee7
lea rcx, [0x140234e41]
mov qword [rsp + 0x280], rcx
mov rcx, qword [rsp + 0x280]
mov r8, 0xffffffffd6ab42c9
sub r8, qword [0x1402f8648]
rol r8, 4
movzx r8d, r8w
mov rcx, qword [rcx + r8]
movabs r8, 0x6663a55797fad51b
xor rcx, r8
mov qword [rsp + 0x120], rcx
cmp rdx, 7
jbe 0x1400257bf
mov rcx, qword [rsp + 0x120]
cmp rcx, qword [rax]
jne 0x1400257bf
lea rax, [0x14023ad68]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x280]
mov rcx, qword [0x1402f8650]
mov rdx, 0xffffffff93f59889
add rcx, rdx
xor rcx, 0x262b354c
inc rcx
rol rcx, 2
movzx ecx, cx
mov rax, qword [rax + rcx]
movabs rcx, 0x90b7ed36fb7b5bf4
xor rax, rcx
mov qword [rsp + 0x1e0], rax
lea rax, [rsp + 0x1e0]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], 8
mov rcx, rbp
mov rdx, rdi
call fcn.1400f8600
test rax, rax
cmove rax, rbp
cmove rdx, rdi
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025f92
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rdx
lea rax, [rsp + 0x4e8]
mov qword [rsp + 0x280], rax
lea rax, [0x14000aee0]
mov qword [rsp + 0x288], rax
lea rax, [rsp + 0x100]
mov qword [rsp + 0x290], rax
lea rcx, [0x1400ecb90]
mov qword [rsp + 0x298], rcx
lea rax, [rsp + 0x50]
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], rcx
lea rax, str.failed_to_write_whole_buffer
mov qword [rsp + 0x130], rax
mov eax, 3
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x140], r13
mov qword [rsp + 0x148], rax
lea rsi, [rsp + 0x200]
mov rcx, rsi
mov rdx, rbx
call fcn.14003ff20
lea rcx, [rsp + 0xe0]
mov rdx, rbp
mov r8, rdi
mov r9, rsi
call fcn.14000599c
cmp qword [rsp + 0xe0], 0
je 0x1400257bf
mov rcx, qword [rsp + 0xd0]
call fcn.1400089cb
test r14, r14
je 0x140024f99
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rbp
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x140024f99
lea rcx, [rsp + 0x280]
call fcn.140007d61
lea rcx, [rsp + 0x540]
call fcn.1400081c2
cmp qword [rsp + 0xc8], 0
je 0x14002581b
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, qword [rsp + 0x88]
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x500], 0
je 0x14002583d
mov r8, qword [rsp + 0x508]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x4e8], 0
je 0x14002585f
mov r8, qword [rsp + 0x4f0]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rdx, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
lea rcx, [rsp + 0x90]
call fcn.140040d40
lea rdx, str.APPDATAsrc_firefox_firefox.rs
lea rsi, [rsp + 0x280]
mov r8d, 7
mov rcx, rsi
call fcn.1400f10d0
cmp byte [rsi + 0x18], 3
jne 0x140025f4b
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x130], rax
movups xmm0, xmmword [rsp + 0x280]
movaps xmmword [rsp + 0x120], xmm0
lea rax, [0x140232478]
mov qword [rsp + 0x540], rax
mov rcx, qword [rsp + 0x540]
mov rax, qword [0x1402f85d8]
rol rax, 6
add rax, 0x494593ef
rol rax, 5
movzx eax, ax
add rax, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x7c0], xmm0
mov qword [rsp + 0x7d0], 0
mov rcx, 0xfffffffffffffff8
lea rdx, [0x140240848]
mov r8, qword [rcx + rdx + 8]
xor r8, qword [rax + rcx + 8]
mov qword [rsp + rcx + 0x7c8], r8
add rcx, 8
cmp rcx, 0x10
jb 0x140025914
mov ecx, 0xca24a021
xor ecx, dword [rax + 0x18]
mov dword [rsp + 0x7d8], ecx
movzx eax, word [rax + 0x1c]
xor eax, 0x4911
mov word [rsp + 0x7dc], ax
lea rax, [rsp + 0x7c0]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 0x1e
lea rax, [rsp + 0x120]
mov qword [rsp + 0x280], rax
lea rax, [0x14000aee0]
mov qword [rsp + 0x288], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x290], rax
lea rax, [0x1400ecb90]
mov qword [rsp + 0x298], rax
lea rdx, [rsp + 0x540]
lea rax, str.failed_to_write_whole_buffer
mov qword [rdx + 0x10], rax
mov eax, 2
mov qword [rdx + 0x18], rax
mov qword [rdx], 0
mov qword [rdx + 0x20], rsi
mov qword [rdx + 0x28], rax
lea rcx, [rsp + 0x200]
call fcn.14003ff20
cmp qword [rsp + 0x120], 0
je 0x1400259fb
mov r8, qword [rsp + 0x128]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov r15, qword [rsp + 0x200]
mov r14, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x210]
lea rsi, [rsp + 0x540]
mov rcx, rsi
mov rdx, r14
mov r8, rbx
call fcn.1400f5a30
cmp dword [rsi], 2
jne 0x140025a4c
mov rax, qword [rsp + 0x548]
mov qword [rsp + 0x288], rax
mov qword [rsp + 0x280], 2
jmp 0x140025a6d
lea rax, [rsp + 0x280]
lea rsi, [rsp + 0x540]
mov ecx, 9
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
cmp qword [rax], 2
jne 0x140025ae3
lea rcx, [rsp + 0x288]
call fcn.1400089cb
test r15, r15
je 0x140025a91
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, r14
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x90], 0
je 0x140025ab3
mov r8, qword [rsp + 0x98]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [r12], 0
je 0x140025ace
mov r8, qword [r12 + 8]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
nop
add rsp, 0xa18
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x30], r15
lea rcx, [0x140233db7]
lea rsi, [rsp + 0x540]
mov qword [rsi], rcx
mov rcx, qword [rsi]
mov rdx, 0xfffffffffd43e4de
sub rdx, qword [0x1402f85e0]
mov r8, rdx
shr r8, 0x18
xor r8, rdx
mov r9, r8
shr r9, 0x15
xor r9d, r8d
shld r9, rdx, 1
movzx edx, r9w
movabs r8, 0xe20686d823f82ec8
xor r8, qword [rcx + rdx]
mov qword [rsp + 0x200], r8
lea rcx, [rsp + 0x200]
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0x128], 8
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x280], rcx
lea rcx, [0x14000aee0]
mov qword [rsp + 0x288], rcx
lea rcx, [rsp + 0x120]
mov qword [rsp + 0x290], rcx
lea rcx, [0x1400ecb90]
mov qword [rsp + 0x298], rcx
lea rcx, str.failed_to_write_whole_buffer
mov qword [rsi + 0x10], rcx
mov ecx, 2
mov qword [rsi + 0x18], rcx
mov qword [rsi], 0
mov qword [rsi + 0x20], rax
mov qword [rsi + 0x28], rcx
lea r13, [rsp + 0x7c0]
mov rcx, r13
mov rdx, rsi
call fcn.14003ff20
mov rcx, r13
call fcn.1400058db
mov qword [rsi], rax
test rax, rax
je 0x140025beb
lea rcx, [rsp + 0x540]
call fcn.1400089cb
lea rbp, [rsp + 0x540]
mov rcx, rbp
mov qword [rsp + 0x38], r14
mov rdx, r14
mov r8, rbx
call fcn.140109220
xor eax, eax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x30], 0xa
mov qword [rbp + 0x38], rax
mov word [rbp + 0x48], 0
mov byte [rbp + 0x4a], 0
mov qword [rbp + 0x40], 1
lea r14, [rsp + 0x280]
mov ecx, 0xa
mov rdi, r14
mov rsi, rbp
rep movsq qword [rdi], qword [rsi]
movups xmm0, xmmword [r14 + 0x40]
movaps xmmword [rbp + 0x40], xmm0
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmm2, xmmword [r14 + 0x20]
movups xmm3, xmmword [r14 + 0x30]
movaps xmmword [rbp + 0x30], xmm3
movaps xmmword [rbp + 0x20], xmm2
movaps xmmword [rbp], xmm0
movaps xmmword [rbp + 0x10], xmm1
mov qword [rbp + 0x70], rax
mov ecx, 8
mov qword [rbp + 0x78], rcx
xorps xmm0, xmm0
movaps xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0x90], rcx
movaps xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x98], xmm0
mov qword [rbp + 0xa8], rcx
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0x50], rax
lea rax, [rsp + 0x50]
add rcx, rax
mov qword [rsp + 0x40], rcx
mov rcx, r14
mov rdx, rbp
call fcn.14011c813
mov rax, qword [rsp + 0x2b0]
cmp rax, 2
je 0x140025e28
cmp eax, 3
je 0x140025e48
mov r12, qword [rsp + 0x280]
mov rsi, qword [rsp + 0x288]
mov rdi, qword [rsp + 0x290]
mov rcx, rsi
mov rdx, rdi
call fcn.1400f8600
test rax, rax
cmove rax, rsi
cmove rdx, rdi
mov rcx, rax
call fcn.140109190
test rax, rax
je 0x140025e9d
mov qword [rsp + 0x200], rax
mov qword [rsp + 0x208], rdx
lea rax, [rsp + 0x90]
mov qword [rsp + 0x7c0], rax
lea rax, [0x14000aee0]
mov qword [rsp + 0x7c8], rax
lea rax, [rsp + 0x200]
mov qword [rsp + 0x7d0], rax
lea rax, [0x1400ecb90]
mov qword [rsp + 0x7d8], rax
lea rax, str.failed_to_write_whole_buffer
mov qword [rsp + 0x290], rax
mov eax, 2
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x280], 0
mov qword [rsp + 0x2a0], r13
mov qword [rsp + 0x2a8], rax
lea rcx, [rsp + 0x120]
mov rdx, r14
call fcn.14003ff20
mov r15, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x128]
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, rdi
mov r9, rbx
call fcn.140108ec0
cmp qword [rsp + 0x50], 0
je 0x140025df1
mov rcx, qword [rsp + 0x40]
call fcn.1400089cb
test r15, r15
je 0x140025e08
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
test r12, r12
je 0x140025cb4
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x140025cb4
mov ecx, 9
mov rdi, r13
lea rsi, [rsp + 0x2b8]
rep movsq qword [rdi], qword [rsi]
mov rcx, r13
call fcn.140008a07
jmp 0x140025cb4
lea rcx, [rsp + 0x280]
call fcn.140007d61
lea rcx, [rsp + 0x540]
call fcn.1400081c2
cmp qword [rsp + 0x30], 0
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x38]
jne 0x140025a7f
jmp 0x140025a91
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.srcmessengersicq.rs
jmp 0x140025eab
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.srcmessengers_skype.rs
jmp 0x140025eab
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.srcmessengerselement.rs
mov edx, 0x2b
call fcn.140237a10
ud2
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, [0x140240a70]
jmp 0x140025eab
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, [0x140240ab8]
jmp 0x140025eab
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, [0x140240ad0]
jmp 0x140025eab
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, [0x140240ae8]
jmp 0x140025eab
movups xmm0, xmmword [rsp + 0x280]
movups xmm1, xmmword [rsp + 0x290]
lea r8, [rsp + 0x540]
movaps xmmword [r8 + 0x10], xmm1
movaps xmmword [r8], xmm0
lea rax, str.srcmessengersicq.rs
jmp 0x140025f73
movups xmm0, xmmword [rsp + 0x280]
movups xmm1, xmmword [rsp + 0x290]
lea r8, [rsp + 0x540]
movaps xmmword [r8 + 0x10], xmm1
movaps xmmword [r8], xmm0
lea rax, str.srcmessengers_skype.rs
jmp 0x140025f73
movups xmm0, xmmword [rsp + 0x280]
movups xmm1, xmmword [rsp + 0x290]
lea r8, [rsp + 0x540]
movaps xmmword [r8 + 0x10], xmm1
movaps xmmword [r8], xmm0
lea rax, str.srcmessengerselement.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x1402d200b]
lea r9, fcn.140008310
mov edx, 0x2b
call fcn.140237ca0
ud2
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, [0x140240b00]
jmp 0x140025eab
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, [0x140240a88]
jmp 0x140025eab
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, [0x140240aa0]
jmp 0x140025eab
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, [0x140240a00]
jmp 0x140025eab
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, [0x140240a48]
jmp 0x140025eab