Function at 0x140040a60
Capabilities:
Terminate process

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
sub rsp, 0x140
lea rbp, [rsp + 0x20]
lea rcx, [0x1401a0c96]
call fcn.140068b20
mov edx, 0x318
mov ecx, 1
call fcn.140068460
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x140]
mov qword [rax], rcx
xor ecx, ecx
call fcn.1400425f0
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x228], rax
mov rax, qword [rbp + 8]
mov eax, dword [rax + 0x230]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx + 0x230], eax
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x140]
mov ecx, dword [rcx + 0xf28]
mov dword [rax + 0x248], ecx
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x140]
mov ecx, dword [rcx + 0xf2c]
mov dword [rax + 0x24c], ecx
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x140]
mov rcx, qword [rcx + 0xf30]
mov qword [rax + 0x250], rcx
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x140]
mov ecx, dword [rcx + 0x1440]
mov dword [rax + 0x2f0], ecx
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x140]
lea rdi, [rax + 0x2d8]
lea rsi, [rcx + 0x1428]
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rbp + 0x140]
mov eax, dword [rax + 0xce4]
shr eax, 2
and eax, 1
and eax, 1
mov rcx, qword [rbp + 8]
mov ecx, dword [rcx + 0x270]
and ecx, 0xfffffffe
or ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 8]
mov dword [rcx + 0x270], eax
mov rax, qword [rbp + 0x140]
mov eax, dword [rax + 0xce4]
shr eax, 5
and eax, 1
and eax, 1
shl eax, 1
mov rcx, qword [rbp + 8]
mov ecx, dword [rcx + 0x270]
and ecx, 0xfffffffd
or ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 8]
mov dword [rcx + 0x270], eax
mov rax, qword [rbp + 0x140]
mov eax, dword [rax + 0xf24]
shr eax, 5
and eax, 1
and eax, 1
shl eax, 2
mov rcx, qword [rbp + 8]
mov ecx, dword [rcx + 0x270]
and ecx, 0xfffffffb
or ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 8]
mov dword [rcx + 0x270], eax
mov rax, qword [rbp + 0x140]
mov eax, dword [rax + 0xf24]
shr eax, 1
and eax, 1
and eax, 1
shl eax, 3
mov rcx, qword [rbp + 8]
mov ecx, dword [rcx + 0x270]
and ecx, 0xfffffff7
or ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 8]
mov dword [rcx + 0x270], eax
mov rax, qword [rbp + 0x140]
mov eax, dword [rax + 0xf24]
shr eax, 2
and eax, 1
and eax, 1
shl eax, 4
mov rcx, qword [rbp + 8]
mov ecx, dword [rcx + 0x270]
and ecx, 0xffffffef
or ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 8]
mov dword [rcx + 0x270], eax
mov rax, qword [rbp + 0x140]
mov eax, dword [rax + 0xf24]
shr eax, 3
and eax, 1
and eax, 1
shl eax, 5
mov rcx, qword [rbp + 8]
mov ecx, dword [rcx + 0x270]
and ecx, 0xffffffdf
or ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 8]
mov dword [rcx + 0x270], eax
mov rax, qword [rbp + 0x140]
mov eax, dword [rax + 0xf24]
and eax, 1
and eax, 1
shl eax, 6
mov rcx, qword [rbp + 8]
mov ecx, dword [rcx + 0x270]
and ecx, 0xffffffbf
or ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 8]
mov dword [rcx + 0x270], eax
mov rax, qword [rbp + 0x140]
add rax, 0xe24
mov rcx, rax
call fcn.14003fcb0
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x310], rax
mov rax, qword [rbp + 0x140]
add rax, 0xf38
mov rcx, rax
call fcn.14003fcb0
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x268], rax
mov rax, qword [rbp + 0x140]
cmp dword [rax + 0xba0], 1
ja 0x140040d1f
mov rax, qword [rbp + 0x140]
add rax, 0xd24
mov rcx, rax
call fcn.14003fcb0
mov rcx, qword [rbp + 8]
mov qword [rcx + 8], rax
jmp 0x140040d42
mov rax, qword [rbp + 0x140]
add rax, 0xd24
mov edx, dword [rbp + 0x148]
mov rcx, rax
call fcn.14003fde0
mov rcx, qword [rbp + 8]
mov qword [rcx + 8], rax
mov dword [rbp + 0x24], 0
jmp 0x140040d53
mov eax, dword [rbp + 0x24]
inc eax
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 8
jae 0x140040d99
mov eax, dword [rbp + 0x24]
imul rax, rax, 0x170
mov ecx, dword [rbp + 0x24]
imul rcx, rcx, 0x40
mov rdx, qword [rbp + 8]
mov rdi, qword [rbp + 0x140]
mov qword [rbp + 0x118], rdi
lea rdi, [rdx + rcx + 0x10]
mov rcx, qword [rbp + 0x118]
lea rsi, [rcx + rax + 0x128]
mov ecx, 0x40
rep movsb byte [rdi], byte [rsi]
jmp 0x140040d4b
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x140]
mov ecx, dword [rcx + 0xd20]
mov dword [rax + 0x220], ecx
mov rax, qword [rbp + 8]
mov eax, dword [rax + 0x220]
mov dword [rbp + 0x114], eax
cmp dword [rbp + 0x114], 0x80
ja 0x140040e22
cmp dword [rbp + 0x114], 0x80
je 0x140040f0e
cmp dword [rbp + 0x114], 2
je 0x140040e73
cmp dword [rbp + 0x114], 4
je 0x140040efa
cmp dword [rbp + 0x114], 8
je 0x140040ea1
cmp dword [rbp + 0x114], 0x10
je 0x140040eb8
cmp dword [rbp + 0x114], 0x11
je 0x140040ecf
jmp 0x140040f5e
cmp dword [rbp + 0x114], 0x100
je 0x140040f22
cmp dword [rbp + 0x114], 0x200
je 0x140040e8a
cmp dword [rbp + 0x114], 0x400
je 0x140040f4a
cmp dword [rbp + 0x114], 0x800
je 0x140040ee6
cmp dword [rbp + 0x114], 0x1000
je 0x140040f36
jmp 0x140040f5e
mov rax, qword [rbp + 8]
lea rcx, str.X2_a_
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, [0x1400733b8]
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, [0x140073478]
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, str.json
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, str.ndjson
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, str.cert
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, str.scan
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, str.grepable
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, str.redis
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, str.hostonly
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, str.null
mov qword [rax + 0x218], rcx
jmp 0x140040f70
mov rax, qword [rbp + 8]
lea rcx, str.null
mov qword [rax + 0x218], rcx
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rbp + 0x140]
movsx eax, byte [rcx + rax + 0xd24]
test eax, eax
je 0x140041006
lea rax, str.null
mov rcx, qword [rbp + 8]
cmp qword [rcx + 0x218], rax
je 0x140041006
mov rax, qword [rbp + 0x140]
add rax, 0xd24
mov rdx, rax
mov rcx, qword [rbp + 8]
call fcn.140040350
mov qword [rbp + 0x48], rax
cmp qword [rbp + 0x48], 0
jne 0x140040fe5
mov rax, qword [rbp + 0x140]
add rax, 0xd24
mov rcx, rax
call qword [sym.imp.ucrtbased.dll_perror]
mov ecx, 1
call qword [sym.imp.ucrtbased.dll_exit]
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x48]
mov qword [rax + 0x210], rcx
xor ecx, ecx
call fcn.1400425f0
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x240], rax
mov rax, qword [rbp + 0x140]
cmp dword [rax + 0xf28], 0
jne 0x14004102a
mov rax, qword [rbp + 8]
mov qword [rax + 0x238], 0x7fffffff
jmp 0x1400410ac
mov rax, qword [rbp + 8]
cmp dword [rax + 0x24c], 1
jbe 0x14004107c
mov rax, qword [rbp + 8]
mov eax, dword [rax + 0x248]
mov rcx, qword [rbp + 8]
mov rcx, qword [rcx + 0x240]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rbp + 8]
mov r8d, dword [rcx + 0x24c]
mov rcx, qword [rbp + 8]
mov edx, dword [rcx + 0x248]
mov rcx, rax
call fcn.1400400c0
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x238], rax
jmp 0x1400410ac
mov rax, qword [rbp + 8]
mov r8d, dword [rax + 0x24c]
mov rax, qword [rbp + 8]
mov edx, dword [rax + 0x248]
mov rax, qword [rbp + 8]
mov rcx, qword [rax + 0x240]
call fcn.1400400c0
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x238], rax
mov rax, qword [rbp + 8]
lea rsp, [rbp + 0x120]
pop rdi
pop rsi
pop rbp
ret