Function at 0x40708c
Capabilities:
Query environment variable

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x6078
call fcn.0040d260
sub rsp, rax
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov rax, qword [0x00413830]
mov qword [rsp + 0x6060], rax
mov r13, rcx
mov r8d, 0x2000
lea rdx, [rsp + 0x4060]
mov ecx, 0x79
call fcn.00403e40
lea rdx, [rsp + 0x4060]
lea rcx, str.classpath_entry__s
call fcn.0040a860
xor ebx, ebx
mov qword [rsp + 0x30], rbx
xor esi, esi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], rbx
lea rdx, [0x0040ec58]
lea rcx, [rsp + 0x4060]
call qword [sym.imp.msvcrt.dll_strtok]
mov rdi, rax
test rax, rax
je 0x407194
jmp 0x407124
mov rsi, qword [rsp + 0x38]
mov rcx, rdi
call sub.msvcrt.dll_strlen
test rax, rax
je 0x407183
mov rcx, rdi
call sub.msvcrt.dll_strlen
lea rcx, [rax + 1]
call sub.msvcrt.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
mov qword [rsp + 0x48], rax
mov rdx, rdi
mov rcx, rax
call sub.msvcrt.dll_strcpy
lea r9, [rsp + 0x48]
mov r8d, 1
mov rdx, rsi
lea rcx, [rsp + 0x28]
call fcn.004065b8
lea rdx, [0x0040ec58]
xor ecx, ecx
call qword [sym.imp.msvcrt.dll_strtok]
mov rdi, rax
test rax, rax
jne 0x40711f
jmp 0x40718a
mov rbx, qword [rsp + 0x30]
jmp 0x407194
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
xor ebp, ebp
mov r14, rbx
mov dil, byte [rsp + 0x20]
test rbx, rbx
jne 0x4071a7
xor ecx, ecx
jmp 0x4071b1
mov rcx, rsi
sub rcx, rbx
sar rcx, 3
movsxd rax, ebp
cmp rax, rcx
jae 0x407375
mov r12, qword [r14]
lea rdx, [r12 + 2]
lea rcx, [rsp + 0x2060]
call sub.msvcrt.dll_strcpy
lea rcx, [rsp + 0x2060]
call fcn.00406080
cmp byte [r12 + 1], 0x31
sete r15b
movsx ecx, byte [r12]
sub ecx, 0x41
je 0x40730b
sub ecx, 3
je 0x40730b
dec ecx
je 0x407255
cmp ecx, 0xe
jne 0x407346
xor r8d, r8d
lea rdx, [rsp + 0x2060]
lea rcx, [rsp + 0x60]
call fcn.00404f1c
lea r8, [0x0040f6e4]
lea rdx, [rsp + 0x60]
mov rcx, r13
call fcn.0040631c
mov dil, al
lea r8, [0x0040f6e0]
lea rdx, [rsp + 0x60]
mov rcx, r13
call fcn.0040631c
or dil, al
jmp 0x407346
mov r8d, 0x2000
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x2060]
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
test eax, eax
je 0x4072e5
cmp byte [rsp + 0x60], 0x22
jne 0x4072ae
lea rdi, [rsp + 0x60]
dec rdi
lea rcx, [rsp + 0x60]
call sub.msvcrt.dll_strlen
cmp byte [rax + rdi], 0x22
jne 0x4072ae
lea rcx, [rsp + 0x60]
call sub.msvcrt.dll_strlen
mov byte [rax + rdi], 0
lea rdx, [rsp + 0x61]
mov rcx, r13
call sub.msvcrt.dll_strcat
jmp 0x4072bb
lea rdx, [rsp + 0x60]
mov rcx, r13
call sub.msvcrt.dll_strcat
lea rcx, [rsp + 0x60]
call sub.msvcrt.dll_strlen
lea rcx, [rsp + 0x60]
cmp byte [rax + rcx - 1], 0x3b
je 0x4072e0
lea rdx, [0x0040ec58]
mov rcx, r13
call sub.msvcrt.dll_strcat
mov dil, 1
jmp 0x407346
test r15b, r15b
je 0x407362
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xcb
jne 0x407346
lea rdx, [rsp + 0x2060]
mov ecx, 0x3f0
call fcn.0040457c
jmp 0x407346
lea rdx, [rsp + 0x2060]
lea rcx, [rsp + 0x60]
call fcn.004053e8
lea rcx, [rsp + 0x60]
call fcn.00404c8c
mov dil, al
lea rdx, [rsp + 0x60]
mov rcx, r13
call sub.msvcrt.dll_strcat
lea rdx, [0x0040ec58]
mov rcx, r13
call sub.msvcrt.dll_strcat
test r15b, r15b
je 0x407362
test dil, dil
jne 0x407362
lea rdx, [rsp + 0x2060]
mov ecx, 0x3ee
call fcn.0040457c
mov rcx, r12
call fcn.0040cec0
inc ebp
add r14, 8
jmp 0x40719e
mov rcx, rbx
call fcn.0040cec0
mov rcx, qword [rsp + 0x6060]
call fcn.0040d230
add rsp, 0x6078
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret