Function at 0x1800c69f0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
jmp 0x1800c69f0
mov rax, rsp
mov qword [rax + 0x10], rdx
push rbp
push rbx
push rsi
lea rbp, [rax - 0x358]
sub rsp, 0x440
mov qword [rax + 8], rdi
mov rsi, r9
mov qword [rax - 0x28], r15
mov r15, r8
test ecx, ecx
jne 0x1800c6fd6
mov qword [rax + 0x18], r12
mov qword [rax + 0x20], r13
mov qword [rax - 0x20], r14
mov eax, dword [rbp + 0x380]
movzx ecx, al
cmp eax, 8
jle 0x1800c6a3e
movzx r9d, al
jmp 0x1800c6a49
mov r8b, 4
mov r9b, 8
cmp eax, 4
jle 0x1800c6a4d
movzx r8d, cl
movzx edx, r9b
mov r10d, 4
movzx ecx, r8b
mov bl, 4
add ecx, edx
mov word [rsp + 0x30], 0x8148
mov byte [rsp + 0x32], 0xec
lea r11d, [rdx*8]
mov dword [rsp + 0x37], 0x248c8948
lea r14d, [r11 + 0x10]
mov dword [rsp + 0x3b], r11d
lea edi, [rcx*8 + 0xf]
mov dword [rsp + 0x3f], 0x24948948
and edi, 0xfffffff0
mov dword [rsp + 0x47], 0x2484894c
add edi, 8
mov dword [rsp + 0x4b], r14d
mov dword [rsp + 0x33], edi
lea r12d, [r11 + 8]
mov dword [rsp + 0x43], r12d
lea r13d, [r14 + 8]
mov dword [rsp + 0x4f], 0x248c894c
mov edx, 0x27
mov dword [rsp + 0x53], r13d
cmp eax, r10d
jle 0x1800c6b6b
mov r9d, r10d
nop word [rax + rax]
movsxd rcx, edx
lea r9d, [r9*8]
inc edx
inc bl
mov byte [rsp + rcx + 0x30], 0x48
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x8b
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x84
lea r8d, [rdx + 1]
movsxd rcx, edx
lea edx, [rdi + 8]
add edx, r9d
mov byte [rsp + rcx + 0x30], 0x24
movsxd rcx, r8d
mov dword [rsp + rcx + 0x30], edx
lea edx, [r8 + 4]
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x48
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x89
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x84
lea r8d, [rdx + 1]
movsxd rcx, edx
lea edx, [r9 + r11]
movzx r9d, bl
mov byte [rsp + rcx + 0x30], 0x24
movsxd rcx, r8d
mov dword [rsp + rcx + 0x30], edx
lea edx, [r8 + 4]
cmp r9d, eax
jl 0x1800c6ae0
movsxd rcx, edx
movzx ebx, r10b
inc edx
mov byte [rsp + rcx + 0x30], 0x48
movsxd rcx, edx
lea r8d, [rdx + 1]
movsxd rdx, r8d
mov byte [rsp + rcx + 0x30], reloc.OLEAUT32.dll_VariantTimeToSystemTime
mov rcx, qword [rbp + 0x3b8]
mov qword [rsp + rdx + 0x30], rcx
lea edx, [r8 + 8]
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0xff
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0xd0
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x48
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x8b
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x8c
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x24
movsxd rcx, edx
add edx, r10d
mov dword [rsp + rcx + 0x30], r11d
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x48
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x8b
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x94
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x24
movsxd rcx, edx
add edx, r10d
mov dword [rsp + rcx + 0x30], r12d
mov r12, qword [rsp + 0x470]
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], VarR8FromUI1
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x8b
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x84
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x24
movsxd rcx, edx
add edx, r10d
mov dword [rsp + rcx + 0x30], r14d
mov r14, qword [rsp + 0x438]
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], VarR8FromUI1
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x8b
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x8c
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x24
movsxd rcx, edx
add edx, r10d
cmp eax, r10d
mov dword [rsp + rcx + 0x30], r13d
mov r13, qword [rsp + 0x478]
jle 0x1800c6d1f
nop dword [rax]
movsxd rcx, edx
lea r9d, [r10*8]
inc edx
inc bl
movzx r10d, bl
mov byte [rsp + rcx + 0x30], 0x48
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x8b
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x84
lea r8d, [rdx + 1]
movsxd rcx, edx
lea edx, [r9 + r11]
mov byte [rsp + rcx + 0x30], 0x24
movsxd rcx, r8d
mov dword [rsp + rcx + 0x30], edx
lea edx, [r8 + 4]
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x48
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x89
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x84
movsxd rcx, edx
inc edx
mov byte [rsp + rcx + 0x30], 0x24
movsxd rcx, edx
add edx, 4
mov dword [rsp + rcx + 0x30], r9d
cmp r10d, eax
jl 0x1800c6ca0
movsxd rax, edx
lea ecx, [rdx + 1]
lea edx, [rcx + 1]
mov byte [rsp + rax + 0x30], 0x48
movsxd rax, ecx
movsxd rcx, edx
mov byte [rsp + rax + 0x30], reloc.OLEAUT32.dll_VariantTimeToSystemTime
mov rax, qword [rbp + 0x3b0]
mov qword [rsp + rcx + 0x30], rax
lea ecx, [rdx + 8]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0xff
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0xd0
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x89
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x44
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x24
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x28
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x8b
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x8c
lea edx, [rcx + 1]
movsxd rax, ecx
mov byte [rsp + rax + 0x30], 0x24
mov eax, dword [rbp + 0x3a8]
lea ecx, [r11 + rax*8]
movsxd rax, edx
mov dword [rsp + rax + 0x30], ecx
lea ecx, [rdx + 4]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
lea edx, [rcx + 1]
movsxd rax, ecx
movsxd rcx, dword [rbp + 0x398]
mov byte [rsp + rax + 0x30], 0xba
movsxd rax, edx
mov qword [rsp + rax + 0x30], rcx
lea ecx, [rdx + 8]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], VarR8FromUI1
lea edx, [rcx + 1]
movsxd rax, ecx
movsxd rcx, dword [rbp + 0x3a0]
mov byte [rsp + rax + 0x30], reloc.OLEAUT32.dll_VariantTimeToSystemTime
movsxd rax, edx
mov qword [rsp + rax + 0x30], rcx
lea ecx, [rdx + 8]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], VarR8FromUI1
lea edx, [rcx + 1]
movsxd rax, ecx
movsxd rcx, dword [rbp + 0x388]
mov byte [rsp + rax + 0x30], 0xb9
movsxd rax, edx
mov qword [rsp + rax + 0x30], rcx
lea ecx, [rdx + 8]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
movsxd rax, ecx
lea edx, [rcx + 1]
movsxd rcx, edx
mov byte [rsp + rax + 0x30], reloc.OLEAUT32.dll_VariantTimeToSystemTime
mov rax, qword [rbp + 0x390]
mov qword [rsp + rcx + 0x30], rax
lea ecx, [rdx + 8]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x89
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x44
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x24
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x20
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
lea edx, [rcx + 1]
movsxd rax, ecx
movsxd rcx, edx
mov byte [rsp + rax + 0x30], reloc.OLEAUT32.dll_VariantTimeToSystemTime
mov rax, qword [rbp + 0x3c0]
mov qword [rsp + rcx + 0x30], rax
lea ecx, [rdx + 8]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x89
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x44
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x24
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x30
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
lea edx, [rcx + 1]
movsxd rax, ecx
movsxd rcx, edx
mov byte [rsp + rax + 0x30], reloc.OLEAUT32.dll_VariantTimeToSystemTime
mov rax, qword [rbp + 0x3d0]
mov qword [rsp + rcx + 0x30], rax
lea ecx, [rdx + 8]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x89
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x44
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x24
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x38
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
lea edx, [rcx + 1]
movsxd rax, ecx
movsxd rcx, edx
mov byte [rsp + rax + 0x30], reloc.OLEAUT32.dll_VariantTimeToSystemTime
mov rax, qword [rbp + 0x3c8]
mov qword [rsp + rcx + 0x30], rax
lea ecx, [rdx + 8]
mov r8d, edi
movsxd rax, ecx
mov r9b, 7
inc ecx
mov byte [rsp + rax + 0x30], 0xff
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0xd0
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x48
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x81
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0xc4
lea ebx, [rcx + 4]
movsxd rax, ecx
mov rcx, qword [r15]
mov dword [rsp + rax + 0x30], edi
mov rdi, qword [rbp + 0x368]
movsxd rax, ebx
mov rdx, rdi
mov byte [rsp + rax + 0x30], 0xc3
mov rcx, qword [rcx + 0x10]
call fcn.180004624
jmp 0x1800c71b7
mov r9d, dword [rbp + 0x380]
mov edx, 0xa
mov eax, dword [rbp + 0x3b8]
mov byte [rsp + 0x30], reloc.OLEAUT32.dll_VariantTimeToSystemTime
mov dword [rsp + 0x31], eax
lea r8d, [r9 - 1]
mov dword [rsp + 0x35], 0x8b55d0ff
mov byte [rsp + 0x39], 0xec
test r8d, r8d
js 0x1800c703c
nop word [rax + rax]
movsxd rax, edx
lea ecx, [rdx + 1]
lea edx, [rcx + 1]
mov byte [rsp + rax + 0x30], 0xff
movsxd rax, ecx
lea ecx, [r8 + 2]
shl cl, 2
mov byte [rsp + rax + 0x30], 0x75
movsxd rax, edx
inc edx
sub r8d, 1
mov byte [rsp + rax + 0x30], cl
jns 0x1800c7010
movsxd rax, edx
inc edx
movsxd rcx, edx
mov byte [rsp + rax + 0x30], reloc.OLEAUT32.dll_VariantTimeToSystemTime
mov eax, dword [rbp + 0x3b0]
mov dword [rsp + rcx + 0x30], eax
lea ecx, [rdx + 4]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0xff
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0xd0
lea edx, [rcx + 1]
movsxd rax, ecx
movsxd rcx, edx
mov byte [rsp + rax + 0x30], 0x68
mov eax, dword [rbp + 0x3d0]
mov dword [rsp + rcx + 0x30], eax
lea ecx, [rdx + 4]
movsxd rax, ecx
lea edx, [rcx + 1]
movsxd rcx, edx
mov byte [rsp + rax + 0x30], 0x68
mov eax, dword [rbp + 0x3c0]
mov dword [rsp + rcx + 0x30], eax
lea ecx, [rdx + 4]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x50
lea edx, [rcx + 1]
movsxd rax, ecx
movsxd rcx, edx
mov byte [rsp + rax + 0x30], 0x68
mov eax, dword [rbp + 0x390]
mov dword [rsp + rcx + 0x30], eax
lea ecx, [rdx + 4]
movsxd rax, ecx
lea edx, [rcx + 1]
movsxd rcx, edx
mov byte [rsp + rax + 0x30], 0x68
mov eax, dword [rbp + 0x388]
mov dword [rsp + rcx + 0x30], eax
lea ecx, [rdx + 4]
movsxd rax, ecx
lea edx, [rcx + 1]
movsxd rcx, edx
mov byte [rsp + rax + 0x30], 0x68
mov eax, dword [rbp + 0x3a0]
mov dword [rsp + rcx + 0x30], eax
lea ecx, [rdx + 4]
movsxd rax, ecx
lea edx, [rcx + 1]
movsxd rcx, edx
mov byte [rsp + rax + 0x30], 0x68
mov eax, dword [rbp + 0x398]
mov dword [rsp + rcx + 0x30], eax
lea ecx, [rdx + 4]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0xff
lea edx, [rcx + 1]
movsxd rax, ecx
movzx ecx, byte [rbp + 0x3a8]
add cl, 2
shl cl, 2
mov byte [rsp + rax + 0x30], 0x75
movsxd rax, edx
mov byte [rsp + rax + 0x30], cl
lea ecx, [rdx + 1]
movsxd rax, ecx
lea edx, [rcx + 1]
movsxd rcx, edx
mov byte [rsp + rax + 0x30], reloc.OLEAUT32.dll_VariantTimeToSystemTime
mov eax, dword [rbp + 0x3c8]
mov dword [rsp + rcx + 0x30], eax
lea ecx, [rdx + 4]
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0xff
movsxd rax, ecx
mov rdi, qword [rbp + 0x368]
inc ecx
mov byte [rsp + rax + 0x30], 0xd0
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x8b
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0xe5
movsxd rax, ecx
inc ecx
mov byte [rsp + rax + 0x30], 0x5d
movsxd rax, ecx
inc ecx
shl r9b, 2
mov byte [rsp + rax + 0x30], 0xc2
lea ebx, [rcx + 1]
movsxd rax, ecx
mov byte [rsp + rax + 0x30], r9b
movsxd rax, ebx
mov byte [rsp + rax + 0x30], 0
mov rax, qword [rsi]
lea r8, [rsp + 0x30]
mov rdx, rdi
mov rcx, qword [rax + 0x10]
lea eax, [rbx + 1]
xor ebx, ebx
movsxd r9, eax
mov qword [rsp + 0x20], rbx
mov r10, qword [rcx]
call qword [r10 + 0x28]
mov rcx, qword [r15]
mov rdi, qword [rsp + 0x460]
test rcx, rcx
je 0x1800c71f3
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov qword [r15], rbx
mov rcx, qword [rsi]
mov r15, qword [rsp + 0x430]
test rcx, rcx
je 0x1800c720c
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov qword [rsi], rbx
add rsp, 0x440
pop rsi
pop rbx
pop rbp
ret