Function at 0x140052580
Capabilities:
Set current directory

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov rax, qword [0x14009d080]
xor rax, rsp
mov qword [rbp + 0x27], rax
xor r13d, r13d
mov qword [rbp - 0x59], r13
mov qword [rbp - 0x49], r13
mov qword [rbp - 0x41], 0xf
mov byte [rbp - 0x59], r13b
lea rdx, [0x1400a1a80]
mov rdi, 0xffffffffffffffff
mov r8, rdi
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], r13b
jne 0x1400525e0
lea rcx, [rbp - 0x59]
call fcn.140058f50
nop
mov rcx, qword [rbp - 0x49]
mov rdx, qword [rbp - 0x41]
mov rax, rdx
sub rax, rcx
cmp rax, 4
jb 0x14005262e
lea rax, [rcx + 4]
mov qword [rbp - 0x49], rax
lea rax, [rbp - 0x59]
cmp rdx, 0x10
cmovae rax, qword [rbp - 0x59]
mov dword [rax + rcx], 0x6e69625c
mov byte [rax + rcx + 4], 0
lea rax, [rbp - 0x59]
jmp 0x14005264c
mov qword [rsp + 0x20], 4
lea r9, str._bin
mov edx, 4
lea rcx, [rbp - 0x59]
call fcn.14005a350
mov qword [rbp - 0x19], r13
mov qword [rbp - 9], r13
mov qword [rbp - 1], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 9], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp - 0x41]
cmp rdx, 0x10
jb 0x1400526b1
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400526ac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052acb
call fcn.14005cdb0
mov qword [rbp - 0x49], r13
mov qword [rbp - 0x41], 0xf
mov byte [rbp - 0x59], 0
mov r14, qword [rbp - 9]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r14
cmp rax, 0xf
jb 0x140052ad1
lea r12, [rbp - 0x19]
cmp qword [rbp - 1], 0x10
cmovae r12, qword [rbp - 0x19]
mov qword [rbp - 0x39], r13
mov qword [rbp - 0x29], r13
mov qword [rbp - 0x21], r13
lea r15, [r14 + 0xf]
mov ebx, 0xf
lea rsi, [rbp - 0x39]
cmp r15, rbx
jbe 0x140052781
mov rbx, r15
or rbx, 0xf
cmp rbx, rcx
jbe 0x140052743
mov rbx, rcx
movabs rax, 0x8000000000000027
mov rcx, rax
call fcn.14005cdb8
test rax, rax
je 0x140052ae3
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14005277d
mov eax, 0x16
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x14005276b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140052ac5
jmp 0x140052724
test rcx, rcx
je 0x14005277a
call fcn.14005cdb8
mov rsi, rax
jmp 0x14005277d
mov rsi, r13
mov qword [rbp - 0x39], rsi
mov qword [rbp - 0x29], r15
mov qword [rbp - 0x21], rbx
mov r8, r14
mov rdx, r12
mov rcx, rsi
call fcn.14005f230
movsd xmm0, qword [str._serverjvm.dll]
movsd qword [rsi + r14], xmm0
mov eax, dword [0x1400941a8]
mov dword [rsi + r14 + 8], eax
movzx eax, word [0x1400941ac]
mov word [rsi + r14 + 0xc], ax
movzx eax, byte [0x1400941ae]
mov byte [rsi + r14 + 0xe], al
mov byte [rsi + r15], 0
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
lea rcx, [rbp - 0x19]
cmp qword [rbp - 1], 0x10
cmovae rcx, qword [rbp - 0x19]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
lea rcx, [rbp - 0x39]
cmp qword [rbp - 0x21], 0x10
cmovae rcx, qword [rbp - 0x39]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x1400a1a40], rax
test rax, rax
je 0x140052823
lea rdx, str.JNI_CreateJavaVM
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1400a1b88], rax
jmp 0x14005282a
mov rax, qword [0x1400a1b88]
test rax, rax
jne 0x140052a0b
mov qword [rbp - 0x59], r13
mov qword [rbp - 0x49], r13
mov qword [rbp - 0x41], 0xf
mov byte [rbp - 0x59], al
lea ecx, [rax + 0x20]
call fcn.14005cdb8
mov rbx, rax
mov qword [rbp - 0x49], 0x17
mov qword [rbp - 0x41], 0x1f
movups xmm0, xmmword [str.Failed_to_load_JVM_DLL]
movups xmmword [rax], xmm0
mov ecx, dword [0x1400941d8]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x1400941dc]
mov word [rax + 0x14], cx
movzx ecx, byte [0x1400941de]
mov byte [rax + 0x16], cl
mov byte [rax + 0x17], 0
mov qword [rbp - 0x59], rax
lea r9, [rbp - 0x39]
cmp qword [rbp - 0x21], 0x10
cmovae r9, qword [rbp - 0x39]
nop
inc rdi
cmp byte [r9 + rdi], 0
jne 0x1400528a0
cmp rdi, 8
ja 0x1400528ce
lea rax, [rdi + 0x17]
mov qword [rbp - 0x49], rax
mov r8, rdi
mov rdx, r9
lea rcx, [rbx + 0x17]
call fcn.14005f230
mov byte [rdi + rbx + 0x17], 0
jmp 0x1400528df
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rbp - 0x59]
call fcn.14005a350
mov rcx, qword [rbp - 0x49]
mov rdx, qword [rbp - 0x41]
mov rax, rdx
sub rax, rcx
cmp rax, 0x8c
jb 0x14005292e
lea rax, [rcx + 0x8c]
mov qword [rbp - 0x49], rax
lea rbx, [rbp - 0x59]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x59]
add rbx, rcx
mov r8d, 0x8c
lea rdx, str._nIf_you_already_have_a_JDK_installed__define_a_JAVA_HOME_variable_in_Computer___System_Properties___System_Settings___Environment_Variables.
mov rcx, rbx
call fcn.14005f230
mov byte [rbx + 0x8c], 0
jmp 0x14005294c
mov qword [rsp + 0x20], 0x8c
lea r9, str._nIf_you_already_have_a_JDK_installed__define_a_JAVA_HOME_variable_in_Computer___System_Properties___System_Settings___Environment_Variables.
mov edx, 0x8c
lea rcx, [rbp - 0x59]
call fcn.14005a350
mov edx, 0x72
lea rcx, [rbp + 7]
call fcn.14004f630
lea r8, [rbp + 7]
cmp qword [rbp + 0x1f], 0x10
cmovae r8, qword [rbp + 7]
lea rdx, [rbp - 0x59]
cmp qword [rbp - 0x41], 0x10
cmovae rdx, qword [rbp - 0x59]
xor r9d, r9d
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov rdx, qword [rbp + 0x1f]
cmp rdx, 0x10
jb 0x1400529bc
inc rdx
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400529b7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052ad7
call fcn.14005cdb0
mov qword [rbp + 0x17], r13
mov qword [rbp + 0x1f], 0xf
mov byte [rbp + 7], 0
mov rdx, qword [rbp - 0x41]
cmp rdx, 0x10
jb 0x140052a07
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052a02
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052add
call fcn.14005cdb0
xor bl, bl
jmp 0x140052a0d
mov bl, 1
mov rdx, qword [rbp - 0x21]
cmp rdx, 0x10
jb 0x140052a48
inc rdx
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052a43
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052ae3
call fcn.14005cdb0
mov qword [rbp - 0x29], r13
mov qword [rbp - 0x21], 0xf
mov byte [rbp - 0x39], 0
mov rdx, qword [rbp - 1]
cmp rdx, 0x10
jb 0x140052a8f
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052a8a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052abf
call fcn.14005cdb0
movzx eax, bl
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.14005cd90
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400674bc
nop
call fcn.14004e630
nop
call fcn.1400674bc
int3
call fcn.14004e6d0
nop
call fcn.1400674bc
nop
call fcn.1400674bc
nop
call fcn.1400674bc
int3