Function at 0x140030340
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x20], r9
push rbp
push rbx
push rdi
push r12
push r13
push r15
mov rbp, rsp
sub rsp, 0x48
mov eax, dword [r8]
mov r12, r8
cmp dword [rdx], eax
mov r15, rdx
movsxd rdi, dword [r8]
mov rbx, rcx
setne al
xor r13d, r13d
test rdi, rdi
jle 0x140030418
mov r10d, r13d
mov r11d, r13d
nop dword [rax + rax]
test al, al
jne 0x140030420
movsxd rdx, dword [r12 + 4]
lea rcx, [r12 + 4]
add rdx, rcx
mov eax, r13d
sub eax, dword [rcx]
lea rcx, [r15 + 4]
neg eax
sbb rax, rax
and rdx, rax
mov eax, r13d
sub eax, dword [rcx]
lea r8, [rdx + r10*8]
movsxd rdx, dword [rcx]
add rdx, rcx
neg eax
sbb rax, rax
and rdx, rax
mov eax, r13d
lea rcx, [rdx + 0xc]
add rcx, r11
sub eax, dword [rcx]
movsxd r9, dword [rcx]
add r9, rcx
movsxd rcx, dword [r8]
neg eax
sbb rax, rax
add rcx, r8
and r9, rax
mov eax, r13d
sub eax, dword [r8]
neg eax
sbb rax, rax
and rcx, rax
sub r9, rcx
nop
movzx edx, byte [rcx]
movzx eax, byte [rcx + r9]
sub edx, eax
jne 0x140030403
inc rcx
test eax, eax
jne 0x1400303f0
test edx, edx
setne al
inc r10
add r11, 0x10
cmp r10, rdi
jl 0x140030380
test al, al
je 0x140030a47
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x40], r14
cmp byte [rbx + 0x20], r13b
je 0x140030449
mov r8d, 1
mov byte [rbp + 0x40], 0x2c
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbp + 0x40], 0x7b
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], r13b
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x22
mov rcx, rbx
call fcn.140037fc0
mov r8, 0xffffffffffffffff
lea rdx, [0x14008d8a0]
mov rcx, rbx
call fcn.1400380c0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], 1
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x3a
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], r13b
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x22
mov rcx, rbx
call fcn.140037fc0
mov r8, 0xffffffffffffffff
lea rdx, str.FileList
mov rcx, rbx
call fcn.1400380c0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], 1
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x2c
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8, 0xffffffffffffffff
lea rdx, str.value
mov rcx, rbx
call fcn.1400380c0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], 1
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x3a
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], r13b
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x5b
mov rcx, rbx
call fcn.140037fc0
lea rcx, [r12 + 4]
mov byte [rbx + 0x20], r13b
movsxd rdx, dword [rcx]
lea r8, [r12 + 4]
mov eax, r13d
add rdx, rcx
sub eax, dword [rcx]
neg eax
movsxd rsi, dword [r8]
sbb rax, rax
and rdx, rax
add rsi, r8
movsxd rax, dword [r12]
lea r14, [rdx + rax*8]
mov eax, r13d
sub eax, dword [r8]
neg eax
sbb rax, rax
and rsi, rax
cmp rsi, r14
je 0x140030670
nop dword [rax + rax]
movsxd rdi, dword [rsi]
mov eax, r13d
sub eax, dword [rsi]
add rdi, rsi
neg eax
sbb rax, rax
and rdi, rax
cmp byte [rbx + 0x20], r13b
je 0x14003060f
mov r8d, 1
mov byte [rbp + 0x40], 0x2c
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov rcx, rbx
test rdi, rdi
jne 0x140030624
lea r8d, [rdi + 4]
lea rdx, str.null
jmp 0x14003065a
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
call fcn.140037fc0
mov r8, 0xffffffffffffffff
mov rdx, rdi
mov rcx, rbx
call fcn.1400380c0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
add rsi, 8
mov byte [rbx + 0x20], 1
cmp rsi, r14
jne 0x1400305e0
mov r8d, 1
mov byte [rbp + 0x40], 0x5d
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], 1
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x2c
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8, 0xffffffffffffffff
lea rdx, str.oldvalue
mov rcx, rbx
call fcn.1400380c0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], 1
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x3a
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], r13b
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x5b
mov rcx, rbx
call fcn.140037fc0
mov byte [rbx + 0x20], r13b
lea rcx, [r15 + 4]
movsxd r14, dword [rcx]
lea rdx, [r15 + 4]
movsxd rdi, dword [rdx]
add r14, rcx
mov eax, r13d
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, rdx
and r14, rax
movsxd rax, dword [r15]
shl rax, 4
add r14, rax
mov eax, r13d
sub eax, dword [rdx]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, r14
je 0x1400307f0
nop dword [rax + rax]
movsxd rax, dword [rdi + 0xc]
lea rsi, [rdi + 0xc]
add rsi, rax
cmp dword [rdi + 0xc], r13d
cmove rsi, r13
cmp byte [rbx + 0x20], r13b
je 0x14003078f
mov r8d, 1
mov byte [rbp + 0x40], 0x2c
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov rcx, rbx
test rsi, rsi
jne 0x1400307a4
lea r8d, [rsi + 4]
lea rdx, str.null
jmp 0x1400307da
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
call fcn.140037fc0
mov r8, 0xffffffffffffffff
mov rdx, rsi
mov rcx, rbx
call fcn.1400380c0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
add rdi, 0x10
mov byte [rbx + 0x20], 1
cmp rdi, r14
jne 0x140030760
mov r8d, 1
mov byte [rbp + 0x40], 0x5d
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], 1
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x2c
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8, 0xffffffffffffffff
lea rdx, str.dependency
mov rcx, rbx
call fcn.1400380c0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], 1
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x3a
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], r13b
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x22
mov rcx, rbx
call fcn.140037fc0
mov r8, 0xffffffffffffffff
lea rdx, str.explicit
mov rcx, rbx
call fcn.1400380c0
mov r8d, 1
mov byte [rbp + 0x40], 0x22
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.140037fc0
mov r8d, 1
mov byte [rbx + 0x20], 1
lea rdx, [rbp + 0x40]
mov byte [rbp + 0x40], 0x7d
mov rcx, rbx
call fcn.140037fc0
xor r8d, r8d
mov byte [rbx + 0x20], 1
movsxd r13, dword [r15 + 4]
lea rcx, [r15 + 4]
movsxd rdi, dword [r15 + 4]
lea rdx, [r15 + 4]
add r13, rcx
mov eax, r8d
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, rdx
and r13, rax
movsxd rax, dword [r15]
shl rax, 4
add r13, rax
mov eax, r8d
sub eax, dword [rdx]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, r13
je 0x140030a2a
lea r15, [r12 + 4]
nop dword [rax + rax]
movsxd rsi, dword [r12]
mov r9, r8
test rsi, rsi
jle 0x140030a1d
movsxd r11, dword [r15]
mov eax, r8d
sub eax, dword [r15]
add r11, r15
movsxd r14, dword [rdi + 0xc]
neg eax
sbb rax, rax
add r14, 0xc
add r14, rdi
and r11, rax
cmp dword [rdi + 0xc], 0
cmove r14, r8
nop word [rax + rax]
movsxd rax, dword [r11 + r9*8]
lea r10, [r11 + r9*8]
mov ecx, r8d
add rax, r10
sub ecx, dword [r10]
mov r8, r14
neg ecx
sbb rcx, rcx
and rax, rcx
sub r8, rax
nop
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400309a3
inc rax
test ecx, ecx
jne 0x140030990
test edx, edx
je 0x1400309b7
inc r9
mov r8d, 0
cmp r9, rsi
jl 0x140030970
jmp 0x140030a1d
mov rcx, qword [rbp + 0x50]
xor eax, eax
mov r8d, dword [r10 + 4]
add rcx, 4
sub eax, dword [rcx]
movsxd rdx, dword [rcx]
add rdx, rcx
neg eax
sbb rax, rax
and rdx, rax
xor eax, eax
sub eax, dword [r10]
movzx ecx, byte [rdx + r9]
movsxd rdx, dword [r10]
mov r9, qword [rdi]
add rdx, r10
neg eax
mov dword [rsp + 0x38], ecx
mov rcx, rbx
sbb rax, rax
and rdx, rax
mov rax, qword [rbp + 0x60]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x58]
mov qword [rsp + 0x28], rax
lea rax, str.explicit
mov qword [rsp + 0x20], rax
call fcn.14002ff60
xor r8d, r8d
add rdi, 0x10
cmp rdi, r13
jne 0x140030930
mov r14, qword [rsp + 0x40]
mov al, 1
mov rsi, qword [rsp + 0x80]
add rsp, 0x48
pop r15
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret
xor al, al
add rsp, 0x48
pop r15
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret