Function at 0x1400464c0
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
mov rdi, rdx
mov rsi, rcx
mov rbx, qword [rdx + 0x18]
mov r14, qword [rdx + 0x20]
test rbx, rbx
je 0x1400464ec
mov rax, qword [r14 + 0x30]
jmp 0x1400464f0
mov eax, dword [r14 + 0x34]
mov qword [rsp + 0x28], rax
mov eax, dword [r14 + 0x50]
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x28]
lea rdx, [rsp + 0x70]
call fcn.140046350
cmp eax, 0xb
je 0x140046533
mov qword [rsp + 0x28], 0
lea rcx, [rsp + 0x28]
lea rdx, [rsp + 0x70]
call fcn.140046350
cmp eax, 0xb
jne 0x14004668a
mov qword [rsp + 0x30], rsi
mov rsi, qword [rdi + 0x28]
mov rbp, qword [rdi + 0x30]
test rbp, rbp
je 0x140046585
mov rdi, qword [rdi + 0x48]
lea rax, [rbp*8]
lea r15, [rax + rax*4]
xor r12d, r12d
nop dword [rax + rax]
mov edx, dword [rsi + r12 + 0x14]
add rdx, rdi
mov ecx, dword [rsi + r12 + 0xc]
mov r8d, dword [rsi + r12 + 0x10]
add rcx, qword [rsp + 0x28]
call sub.msvcrt.dll_memcpy
add r12, 0x28
cmp r15, r12
jne 0x140046560
mov r13, qword [rsp + 0x28]
test rbx, rbx
je 0x1400465a7
lea rdx, [r14 + 0xb0]
mov rcx, qword [r14 + 0x30]
mov rax, r13
sub rax, rcx
jne 0x1400465be
jmp 0x14004669a
lea rdx, [r14 + 0xa0]
mov ecx, dword [r14 + 0x34]
mov rax, r13
sub rax, rcx
je 0x14004669a
mov ecx, dword [rdx]
test rcx, rcx
je 0x14004669a
cmp dword [rdx + 4], 0
je 0x14004669a
add rcx, r13
mov edx, 1
mov r8d, dword [rcx + 4]
test r8, r8
jne 0x140046600
jmp 0x140046670
mov r8d, dword [rcx + 4]
add rcx, r8
mov r8d, dword [rcx + 4]
test r8, r8
je 0x140046670
cmp r8d, 0xa
jb 0x1400465f4
lea r9, [r8 - 8]
shr r9, 0x3f
add r8, r9
add r8, 0xfffffffffffffff8
sar r8, 1
cmp r8, 2
cmovl r8, rdx
xor r9d, r9d
jmp 0x140046638
inc r9
cmp r8, r9
je 0x1400465f0
movzx r10d, word [rcx + r9*2 + 8]
mov r11d, r10d
and r11d, 0xf000
cmp r11d, 0xa000
jne 0x140046630
mov r11d, dword [rcx]
and r10d, 0xfff
add r11, r13
add qword [r10 + r11], rax
jmp 0x140046630
cmp dword [rcx], 0
je 0x140046695
xor r8d, r8d
add rcx, r8
mov r8d, dword [rcx + 4]
test r8, r8
jne 0x140046600
jmp 0x140046670
mov dword [rsi + 4], eax
mov dword [rsi + 8], edx
jmp 0x140046c1b
mov r13, qword [rsp + 0x28]
shl ebx, 4
lea r15, [r14 + rbx]
add r15, 0x78
cmp dword [r14 + rbx + 0x84], 0
mov qword [rsp + 0x90], r15
je 0x14004692c
mov r14d, dword [r15 + 8]
test r14, r14
je 0x14004692c
add r14, r13
lea rax, [r13 + 2]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x88], rbp
mov ebx, dword [r14 + 0xc]
test rbx, rbx
jne 0x140046710
cmp dword [r14 + 0x10], 0
jne 0x140046710
cmp dword [r14], 0
jne 0x140046710
cmp dword [r14 + 4], 0
jne 0x140046710
cmp dword [r14 + 8], 0
je 0x14004692c
nop dword [rax + rax]
add rbx, r13
mov rcx, rbx
call sub.msvcrt.dll_strlen
lea rbp, [rsp + 0x38]
mov rcx, rbp
mov rdx, rbx
mov r8, rax
call fcn.14003d980
cmp qword [rsp + 0x38], 0
jne 0x140046b70
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x48]
mov rcx, rbp
call fcn.1400368b0
mov rax, qword [rsp + 0x38]
movabs rcx, 0x8000000000000000
cmp rax, rcx
jne 0x140046bea
mov qword [rsp + 0x68], r14
mov r14, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
mov rcx, r14
call sub.KERNEL32.dll_LoadLibraryA
mov r15, rax
test rax, rax
mov rbp, qword [rsp + 0x58]
cmove rax, rbp
mov qword [rsp + 0x60], rax
mov byte [r14], 0
test rbx, rbx
je 0x1400467a9
mov rcx, qword [0x1419340f0]
xor edx, edx
mov r8, r14
call fcn.1401034d0
test r15, r15
je 0x140046c3a
mov rcx, qword [rsp + 0x68]
mov eax, dword [rcx]
mov ecx, dword [rcx + 0x10]
add rcx, r13
lea rdx, [rax + r13]
test rax, rax
mov qword [rsp + 0x58], rcx
cmove rdx, rcx
mov qword [rsp + 0xa0], rdx
mov r15, qword [rdx]
test r15, r15
je 0x1400468f0
xor ebp, ebp
jmp 0x140046836
movzx edx, r15w
mov rcx, qword [rsp + 0x60]
call sub.KERNEL32.dll_GetProcAddress
mov r14, rdi
mov rcx, rax
test rax, rax
je 0x140046bf8
mov rdx, qword [rsp + 0x58]
mov qword [rdx + rbp], rcx
mov rcx, qword [rsp + 0xa0]
mov r15, qword [rcx + rbp + 8]
add rbp, 8
mov rdi, r14
mov r12, rax
test r15, r15
je 0x1400468f6
test r15, r15
js 0x1400467f0
mov rax, qword [rsp + 0x98]
cmp byte [rax + r15], 0
je 0x1400468f0
add r15, rax
mov rcx, r15
call sub.msvcrt.dll_strlen
lea rbx, [rsp + 0x38]
mov rcx, rbx
mov rdx, r15
mov r8, rax
call fcn.14003d980
cmp qword [rsp + 0x38], 0
jne 0x140046b70
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x48]
mov rcx, rbx
call fcn.1400368b0
mov rax, qword [rsp + 0x38]
movabs rcx, 0x8000000000000000
cmp rax, rcx
jne 0x140046b62
mov r15, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
mov rdx, r15
call sub.KERNEL32.dll_GetProcAddress
mov r14, rax
mov byte [r15], 0
test rbx, rbx
je 0x1400468d6
mov rcx, qword [0x1419340f0]
xor edx, edx
mov r8, r15
call fcn.1401034d0
mov rax, r12
mov rcx, r14
test r14, r14
jne 0x14004680d
jmp 0x140046bbe
mov rax, r12
mov r14, rdi
mov rcx, qword [rsp + 0x68]
add rcx, 0x14
mov r12, rax
mov rdi, r14
mov r14, rcx
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x58], rax
mov rbp, qword [rsp + 0x88]
mov ebx, dword [r14 + 0xc]
test rbx, rbx
jne 0x140046710
jmp 0x1400466e9
test rbp, rbp
je 0x140046af8
shl rbp, 3
lea rdi, [rbp*4]
add rdi, rbp
xor r15d, r15d
lea rbx, [rsp + 0x38]
lea r14, [rsp + 0x80]
lea r12, [rsp + 0x78]
jmp 0x1400469a6
mov r13, qword [0x141934048]
test r13, r13
je 0x140046a10
mov dword [rsp + 0x38], 0
call sub.KERNEL32.dll_GetCurrentProcess
mov qword [rsp + 0x20], rbx
mov rcx, rax
mov rdx, r14
mov r8, r12
mov r9d, ebp
call r13
test eax, eax
jne 0x140046b7a
add r15, 0x28
cmp rdi, r15
je 0x140046af8
mov eax, dword [rsi + r15 + 0x10]
mov qword [rsp + 0x78], rax
test rax, rax
je 0x140046999
mov eax, dword [rsi + r15 + 0xc]
add rax, qword [rsp + 0x28]
mov qword [rsp + 0x80], rax
mov eax, dword [rsi + r15 + 0x24]
test eax, 0x20000000
jne 0x1400469f0
mov ebp, 1
test eax, 0x40000000
je 0x140046960
shr eax, 0x1f
lea ebp, [rax*2 + 2]
jmp 0x140046960
mov ebp, 0x10
test eax, 0x40000000
je 0x140046960
shr eax, 0x1a
and eax, 0xffffffe0
add eax, 0x20
mov ebp, eax
jmp 0x140046960
mov r8d, 9
mov rcx, rbx
lea rdx, [0x1418d07ec]
call fcn.1400368b0
mov rax, qword [rsp + 0x38]
movabs rcx, 0x8000000000000000
cmp rax, rcx
jne 0x140046ba0
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x48]
mov rcx, r14
call sub.KERNEL32.dll_LoadLibraryA
mov r13, rax
mov byte [r14], 0
test r12, r12
je 0x140046a6c
mov rcx, qword [0x1419340f0]
xor edx, edx
mov r8, r14
call fcn.1401034d0
xor eax, eax
test r13, r13
je 0x140046c02
mov rcx, rbx
mov r8d, 0x16
lea rdx, [0x1418d080c]
call fcn.1400368b0
mov rax, qword [rsp + 0x38]
movabs rcx, 0x8000000000000000
cmp rax, rcx
jne 0x140046bc7
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x48]
mov rcx, r13
mov rdx, r14
call sub.KERNEL32.dll_GetProcAddress
mov r13, rax
mov byte [r14], 0
test r12, r12
je 0x140046ad6
mov rcx, qword [0x1419340f0]
xor edx, edx
mov r8, r14
call fcn.1401034d0
test r13, r13
lea r12, [rsp + 0x78]
je 0x140046c09
mov qword [0x141934048], r13
lea r14, [rsp + 0x80]
jmp 0x140046970
mov rdi, qword [rsp + 0x28]
mov rax, qword [rsp + 0x90]
cmp dword [rax + 0x4c], 0
je 0x140046b4e
mov eax, dword [rax + 0x48]
test rax, rax
je 0x140046b4e
mov rsi, qword [rdi + rax + 0x18]
mov rax, qword [rsi]
test rax, rax
je 0x140046b4e
add rsi, 8
nop word cs:[rax + rax]
mov rcx, rdi
mov edx, 2
xor r8d, r8d
call rax
mov rax, qword [rsi]
add rsi, 8
test rax, rax
jne 0x140046b30
mov rdi, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov qword [rax + 8], rdi
mov dword [rax], 0
jmp 0x140046c50
test rax, rax
jne 0x140046b84
xor esi, esi
mov ebp, edi
jmp 0x140046c3f
mov esi, 5
jmp 0x140046c3f
mov ecx, 4
jmp 0x140046c10
mov r8, qword [rsp + 0x40]
mov rcx, qword [0x1419340f0]
xor esi, esi
xor edx, edx
call fcn.1401034d0
mov ebp, edi
jmp 0x140046c3f
test rax, rax
je 0x140046bb8
mov r8, qword [rsp + 0x40]
mov rcx, qword [0x1419340f0]
xor edx, edx
call fcn.1401034d0
xor eax, eax
xor ecx, ecx
jmp 0x140046c10
mov esi, 2
mov ebp, edi
jmp 0x140046c3f
test rax, rax
mov rsi, qword [rsp + 0x30]
je 0x140046be4
mov r8, qword [rsp + 0x40]
mov rcx, qword [0x1419340f0]
xor edx, edx
call fcn.1401034d0
xor eax, eax
xor ecx, ecx
jmp 0x140046c15
test rax, rax
mov rbp, qword [rsp + 0x58]
jne 0x140046c23
xor esi, esi
jmp 0x140046c3f
mov esi, 2
mov ebp, r12d
jmp 0x140046c3f
mov ecx, 1
jmp 0x140046c10
mov ecx, 2
xor eax, eax
mov rsi, qword [rsp + 0x30]
mov dword [rsi + 4], ecx
mov dword [rsi + 8], eax
mov dword [rsi], 1
jmp 0x140046c50
mov r8, qword [rsp + 0x40]
mov rcx, qword [0x1419340f0]
xor esi, esi
xor edx, edx
call fcn.1401034d0
jmp 0x140046c3f
mov esi, 1
mov rax, qword [rsp + 0x30]
mov dword [rax + 4], esi
mov dword [rax + 8], ebp
mov dword [rax], 1
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret