Function at 0x180006310
Capabilities:
Set current directory

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xb0
mov qword [rbp + 0x47], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rdi
mov rdi, rcx
lea rax, vtable.CObjectID.0
mov qword [rbp - 0x39], rax
mov eax, 1
lock xadd dword [0x1800de364], eax
inc eax
mov dword [rbp - 0x31], eax
mov rax, qword [0x180087258]
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x21], rax
mov qword [rbp - 0x19], rax
mov qword [rbp - 0x11], rax
mov qword [rbp - 9], rax
mov qword [rbp - 1], rax
mov qword [rbp + 0x27], rax
mov qword [rbp + 0x2f], rax
mov qword [rbp + 0x37], rax
mov ecx, dword [rcx + 8]
xor edx, edx
mov eax, ecx
div dword [0x1800e4fb0]
mov rbx, qword [0x1800e4fa8]
test rbx, rbx
je 0x180006678
mov rbx, qword [rbx + rdx*8]
test rbx, rbx
je 0x180006678
cmp dword [rbx + 0x18], ecx
je 0x1800063b6
mov rbx, qword [rbx]
test rbx, rbx
jne 0x1800063a4
jmp 0x180006678
mov eax, dword [rbx + 0x28]
mov dword [rbp - 0x31], eax
lea rdx, [rbx + 0x30]
lea rcx, [rbp - 0x29]
call fcn.180025980
lea rdx, [rbx + 0x38]
lea rcx, [rbp - 0x21]
call fcn.180025980
lea rdx, [rbx + 0x40]
lea rcx, [rbp - 0x19]
call fcn.180025980
lea rdx, [rbx + 0x48]
lea rcx, [rbp - 0x11]
call fcn.180025980
lea rdx, [rbx + 0x50]
lea rcx, [rbp - 9]
call fcn.180025980
lea rdx, [rbx + 0x58]
lea rcx, [rbp - 1]
call fcn.180025980
mov r11d, dword [rbx + 0x60]
mov dword [rbp + 7], r11d
mov eax, dword [rbx + 0x64]
mov dword [rbp + 0xb], eax
mov eax, dword [rbx + 0x68]
mov dword [rbp + 0xf], eax
mov eax, dword [rbx + 0x6c]
mov dword [rbp + 0x13], eax
mov eax, dword [rbx + 0x70]
mov dword [rbp + 0x17], eax
mov eax, dword [rbx + 0x74]
mov dword [rbp + 0x1b], eax
mov eax, dword [rbx + 0x78]
mov dword [rbp + 0x1f], eax
lea rdx, [rbx + 0x80]
lea rcx, [rbp + 0x27]
call fcn.180025980
lea rdx, [rbx + 0x88]
lea rcx, [rbp + 0x2f]
call fcn.180025980
lea rdx, [rbx + 0x90]
lea rcx, [rbp + 0x37]
call fcn.180025980
mov r11, qword [rbx + 0x98]
mov qword [rbp + 0x3f], r11
mov rcx, rdi
call fcn.180006e80
test eax, eax
jne 0x1800064dc
lea rcx, [rbp + 0x37]
call fcn.180025870
nop
lea rcx, [rbp + 0x2f]
call fcn.180025870
nop
lea rcx, [rbp + 0x27]
call fcn.180025870
nop
lea rcx, [rbp - 1]
call fcn.180025870
nop
lea rcx, [rbp - 9]
call fcn.180025870
nop
lea rcx, [rbp - 0x11]
call fcn.180025870
nop
lea rcx, [rbp - 0x19]
call fcn.180025870
nop
lea rcx, [rbp - 0x21]
call fcn.180025870
nop
lea rcx, [rbp - 0x29]
call fcn.180025870
nop
jmp 0x1800066d2
mov rcx, rdi
call fcn.180005cf0
test eax, eax
je 0x180006547
lea rcx, [rbp + 0x37]
call fcn.180025870
nop
lea rcx, [rbp + 0x2f]
call fcn.180025870
nop
lea rcx, [rbp + 0x27]
call fcn.180025870
nop
lea rcx, [rbp - 1]
call fcn.180025870
nop
lea rcx, [rbp - 9]
call fcn.180025870
nop
lea rcx, [rbp - 0x11]
call fcn.180025870
nop
lea rcx, [rbp - 0x19]
call fcn.180025870
nop
lea rcx, [rbp - 0x21]
call fcn.180025870
nop
lea rcx, [rbp - 0x29]
call fcn.180025870
nop
jmp 0x1800066d2
mov rcx, qword [rbp + 0x3f]
test rcx, rcx
je 0x1800065bd
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
mov ebx, eax
test eax, eax
jne 0x1800065bd
lea rcx, [rbp + 0x37]
call fcn.180025870
nop
lea rcx, [rbp + 0x2f]
call fcn.180025870
nop
lea rcx, [rbp + 0x27]
call fcn.180025870
nop
lea rcx, [rbp - 1]
call fcn.180025870
nop
lea rcx, [rbp - 9]
call fcn.180025870
nop
lea rcx, [rbp - 0x11]
call fcn.180025870
nop
lea rcx, [rbp - 0x19]
call fcn.180025870
nop
lea rcx, [rbp - 0x21]
call fcn.180025870
nop
lea rcx, [rbp - 0x29]
call fcn.180025870
nop
mov eax, ebx
jmp 0x1800066d4
cmp dword [rbp + 0xf], 2
jne 0x180006617
mov rcx, qword [rbp - 0x21]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov rdx, qword [rbp - 0x21]
lea rcx, [rbp + 0x67]
call fcn.180027d30
nop
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rbx, rax
test rax, rax
je 0x18000660d
lea rdx, str.DllUnregisterServer
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x180006603
call rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop
lea rcx, [rbp + 0x67]
call fcn.180026ba0
nop
lea rcx, [rbp + 0x37]
call fcn.180025870
nop
lea rcx, [rbp + 0x2f]
call fcn.180025870
nop
lea rcx, [rbp + 0x27]
call fcn.180025870
nop
lea rcx, [rbp - 1]
call fcn.180025870
nop
lea rcx, [rbp - 9]
call fcn.180025870
nop
lea rcx, [rbp - 0x11]
call fcn.180025870
nop
lea rcx, [rbp - 0x19]
call fcn.180025870
nop
lea rcx, [rbp - 0x21]
call fcn.180025870
nop
lea rcx, [rbp - 0x29]
call fcn.180025870
nop
mov eax, 1
jmp 0x1800066d4
lea rcx, [rbp + 0x37]
call fcn.180025870
nop
lea rcx, [rbp + 0x2f]
call fcn.180025870
nop
lea rcx, [rbp + 0x27]
call fcn.180025870
nop
lea rcx, [rbp - 1]
call fcn.180025870
nop
lea rcx, [rbp - 9]
call fcn.180025870
nop
lea rcx, [rbp - 0x11]
call fcn.180025870
nop
lea rcx, [rbp - 0x19]
call fcn.180025870
nop
lea rcx, [rbp - 0x21]
call fcn.180025870
nop
lea rcx, [rbp - 0x29]
call fcn.180025870
nop
xor eax, eax
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret