Function at 0x1400227b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x38
mov ebp, r9d
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
cmp rcx, 0x1000
jb 0x140022bcb
movabs rax, 0xffff800000000000
test rax, rcx
jne 0x140022bcb
cmp dword [rcx], 0x19291112
jne 0x140022bbd
cmp rdx, 0x1000
jb 0x140022bcb
test rax, rdx
jne 0x140022bcb
lea eax, [r9 - 1]
mov qword [rsp + 0x78], r14
cmp eax, 4
ja 0x140022baa
mov eax, dword [rsp + 0x80]
and eax, 0xfffffffb
dec eax
cmp eax, 1
ja 0x140022baa
mov r14d, 0x1dc
test r8, r8
je 0x140022849
mov r14, qword [r8]
cmp r14, 0xda
jb 0x140022baa
cmp byte [rcx + 0x5d], 0
jne 0x14002285c
call fcn.140022080
test eax, eax
js 0x140022acf
mov rcx, rsi
call fcn.140021f60
test eax, eax
js 0x140022acf
mov rdx, qword [rsi + 0x40]
mov qword [rsp + 0x30], r15
mov r15, qword [rsi + 0x48]
mov qword [rsp + 0x60], rdx
lea rax, [r15 + 0xd9]
test rdi, rdi
je 0x14002288d
mov qword [rdi], rax
cmp rax, r14
jbe 0x14002289c
mov eax, 0xffffffd7
jmp 0x140022aca
mov qword [rsp + 0x68], r12
lea r8, [r15 + 1]
mov qword [rsp + 0x70], r13
lea rcx, [rbx + 0xd8]
mov r13, qword [rsi + 0x90]
mov word [rbx + 0xd6], r15w
call sym.NetMonitor.exe_nocrt_memcpy
xor edx, edx
lea rcx, [rbx + 0xba]
lea r8d, [rdx + 0x1c]
call sym.NetMonitor.exe_nocrt_memset
xor r14d, r14d
cmp dword [rsi + 0x88], 0x4c
je 0x140022994
movzx eax, byte [r13 + 0x44]
test al, al
je 0x140022919
cmp al, 0x1c
lea rdx, [r13 + 0x46]
mov edi, eax
mov ecx, 0x1a
cmovae edi, ecx
lea rcx, [rbx + 0xba]
movzx r8d, dil
call sym.NetMonitor.exe_nocrt_memcpy
shr dil, 1
movzx eax, dil
jmp 0x14002291c
mov eax, r14d
mov rdx, qword [rsp + 0x60]
movabs rcx, 0x5e6684f4b3960000
mov word [rbx + 0xb8], ax
mov r8, r15
mov rax, qword [r13 + 0x28]
mov qword [rbx], rax
mov rax, qword [r13 + 0x30]
mov qword [rbx + 8], rax
imul rax, qword [r13 + 8], 0x64
mov dword [rsp + 0x20], r14d
add rax, rcx
mov qword [rbx + 0x28], rax
imul rax, qword [r13 + 0x10], 0x64
add rax, rcx
mov qword [rbx + 0x10], rax
imul rax, qword [r13 + 0x18], 0x64
add rax, rcx
mov qword [rbx + 0x18], rax
imul rax, qword [r13 + 0x20], 0x64
add rax, rcx
mov qword [rbx + 0x20], rax
mov ecx, dword [r13 + 0x38]
mov r9d, dword [r13 + 0x40]
and ecx, 0x7fff
shl ecx, 0x10
call fcn.1400419b0
jmp 0x140022a97
movabs rcx, 0x5e6684f4b3960000
mov word [rbx + 0xb8], r14w
mov qword [rbx + 0x28], rcx
lea r9, str.Directory
mov qword [rbx + 0x10], rcx
mov r8d, 9
mov qword [rbx + 0x18], rcx
mov qword [rbx + 0x20], rcx
mov qword [rbx], r14
mov qword [rbx + 8], r14
mov rax, qword [rsi + 0x90]
movzx r11d, word [rax + 0x10]
mov rdx, qword [rax + 0x18]
mov r10, rdx
cmp r11w, 0x12
je 0x140022a30
lea r9, [0x140064c98]
mov r8d, 0xc
cmp r11w, 0x18
jne 0x140022a53
nop dword [rax + rax]
movzx ecx, word [rdx]
lea rdx, [rdx + 2]
movzx eax, byte [r9]
lea r9, [r9 + 1]
dec r8
cmp ecx, eax
jne 0x140022a92
test r8, r8
jne 0x140022a00
mov eax, 0x400a1ff
jmp 0x140022a97
movzx ecx, word [r10]
lea r10, [r10 + 2]
movzx eax, byte [r9]
lea r9, [r9 + 1]
dec r8
cmp ecx, eax
jne 0x140022a53
test r8, r8
jne 0x140022a30
mov eax, 0x1041ff
jmp 0x140022a97
lea r9, [0x140064ca8]
mov r8d, 6
cmp r11w, 0xc
jne 0x140022a92
nop word [rax + rax]
movzx ecx, word [rdx]
lea rdx, [rdx + 2]
movzx eax, byte [r9]
lea r9, [r9 + 1]
dec r8
cmp ecx, eax
jne 0x140022a92
test r8, r8
jne 0x140022a70
mov eax, 0x4021b6
jmp 0x140022a97
mov eax, 0x8081b6
mov dword [rbx + 0x30], eax
mov r12, qword [rsp + 0x68]
sub ebp, 1
je 0x140022b96
sub ebp, 1
je 0x140022b37
sub ebp, 1
je 0x140022b1b
sub ebp, 1
je 0x140022aff
cmp ebp, 1
je 0x140022add
mov eax, 0xffffff1f
mov r13, qword [rsp + 0x70]
mov r15, qword [rsp + 0x30]
mov r14, qword [rsp + 0x78]
add rsp, 0x38
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov dword [rbx + 0x34], 5
cmp dword [rsi + 0x88], 0x4c
je 0x140022af1
mov r14d, dword [r13 + 0x40]
mov rcx, rsi
mov qword [rbx + 0x38], r14
call fcn.140021f10
jmp 0x140022ac5
mov rcx, rsi
mov dword [rbx + 0x34], 4
mov dword [rbx + 0x38], 0xffffffff
mov byte [rbx + 0x3c], 0
call fcn.140021f10
jmp 0x140022ac5
mov rcx, rsi
mov dword [rbx + 0x34], 3
mov dword [rbx + 0x38], 0xffffffff
mov byte [rbx + 0x3c], 0
call fcn.140021f10
jmp 0x140022ac5
mov dword [rbx + 0x34], 2
mov qword [rbx + 0x38], 0xffffffffffffffff
mov dword [rbx + 0x40], 1
mov eax, dword [rsi + 0xa8]
mov dword [rbx + 0x44], eax
mov qword [rbx + 0x48], r14
cmp dword [rsi + 0x88], 0x25
jne 0x140022b7d
mov rax, qword [rsi + 0x90]
mov rcx, qword [rax + 0x60]
mov rax, r14
cmp rcx, 0xffffffffffffffff
cmovne rax, rcx
mov qword [rbx + 0x48], rax
mov rcx, rsi
mov qword [rbx + 0x50], 0
mov dword [rbx + 0x58], r14d
call fcn.140021f10
jmp 0x140022ac5
mov rcx, rsi
mov dword [rbx + 0x34], 1
call fcn.140021f10
jmp 0x140022ac5
mov r14, qword [rsp + 0x78]
mov eax, 0xfffffffe
add rsp, 0x38
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov eax, 0xfffffffc
add rsp, 0x38
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov eax, 0xfffffffa
add rsp, 0x38
pop rdi
pop rsi
pop rbp
pop rbx
ret