Function at 0x14002d410
Capabilities:
Create directory
Download url
Get common file path
Receive data

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3a8]
sub rsp, 0x4a8
mov rax, qword [0x1400b9040]
xor rax, rsp
mov qword [rbp + 0x390], rax
mov r14, r9
mov qword [rsp + 0x48], r9
mov rsi, r8
mov r15, rdx
mov r13, rcx
mov qword [rbp - 0x10], rcx
mov qword [rbp - 0x68], rdx
mov qword [rbp - 0x60], r8
mov qword [rbp - 0x58], r9
xor ebx, ebx
mov dword [rsp + 0x38], ebx
mov r12, 0xffffffffffffffff
cmp qword [r8 + 0x10], rbx
jne 0x14002d5da
xor edx, edx
mov r8d, 0x104
lea rcx, [rbp + 0x1b0]
call sub.VCRUNTIME140.dll_memset
lea rdx, [rbp + 0x1b0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
test eax, eax
jne 0x14002d5b7
xorps xmm0, xmm0
movups xmmword [r13], xmm0
mov qword [r13 + 0x10], rbx
mov qword [r13 + 0x18], rbx
xor r8d, r8d
lea rdx, [0x14009eed1]
mov rcx, r13
call fcn.140004d70
nop
mov rdx, qword [r15 + 0x18]
cmp rdx, 0xf
jbe 0x14002d513
mov rcx, qword [r15]
inc rdx
cmp rdx, 0x1000
jb 0x14002d50e
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002d5a9
mov rcx, r8
call fcn.1400985e0
mov qword [r15 + 0x10], rbx
mov qword [r15 + 0x18], 0xf
mov byte [r15], 0
mov rdx, qword [rsi + 0x18]
cmp rdx, 0xf
jbe 0x14002d559
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x14002d554
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002d5b0
mov rcx, r8
call fcn.1400985e0
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
mov rdx, qword [r14 + 0x18]
cmp rdx, 0xf
jbe 0x14002d725
inc rdx
mov rcx, qword [r14]
cmp rdx, 0x1000
jb 0x14002d720
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
jbe 0x14002d71d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
lea rax, [rbp + 0x1b0]
mov r8, r12
inc r8
cmp byte [rax + r8], 0
jne 0x14002d5c1
lea rdx, [rbp + 0x1b0]
mov rcx, rsi
call fcn.14001cfb0
mov rax, qword [rsi + 0x10]
mov rcx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x14002d5eb
mov rcx, qword [rsi]
cmp byte [rcx + rax - 1], 0x5c
je 0x14002d607
mov r8d, 1
lea rdx, [0x1400a0a20]
mov rcx, rsi
call fcn.140009fe0
mov rcx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x14002d614
mov rcx, qword [rsi]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x14002d75b
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x14002d75b
xorps xmm0, xmm0
movups xmmword [r13], xmm0
mov qword [r13 + 0x10], rbx
mov qword [r13 + 0x18], rbx
xor r8d, r8d
lea rdx, [0x14009eed1]
mov rcx, r13
call fcn.140004d70
nop
mov rdx, qword [r15 + 0x18]
cmp rdx, 0xf
jbe 0x14002d692
inc rdx
cmp rdx, 0x1000
mov rcx, qword [r15]
jb 0x14002d68d
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e6b6
mov rcx, r8
call fcn.1400985e0
mov qword [r15 + 0x10], rbx
mov qword [r15 + 0x18], 0xf
mov byte [r15], 0
mov rdx, qword [rsi + 0x18]
cmp rdx, 0xf
jbe 0x14002d6dc
inc rdx
mov rcx, qword [rsi]
cmp rdx, 0x1000
jb 0x14002d6d7
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e6bd
mov rcx, r8
call fcn.1400985e0
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
mov rdx, qword [r14 + 0x18]
cmp rdx, 0xf
jbe 0x14002d725
inc rdx
mov rcx, qword [r14]
cmp rdx, 0x1000
jb 0x14002d720
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e6c4
mov rcx, r8
call fcn.1400985e0
mov byte [r14], 0
mov qword [r14 + 0x18], 0xf
mov qword [r14 + 0x10], rbx
mov rax, r13
mov rcx, qword [rbp + 0x390]
xor rcx, rsp
call fcn.1400985c0
add rsp, 0x4a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0x30]
call sub.VCRUNTIME140.dll_memset
mov rdx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x14002d779
mov rdx, qword [r15]
mov r8d, 0x24
lea rcx, [rbp + 0x30]
call fcn.14001cea0
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x30], rax
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x2c], edx
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x30]
call qword [sym.imp.MSVCP140.dll_public:_class_std::fpos_struct__Mbstatet____cdecl_std::basic_istream_char__struct_std::char_traits_char__::tellg_void____ptr64]
mov rdi, qword [rax + 8]
add rdi, qword [rax]
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x30]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::seekg_long_long___int64___int____ptr64]
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x48], xmm1
mov qword [rbp - 0x38], rbx
test rdi, rdi
je 0x14002d852
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
ja 0x14002e6e0
cmp rdi, 0x1000
jb 0x14002d82b
lea rcx, [rdi + 0x27]
cmp rcx, rdi
jbe 0x14002e6e6
call fcn.140098790
mov rcx, rax
test rax, rax
je 0x14002e6af
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14002d833
mov rcx, rdi
call fcn.140098790
mov qword [rbp - 0x48], rax
lea rbx, [rax + rdi]
mov qword [rbp - 0x38], rbx
mov r8, rdi
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov qword [rbp - 0x40], rbx
xor ebx, ebx
mov r8, rdi
mov rdx, qword [rbp - 0x48]
lea rcx, [rbp + 0x30]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::read_char____ptr64__long_long___int64_____ptr64]
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::operator__void_const___ptr64]
test al, al
jne 0x14002e644
test rdi, rdi
je 0x14002e644
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
movdqa xmm1, xmmword [0x1400a8460]
movdqu xmmword [rbp - 0x78], xmm1
mov byte [rsp + 0x78], al
mov dword [rsp + 0x38], 2
lea r8, [rbp - 0x10]
mov edx, edi
mov rcx, qword [rbp - 0x48]
call fcn.140097260
xor edi, edi
nop word [rax + rax]
mov dword [rbp - 0x50], edi
movzx r8d, byte [rbp + rbx - 0x10]
lea rdx, str._02x
lea rcx, [rbp - 0x50]
call fcn.140082280
lea rax, [rbp - 0x50]
mov r8, r12
inc r8
cmp byte [rax + r8], dil
jne 0x14002d8e0
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x78]
call fcn.140009fe0
inc rbx
cmp rbx, 0x10
jb 0x14002d8c0
mov r8, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x14002d90d
mov r8, qword [rsi]
mov r9, qword [rsi + 0x10]
lea rcx, [rsp + 0x78]
call fcn.140020520
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x68], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x68], xmm1
mov qword [rax + 0x18], 0xf
xor ebx, ebx
mov qword [rax + 0x10], rbx
mov byte [rax], bl
mov eax, 2
or eax, 4
mov dword [rsp + 0x38], eax
mov r8d, 4
lea rdx, str..pdb
lea rcx, [rsp + 0x58]
call fcn.140009fe0
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x20], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
mov rdx, qword [rsp + 0x70]
cmp rdx, 0xf
jbe 0x14002d9dc
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002d9d7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002d9d7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400985e0
movdqa xmm0, xmmword [0x1400a8460]
movdqu xmmword [rsp + 0x68], xmm0
mov byte [rsp + 0x58], 0
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x14002da36
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002da29
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002da29
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400985e0
movdqa xmm0, xmmword [0x1400a8460]
movdqu xmmword [rbp - 0x78], xmm0
mov byte [rsp + 0x78], 0
mov rax, qword [rbp - 0x48]
movsxd rdi, dword [rax + 0x3c]
add rdi, rax
mov edx, ebx
mov dword [rbp - 0x50], ebx
movzx eax, word [rdi + 4]
mov ecx, 0x8664
cmp ax, cx
jne 0x14002da8b
lea rax, [rdi + 0xb8]
mov qword [rbp - 0x10], rax
lea rax, [rdi + 0x54]
mov qword [rsp + 0x40], rax
lea rcx, [rdi + 0x50]
mov qword [rsp + 0x50], 0x90
mov ebx, 0x3c
mov eax, 0x38
jmp 0x14002dacb
mov ecx, 0x14c
cmp ax, cx
jne 0x14002e5d1
mov edx, 1
mov dword [rbp - 0x50], edx
mov qword [rbp - 0x10], 0xa0
mov qword [rsp + 0x40], 0x3c
mov ecx, 0x38
lea rax, [rdi + 0xa8]
mov qword [rsp + 0x50], rax
lea rbx, [rdi + 0x54]
lea rax, [rdi + 0x50]
test edx, edx
cmove rax, rcx
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsp + 0x30], rax
test rax, rax
jne 0x14002dbf3
mov ecx, 8
call qword [sym.imp.KERNEL32.dll_SetLastError]
xorps xmm0, xmm0
movups xmmword [r13], xmm0
xor ebx, ebx
mov qword [r13 + 0x10], rbx
mov qword [r13 + 0x18], rbx
xor r8d, r8d
lea rdx, [0x14009eed1]
mov rcx, r13
call fcn.140004d70
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x14002db52
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002db4d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e63d
call fcn.1400985e0
mov byte [rbp - 0x30], 0
mov qword [rbp - 0x18], 0xf
mov qword [rbp - 0x20], rbx
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14002dba8
mov rdx, qword [rbp - 0x38]
sub rdx, rcx
cmp rdx, 0x1000
mov rax, rcx
jb 0x14002db97
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e6af
call fcn.1400985e0
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x38], rbx
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x30], rax
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x2c], edx
lea rcx, [rbp + 0x40]
call fcn.14001c150
lea rcx, [rbp + 0x48]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0xe0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
jmp 0x14002d658
cmp dword [rbp - 0x50], 0
cmove rbx, qword [rsp + 0x40]
mov r8d, dword [rbx]
mov rdx, qword [rbp - 0x48]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
movzx ebx, word [rdi + 0x14]
add rbx, 0x2c
xor ecx, ecx
mov dword [rsp + 0x40], ecx
cmp word [rdi + 6], cx
je 0x14002dc5e
add rbx, rdi
mov r14, qword [rsp + 0x30]
mov eax, dword [rbx - 4]
test eax, eax
je 0x14002dc47
mov r8d, eax
mov edx, dword [rbx]
add rdx, qword [rbp - 0x48]
mov ecx, dword [rbx - 8]
add rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
add rbx, 0x28
movzx eax, word [rdi + 6]
cmp ecx, eax
jne 0x14002dc28
mov r14, qword [rsp + 0x48]
cmp dword [rbp - 0x50], 0
mov rcx, qword [rsp + 0x50]
cmove rcx, qword [rbp - 0x10]
mov eax, dword [rcx]
mov rdx, qword [rsp + 0x30]
cmp dword [rcx + 4], 0
je 0x14002e4f8
cmp dword [rax + rdx + 0xc], 2
jne 0x14002e4f8
mov eax, dword [rax + rdx + 0x14]
add rax, rdx
mov qword [rsp + 0x48], rax
cmp dword [rax], 0x53445352
je 0x14002de85
mov rcx, rdx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_SetLastError]
xorps xmm0, xmm0
movups xmmword [r13], xmm0
xor ebx, ebx
mov qword [r13 + 0x10], rbx
mov qword [r13 + 0x18], rbx
xor r8d, r8d
lea rdx, [0x14009eed1]
mov rcx, r13
call fcn.140004d70
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x14002dd14
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002dd0f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e563
call fcn.1400985e0
mov byte [rbp - 0x30], 0
mov qword [rbp - 0x18], 0xf
mov qword [rbp - 0x20], rbx
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14002dd6a
mov rdx, qword [rbp - 0x38]
sub rdx, rcx
cmp rdx, 0x1000
mov rax, rcx
jb 0x14002dd59
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e5bc
call fcn.1400985e0
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x38], rbx
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x30], rax
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x2c], edx
lea rcx, [rbp + 0x40]
call fcn.14001c150
lea rcx, [rbp + 0x48]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0xe0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
nop
mov rdx, qword [r15 + 0x18]
cmp rdx, 0xf
jbe 0x14002ddeb
inc rdx
mov rcx, qword [r15]
cmp rdx, 0x1000
jb 0x14002dde6
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e5c3
mov rcx, r8
call fcn.1400985e0
mov byte [r15], 0
mov qword [r15 + 0x18], 0xf
mov qword [r15 + 0x10], rbx
mov rdx, qword [rsi + 0x18]
cmp rdx, 0xf
jbe 0x14002de35
inc rdx
mov rcx, qword [rsi]
cmp rdx, 0x1000
jb 0x14002de30
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e5ca
mov rcx, r8
call fcn.1400985e0
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
mov rdx, qword [r14 + 0x18]
cmp rdx, 0xf
jbe 0x14002d725
inc rdx
mov rcx, qword [r14]
cmp rdx, 0x1000
jb 0x14002d720
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
jbe 0x14002d71d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rdi, qword [rbp - 0x20]
lea rbx, [rbp - 0x30]
cmp qword [rbp - 0x18], 0xf
cmova rbx, qword [rbp - 0x30]
call fcn.140097a7c
mov qword [rbp - 0x10], rbx
mov qword [rbp - 8], rdi
lea r8, [rbp - 0x10]
mov edx, eax
lea rcx, [rbp + 0x10]
call fcn.14000caf0
nop
xor eax, eax
mov qword [rbp - 0x10], rax
lea rax, [0x14022b7e0]
mov qword [rbp - 8], rax
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x10]
call fcn.14000d5d0
movzx ebx, al
cmp dword [rbp - 0x10], 0
jne 0x14002e6cb
mov rdx, qword [rbp + 0x28]
cmp rdx, 7
jbe 0x14002df22
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002df1d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002df1d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400985e0
test bl, bl
jne 0x14002e4df
xor edx, edx
mov r8d, 0xc8
lea rcx, [rbp + 0x2c0]
call sub.VCRUNTIME140.dll_memset
mov rdi, qword [rsp + 0x48]
lea rcx, [rdi + 4]
mov r8d, 0x64
lea rdx, [rbp + 0x2c0]
call qword [sym.imp.ole32.dll_StringFromGUID2]
test eax, eax
jne 0x14002e149
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_SetLastError]
xorps xmm0, xmm0
movups xmmword [r13], xmm0
xor ebx, ebx
mov qword [r13 + 0x10], rbx
mov qword [r13 + 0x18], rbx
xor r8d, r8d
lea rdx, [0x14009eed1]
mov rcx, r13
call fcn.140004d70
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x14002dfd8
inc rdx
mov rcx, qword [rbp - 0x30]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14002dfd3
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e471
call fcn.1400985e0
mov byte [rbp - 0x30], 0
mov qword [rbp - 0x18], 0xf
mov qword [rbp - 0x20], rbx
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14002e02e
mov rdx, qword [rbp - 0x38]
sub rdx, rcx
cmp rdx, 0x1000
mov rax, rcx
jb 0x14002e01d
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e4ca
call fcn.1400985e0
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x38], rbx
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x30], rax
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x2c], edx
lea rcx, [rbp + 0x40]
call fcn.14001c150
lea rcx, [rbp + 0x48]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0xe0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
nop
mov rdx, qword [r15 + 0x18]
cmp rdx, 0xf
jbe 0x14002e0af
inc rdx
mov rcx, qword [r15]
cmp rdx, 0x1000
jb 0x14002e0aa
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e4d1
mov rcx, r8
call fcn.1400985e0
mov byte [r15], 0
mov qword [r15 + 0x18], 0xf
mov qword [r15 + 0x10], rbx
mov rdx, qword [rsi + 0x18]
cmp rdx, 0xf
jbe 0x14002e0f9
inc rdx
mov rcx, qword [rsi]
cmp rdx, 0x1000
jb 0x14002e0f4
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002e4d8
mov rcx, r8
call fcn.1400985e0
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
mov rdx, qword [r14 + 0x18]
cmp rdx, 0xf
jbe 0x14002d725
inc rdx
mov rcx, qword [r14]
cmp rdx, 0x1000
jb 0x14002d720
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
jbe 0x14002d71d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x140], xmm0
movups xmmword [rbp + 0x150], xmm0
movups xmmword [rbp + 0x160], xmm0
movups xmmword [rbp + 0x170], xmm0
movups xmmword [rbp + 0x180], xmm0
movups xmmword [rbp + 0x190], xmm0
mov dword [rbp + 0x1a0], eax
xor ebx, ebx
mov qword [rbp - 0x10], rbx
mov qword [rsp + 0x20], 0x64
lea r9, [rbp + 0x2c0]
mov r8d, 0x64
lea rdx, [rbp + 0x140]
lea rcx, [rbp - 0x10]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_wcstombs_s]
test eax, eax
jne 0x14002e406
mov rbx, qword [rbp - 0x10]
test rbx, rbx
je 0x14002e406
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x1b0]
call sub.VCRUNTIME140.dll_memset
xor edx, edx
xor eax, eax
nop dword [rax + rax]
movzx ecx, byte [rbp + rax + 0x140]
lea eax, [rcx - 0x30]
cmp al, 9
jbe 0x14002e1fd
lea eax, [rcx - 0x41]
cmp al, 5
jbe 0x14002e1fd
lea eax, [rcx - 0x61]
cmp al, 5
ja 0x14002e222
lea r8, [rbp + 0x1b0]
mov rax, r12
nop word [rax + rax]
lea rax, [rax + 1]
cmp byte [r8 + rax], 0
jne 0x14002e210
mov byte [rbp + rax + 0x1b0], cl
inc edx
mov eax, edx
cmp rax, rbx
jne 0x14002e1e0
xor eax, eax
mov word [rbp - 0x50], ax
mov byte [rbp - 0x4e], al
mov r9d, 0xa
mov r8d, 3
lea rdx, [rbp - 0x50]
mov ecx, dword [rdi + 0x14]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__itoa_s]
mov rdx, r14
lea rcx, [rbp + 0x10]
call fcn.14001c990
nop
mov r8, r12
nop dword [rax]
inc r8
cmp byte [rdi + r8 + 0x18], 0
jne 0x14002e260
lea rdx, [rdi + 0x18]
lea rcx, [rbp + 0x10]
call fcn.140009fe0
mov r8d, 1
lea rdx, [0x1400a0a2c]
lea rcx, [rbp + 0x10]
call fcn.140009fe0
lea rax, [rbp + 0x1b0]
mov r8, r12
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14002e2a0
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0x10]
call fcn.140009fe0
lea rax, [rbp - 0x50]
mov r8, r12
inc r8
cmp byte [rax + r8], 0
jne 0x14002e2c1
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x10]
call fcn.140009fe0
mov r8d, 1
lea rdx, [0x1400a0a2c]
lea rcx, [rbp + 0x10]
call fcn.140009fe0
nop
inc r12
cmp byte [rdi + r12 + 0x18], 0
jne 0x14002e2f0
mov r8, r12
lea rdx, [rdi + 0x18]
lea rcx, [rbp + 0x10]
call fcn.140009fe0
lea r8, [rbp - 0x30]
cmp qword [rbp - 0x18], 0xf
cmova r8, qword [rbp - 0x30]
lea rdx, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova rdx, qword [rbp + 0x10]
xor ebx, ebx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor ecx, ecx
call qword [sym.imp.urlmon.dll_URLDownloadToFileA]
mov rcx, qword [rsp + 0x30]
test eax, eax
jns 0x14002e3b8
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xorps xmm0, xmm0
movups xmmword [r13], xmm0
mov qword [r13 + 0x10], rbx
mov qword [r13 + 0x18], rbx
xor r8d, r8d
lea rdx, [0x14009eed1]
mov rcx, r13
call fcn.140004d70
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x14002e3a2
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e39d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002e3f5
call fcn.1400985e0
movdqa xmm0, xmmword [0x1400a8460]
movdqu xmmword [rbp + 0x20], xmm0
mov byte [rbp + 0x10], 0
jmp 0x14002df9d
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x14002e4e1
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e3fc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002e3fc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400985e0
jmp 0x14002e4e1
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_SetLastError]
xorps xmm0, xmm0
movups xmmword [r13], xmm0
mov qword [r13 + 0x10], rbx
mov qword [r13 + 0x18], rbx
xor r8d, r8d
lea rdx, [0x14009eed1]
mov rcx, r13
call fcn.140004d70
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x14002e47d
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e478
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002e478
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400985e0
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], 0
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14002e02e
mov rdx, qword [rbp - 0x38]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e01d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002e01d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
xor ebx, ebx
movups xmm0, xmmword [rbp - 0x30]
movups xmmword [r13], xmm0
movups xmm1, xmmword [rbp - 0x20]
movups xmmword [r13 + 0x10], xmm1
jmp 0x14002dd14
mov rcx, rdx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_SetLastError]
xorps xmm0, xmm0
movups xmmword [r13], xmm0
xor ebx, ebx
mov qword [r13 + 0x10], rbx
mov qword [r13 + 0x18], rbx
xor r8d, r8d
lea rdx, [0x14009eed1]
mov rcx, r13
call fcn.140004d70
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x14002e56f
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e56a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002e56a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400985e0
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], 0
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14002dd6a
mov rdx, qword [rbp - 0x38]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002dd59
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002dd59
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_SetLastError]
xorps xmm0, xmm0
movups xmmword [r13], xmm0
mov qword [r13 + 0x10], rbx
mov qword [r13 + 0x18], rbx
xor r8d, r8d
lea rdx, [0x14009eed1]
mov rcx, r13
call fcn.140004d70
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x14002db52
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002db4d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002db4d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov ecx, 5
call qword [sym.imp.KERNEL32.dll_SetLastError]
xorps xmm0, xmm0
movups xmmword [r13], xmm0
mov qword [r13 + 0x10], rbx
mov qword [r13 + 0x18], rbx
xor r8d, r8d
lea rdx, [0x14009eed1]
mov rcx, r13
call fcn.140004d70
nop
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14002dba8
mov rdx, qword [rbp - 0x38]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002db97
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002db97
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
lea r8, [rbp + 0x10]
lea rdx, [rbp - 0x10]
lea rcx, str.exists
call fcn.14000d570
nop
call fcn.14000a980
int3
call fcn.140004c70
int3