Function at 0x140245070
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
mov rbp, rsp
sub rsp, 0x50
mov r9, r8
mov rbx, rcx
mov r10, rdx
mov r11, qword [rdx + 0x18]
cmp r11, 7
jbe 0x140244403
mov r10, qword [rdx]
mov rcx, qword [rdx + 0x10]
cmp rcx, 8
jne 0x140244490
lea r8, str.circular
sub r10, r8
nop dword [rax + rax]
movzx eax, word [r8]
cmp word [r10 + r8], ax
jne 0x14024448c
add r8, 2
sub rcx, 1
jne 0x140244420
mov r8, r9
cmp qword [r9 + 0x18], 7
jbe 0x140244442
mov r8, qword [r9]
mov rdx, qword [r9 + 0x10]
cmp rdx, 4
jne 0x14024446e
lea rcx, str.true
sub r8, rcx
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x14024446e
add rcx, 2
sub rdx, 1
jne 0x140244456
mov al, 1
jmp 0x140244470
xor al, al
mov byte [rbx + 0x740], al
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rbp
jmp qword [rax + 0x60]
mov rcx, qword [rdx + 0x10]
mov r10, rdx
cmp r11, 7
jbe 0x14024449c
mov r10, qword [rdx]
cmp rcx, 0xb
jne 0x1402444f4
lea r8, str.circlewidth
sub r10, r8
nop dword [rax]
movzx eax, word [r8]
cmp word [r10 + r8], ax
jne 0x1402444f4
add r8, 2
sub rcx, 1
jne 0x1402444b0
cmp qword [r9 + 0x18], 7
jbe 0x1402444cf
mov r9, qword [r9]
mov rcx, r9
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__wtoi]
mov dword [rbx + 0x744], eax
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rbp
jmp qword [rax + 0x60]
mov r10, rdx
cmp r11, 7
jbe 0x140244500
mov r10, qword [rdx]
mov rcx, qword [rdx + 0x10]
cmp rcx, 9
jne 0x140244542
lea r8, str.indicator
sub r10, r8
movzx eax, word [r8]
cmp word [r10 + r8], ax
jne 0x14024453e
add r8, 2
sub rcx, 1
jne 0x140244514
mov rdx, r9
mov rcx, rbx
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rbp
jmp 0x140245070
mov rcx, qword [rdx + 0x10]
mov r10, rdx
cmp r11, 7
jbe 0x14024454e
mov r10, qword [rdx]
cmp rcx, 9
jne 0x140244611
lea r8, str.clockwise
sub r10, r8
nop dword [rax]
nop word [rax + rax]
movzx eax, word [r8]
cmp word [r10 + r8], ax
jne 0x140244611
add r8, 2
sub rcx, 1
jne 0x140244570
mov r8, r9
cmp qword [r9 + 0x18], 7
jbe 0x140244596
mov r8, qword [r9]
mov rdx, qword [r9 + 0x10]
cmp rdx, 4
jne 0x1402445c8
lea rcx, str.true
sub r8, rcx
nop word [rax + rax]
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x1402445c8
add rcx, 2
sub rdx, 1
jne 0x1402445b0
mov al, 1
jmp 0x1402445ca
xor al, al
cmp al, byte [rbx + 0x741]
je 0x1402449b3
mov byte [rbx + 0x741], al
mov rbx, qword [rbx + 0x758]
test rbx, rbx
je 0x1402449b3
mov edx, 2
mov rcx, qword [rbx + 8]
call qword [sym.imp.gdiplus.dll_GdipImageRotateFlip]
test eax, eax
je 0x1402449b3
mov dword [rbx + 0x10], eax
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rbp
ret
mov r10, rdx
cmp r11, 7
jbe 0x14024461d
mov r10, qword [rdx]
mov r8, qword [rdx + 0x10]
cmp r8, 7
jne 0x140244744
lea rcx, str.bgcolor
sub r10, rcx
nop word [rax + rax]
movzx eax, word [rcx]
cmp word [r10 + rcx], ax
jne 0x140244744
add rcx, 2
sub r8, 1
jne 0x140244640
cmp qword [r9 + 0x18], 7
jbe 0x140244662
mov r9, qword [r9]
movzx eax, word [r9]
test ax, ax
je 0x14024468a
nop dword [rax + rax]
cmp ax, 0x20
ja 0x14024468a
mov rcx, r9
call qword [sym.imp.USER32.dll_CharNextW]
mov r9, rax
movzx eax, word [rax]
test ax, ax
jne 0x140244670
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x20], xmm1
mov r8, 0xffffffffffffffff
inc r8
cmp word [r9 + r8*2], 0
jne 0x1402446a0
mov rdx, r9
lea rcx, [rbp - 0x30]
call fcn.140006340
nop
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x10]
call fcn.1401e70b0
mov rcx, qword [rax]
cmp dword [rcx + 0x30], 0
je 0x1402446e3
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x10]
call fcn.1401e70b0
mov rcx, qword [rax]
mov eax, dword [rcx + 0x30]
jmp 0x1402446e8
mov eax, 0xff000000
mov dword [rbx + 0x748], eax
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
call qword [rax + 0x60]
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 7
jbe 0x1402449b3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140244998
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140244998
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov r10, rdx
cmp r11, 7
jbe 0x140244750
mov r10, qword [rdx]
mov r8, qword [rdx + 0x10]
cmp r8, 7
jne 0x140244874
lea rcx, str.fgcolor
sub r10, rcx
nop dword [rax + rax]
movzx eax, word [rcx]
cmp word [rcx + r10], ax
jne 0x140244874
add rcx, 2
sub r8, 1
jne 0x140244770
cmp qword [r9 + 0x18], 7
jbe 0x140244792
mov r9, qword [r9]
movzx eax, word [r9]
test ax, ax
je 0x1402447ba
nop dword [rax + rax]
cmp ax, 0x20
ja 0x1402447ba
mov rcx, r9
call qword [sym.imp.USER32.dll_CharNextW]
mov r9, rax
movzx eax, word [rax]
test ax, ax
jne 0x1402447a0
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x20], xmm1
mov r8, 0xffffffffffffffff
inc r8
cmp word [r9 + r8*2], 0
jne 0x1402447d0
mov rdx, r9
lea rcx, [rbp - 0x30]
call fcn.140006340
nop
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x10]
call fcn.1401e70b0
mov rcx, qword [rax]
cmp dword [rcx + 0x30], 0
je 0x140244813
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x10]
call fcn.1401e70b0
mov rcx, qword [rax]
mov eax, dword [rcx + 0x30]
jmp 0x140244818
mov eax, 0xff000000
mov dword [rbx + 0x74c], eax
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
call qword [rax + 0x60]
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 7
jbe 0x1402449b3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140244998
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140244998
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov r10, rdx
cmp r11, 7
jbe 0x140244880
mov r10, qword [rdx]
mov r8, qword [rdx + 0x10]
cmp r8, 0xd
jne 0x1402449a8
lea rcx, str.gradientcolor
sub r10, rcx
nop dword [rax + rax]
movzx eax, word [rcx]
cmp word [rcx + r10], ax
jne 0x1402449a8
add rcx, 2
sub r8, 1
jne 0x1402448a0
cmp qword [r9 + 0x18], 7
jbe 0x1402448c2
mov r9, qword [r9]
movzx eax, word [r9]
test ax, ax
je 0x1402448ea
nop dword [rax + rax]
cmp ax, 0x20
ja 0x1402448ea
mov rcx, r9
call qword [sym.imp.USER32.dll_CharNextW]
mov r9, rax
movzx eax, word [rax]
test ax, ax
jne 0x1402448d0
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x20], xmm1
mov r8, 0xffffffffffffffff
inc r8
cmp word [r9 + r8*2], 0
jne 0x140244900
mov rdx, r9
lea rcx, [rbp - 0x30]
call fcn.140006340
nop
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x10]
call fcn.1401e70b0
mov rcx, qword [rax]
cmp dword [rcx + 0x30], 0
je 0x140244943
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x10]
call fcn.1401e70b0
mov rcx, qword [rax]
mov eax, dword [rcx + 0x30]
jmp 0x140244948
mov eax, 0xff000000
mov dword [rbx + 0x750], eax
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
call qword [rax + 0x60]
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 7
jbe 0x1402449b3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140244998
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140244998
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1403ca488
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rbp
ret
mov r8, r9
mov rcx, rbx
call fcn.140209240
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rbp
ret
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov rax, qword [0x1404af540]
xor rax, rsp
mov qword [rbp + 0x78], rax
mov rdi, rdx
mov r14, rcx
mov qword [rbp - 0x18], rcx
xor r15d, r15d
lea r9, [rcx + 0x760]
mov rcx, rdx
mov r10, qword [rdx + 0x18]
cmp r10, 7
jbe 0x1402450be
mov rcx, qword [rdx]
mov r8, r9
cmp qword [r9 + 0x18], 7
jbe 0x1402450cb
mov r8, qword [r9]
mov rdx, qword [r9 + 0x10]
cmp rdx, qword [rdi + 0x10]
jne 0x1402450fa
test rdx, rdx
je 0x14024649f
sub r8, rcx
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x1402450fa
add rcx, 2
sub rdx, 1
jne 0x1402450e1
jmp 0x14024649f
cmp r9, rdi
je 0x140245117
mov rdx, rdi
cmp r10, 7
jbe 0x14024510b
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, r9
call fcn.1400050d0
mov rcx, qword [r14 + 0x758]
mov r12d, 1
test rcx, rcx
je 0x140245138
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov qword [r14 + 0x758], r15
mov rdx, rdi
lea rcx, [rbp + 0x58]
call fcn.140005e80
nop
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x38]
call fcn.140005e80
nop
lea rcx, [rbp + 0x58]
cmp qword [rbp + 0x70], 7
cmova rcx, qword [rbp + 0x58]
call qword [sym.imp.SHLWAPI.dll_PathIsRelativeW]
test eax, eax
je 0x1402452cb
lea rcx, [rbp + 0x58]
mov rdi, qword [rbp + 0x58]
mov rbx, qword [rbp + 0x70]
cmp rbx, 7
cmova rcx, rdi
mov qword [rsp + 0x20], 2
lea r9, [0x140440c38]
mov rsi, qword [rbp + 0x68]
mov rdx, rsi
call fcn.1401a9eb0
test rax, rax
je 0x14024523f
lea rcx, [rbp + 0x58]
cmp rbx, 7
cmova rcx, rdi
mov qword [rsp + 0x20], 2
lea r9, [0x140440c30]
mov rdx, rsi
call fcn.1401a9eb0
test rax, rax
je 0x14024523f
lea rdx, [0x1404b02f0]
lea rcx, [rsp + 0x38]
call fcn.140005e80
nop
lea rdx, [rbp + 0x58]
cmp qword [rbp + 0x70], 7
cmova rdx, qword [rbp + 0x58]
mov r8, qword [rbp + 0x68]
lea rcx, [rsp + 0x38]
call fcn.140003f40
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x38]
call fcn.140004930
lea rcx, [rbp - 0x80]
call fcn.140006060
nop
lea rcx, [rsp + 0x38]
jmp 0x1402452c6
mov rdx, qword [r14 + 0x30]
add rdx, 0x1b0
lea rcx, [rbp - 0x10]
call fcn.140005e80
nop
lea rdx, [0x1404b02f0]
lea rcx, [rsp + 0x38]
call fcn.140005e80
nop
lea r9, [rbp - 0x10]
lea r8, [rsp + 0x38]
lea rcx, [rbp - 0x80]
call fcn.1401b2e90
nop
mov qword [rsp + 0x20], r15
lea rcx, [rbp + 0x58]
call fcn.1401c4d80
mov r8, rax
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x10]
call fcn.1400d08b0
mov rdx, rax
lea rcx, [rbp + 0x38]
call fcn.140004930
lea rcx, [rbp + 0x10]
call fcn.140006060
nop
lea rcx, [rbp - 0x80]
call fcn.140006060
nop
lea rcx, [rsp + 0x38]
call fcn.140006060
nop
lea rcx, [rbp - 0x10]
call fcn.140006060
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x50], r15
mov r8, r12
lea rdx, [0x14043f8d8]
lea rcx, [rsp + 0x38]
call fcn.140006340
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], r15
mov r8, r12
lea rdx, [0x1404438f8]
lea rcx, [rbp - 0x58]
call fcn.140006340
nop
mov rbx, qword [rsp + 0x38]
mov r11, qword [rbp - 0x58]
mov r13, qword [rbp + 0x48]
test r13, r13
je 0x1402456e0
mov rcx, r15
mov qword [rbp + 0x30], r15
mov r8, r15
mov qword [rsp + 0x30], r15
mov r12, qword [rbp - 0x48]
test r12, r12
je 0x1402456da
mov rsi, qword [rbp + 0x50]
cmp r12, qword [rsp + 0x48]
jae 0x1402454cf
mov r14, qword [rbp + 0x38]
mov rbx, qword [rbp - 0x40]
nop
lea r9, [rbp - 0x58]
cmp rbx, 7
cmova r9, r11
lea r11, [rbp + 0x38]
cmp rsi, 7
cmova r11, r14
cmp r12, r13
ja 0x1402453b7
mov rax, r13
sub rax, r12
cmp rcx, rax
ja 0x1402453b7
lea r10, [rax + 1]
lea r10, [r11 + r10*2]
lea rcx, [r11 + rcx*2]
mov rax, r10
sub rax, rcx
sar rax, 1
je 0x1402453b2
movzx edx, word [r9]
cmp word [rcx], dx
je 0x1402453f7
add rcx, 2
sub rax, 1
jne 0x1402453a3
mov r8, qword [rsp + 0x30]
test r8, r8
je 0x1402456d1
mov r15, qword [rsp + 0x48]
sub r15, r12
imul r15, r8
add r15, r13
mov rbx, r15
sub rbx, r13
cmp r15, r13
ja 0x140245452
mov qword [rbp + 0x48], r15
lea rax, [rbp + 0x38]
cmp rsi, 7
cmova rax, r14
xor r9d, r9d
mov word [rax + r15*2], r9w
jmp 0x14024549d
test rcx, rcx
je 0x1402453b2
mov rdi, r12
mov rdx, r9
test r12, r12
je 0x140245424
mov r8, rcx
sub r8, r9
nop dword [rax]
movzx eax, word [rdx]
cmp word [r8 + rdx], ax
jne 0x140245449
add rdx, 2
sub rdi, 1
jne 0x140245410
sub rcx, r11
sar rcx, 1
mov r8, qword [rsp + 0x30]
cmp rcx, 0xffffffffffffffff
je 0x1402453b7
inc r8
mov qword [rsp + 0x30], r8
add rcx, r12
mov r11, qword [rbp - 0x58]
jmp 0x140245360
add rcx, 2
jmp 0x140245394
mov rax, rsi
sub rax, r13
cmp rbx, rax
ja 0x14024548e
mov qword [rbp + 0x48], r15
lea rdx, [rbp + 0x38]
cmp rsi, 7
cmova rdx, r14
lea rdi, [rdx + r13*2]
xor r9d, r9d
test rbx, rbx
je 0x140245483
movzx eax, r9w
mov rcx, rbx
rep stosw word [rdi], ax
lea rax, [rbx + r13]
mov word [rdx + rax*2], r9w
jmp 0x14024549d
mov r9, rbx
mov rdx, rbx
lea rcx, [rbp + 0x38]
call fcn.1401aa0a0
lea r14, [rbp + 0x38]
cmp qword [rbp + 0x50], 7
cmova r14, qword [rbp + 0x38]
mov r8, qword [rbp + 0x48]
sub r8, rbx
add r8, r8
lea rcx, [r14 + rbx*2]
mov rdx, r14
call sub.VCRUNTIME140.dll_memmove
mov rsi, qword [rbp + 0x50]
mov r13, qword [rbp + 0x48]
mov r11, qword [rbp - 0x58]
jmp 0x1402454e5
mov r15, r13
xor r9d, r9d
mov ebx, r9d
lea r14, [rbp + 0x38]
cmp rsi, 7
cmova r14, qword [rbp + 0x38]
cmp rbx, r15
jae 0x140245574
nop
lea r9, [rbp - 0x58]
cmp qword [rbp - 0x40], 7
cmova r9, r11
lea r11, [rbp + 0x38]
cmp rsi, 7
cmova r11, qword [rbp + 0x38]
cmp r12, r13
ja 0x14024554f
mov rax, r13
sub rax, r12
cmp rbx, rax
ja 0x14024554f
lea r10, [rax + 1]
lea r10, [r11 + r10*2]
lea rdi, [r11 + rbx*2]
nop word [rax + rax]
mov rax, r10
sub rax, rdi
sar rax, 1
je 0x14024554f
movzx ecx, word [r9]
nop
cmp word [rdi], cx
je 0x1402455bb
add rdi, 2
sub rax, 1
jne 0x140245540
mov rax, qword [rbp + 0x30]
cmp rax, rbx
je 0x140245574
sub r15, rbx
lea r8, [r15 + r15]
lea rdx, [r14 + rbx*2]
lea rcx, [r14 + rax*2]
call sub.VCRUNTIME140.dll_memcpy
mov rsi, qword [rbp + 0x50]
mov r13, qword [rbp + 0x48]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x48]
cmp rcx, r12
jae 0x1402456ce
sub r12, rcx
imul r12, rax
mov rcx, r13
sub rcx, r12
cmp rcx, r13
ja 0x14024567f
mov qword [rbp + 0x48], rcx
lea rax, [rbp + 0x38]
cmp rsi, 7
cmova rax, qword [rbp + 0x38]
xor r15d, r15d
mov word [rax + rcx*2], r15w
jmp 0x1402456d1
test rdi, rdi
je 0x14024554f
mov rdx, r12
mov rcx, r9
test r12, r12
je 0x1402455e9
mov r8, rdi
sub r8, r9
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x140245676
add rcx, 2
sub rdx, 1
jne 0x1402455d1
sub rdi, r11
sar rdi, 1
cmp rdi, 0xffffffffffffffff
je 0x14024554f
mov rsi, qword [rbp + 0x30]
cmp rsi, rdi
je 0x140245618
mov r8, rdi
sub r8, rbx
add r8, r8
lea rdx, [r14 + rbx*2]
lea rcx, [r14 + rsi*2]
call sub.VCRUNTIME140.dll_memmove
mov rax, rdi
sub rax, rbx
add rsi, rax
lea rdx, [rsp + 0x38]
cmp qword [rsp + 0x50], 7
cmova rdx, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x48]
lea r8, [rbx + rbx]
lea rcx, [r14 + rsi*2]
call sub.VCRUNTIME140.dll_memcpy
add rsi, rbx
mov qword [rbp + 0x30], rsi
lea rbx, [r12 + rdi]
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rsi, qword [rbp + 0x50]
mov r13, qword [rbp + 0x48]
cmp rbx, r15
jae 0x140245579
mov r11, qword [rbp - 0x58]
jmp 0x1402454f0
add rdi, 2
jmp 0x140245530
mov rdx, rcx
sub rdx, r13
mov rax, rsi
sub rax, r13
cmp rdx, rax
ja 0x1402456c2
mov qword [rbp + 0x48], rcx
lea r8, [rbp + 0x38]
cmp rsi, 7
cmova r8, qword [rbp + 0x38]
lea rdi, [r8 + r13*2]
xor r15d, r15d
test rdx, rdx
je 0x1402456b7
movzx eax, r15w
mov rcx, rdx
rep stosw word [rdi], ax
lea rax, [rdx + r13]
mov word [r8 + rax*2], r15w
jmp 0x1402456d1
mov r9, rdx
lea rcx, [rbp + 0x38]
call fcn.1401aa0a0
xor r15d, r15d
mov rbx, qword [rsp + 0x38]
mov r11, qword [rbp - 0x58]
mov r12d, 1
mov rax, qword [rbp - 0x40]
cmp rax, 7
jbe 0x140245723
lea rdx, [rax*2 + 2]
mov rax, r11
cmp rdx, 0x1000
jb 0x14024571a
add rdx, 0x27
mov r11, qword [r11 - 8]
sub rax, r11
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14024571a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r11
call fcn.1403ca488
nop
mov rax, qword [rsp + 0x50]
cmp rax, 7
jbe 0x140245763
lea rdx, [rax*2 + 2]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14024575b
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140245bf7
mov rcx, rbx
call fcn.1403ca488
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x50], r15
mov r8, r12
lea rdx, [0x14043f8d8]
lea rcx, [rsp + 0x38]
call fcn.140006340
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x20], r15
mov r8d, 2
lea rdx, [0x140439aec]
lea rcx, [rbp - 0x38]
call fcn.140006340
nop
mov rbx, qword [rsp + 0x38]
mov r11, qword [rbp - 0x38]
mov r13, qword [rbp + 0x48]
test r13, r13
je 0x140245b80
mov rcx, r15
mov qword [rbp + 0x30], r15
mov r8, r15
mov qword [rsp + 0x30], r15
mov r12, qword [rbp - 0x28]
test r12, r12
je 0x140245b7a
mov rsi, qword [rbp + 0x50]
cmp r12, qword [rsp + 0x48]
jae 0x14024596f
mov r14, qword [rbp + 0x38]
mov rbx, qword [rbp - 0x20]
nop dword [rax]
lea r9, [rbp - 0x38]
cmp rbx, 7
cmova r9, r11
lea r11, [rbp + 0x38]
cmp rsi, 7
cmova r11, r14
cmp r12, r13
ja 0x140245857
mov rax, r13
sub rax, r12
cmp rcx, rax
ja 0x140245857
lea r10, [rax + 1]
lea r10, [r11 + r10*2]
lea rcx, [r11 + rcx*2]
mov rax, r10
sub rax, rcx
sar rax, 1
je 0x140245852
movzx edx, word [r9]
cmp word [rcx], dx
je 0x140245897
add rcx, 2
sub rax, 1
jne 0x140245843
mov r8, qword [rsp + 0x30]
test r8, r8
je 0x140245b71
mov r15, qword [rsp + 0x48]
sub r15, r12
imul r15, r8
add r15, r13
mov rbx, r15
sub rbx, r13
cmp r15, r13
ja 0x1402458f2
mov qword [rbp + 0x48], r15
lea rax, [rbp + 0x38]
cmp rsi, 7
cmova rax, r14
xor r9d, r9d
mov word [rax + r15*2], r9w
jmp 0x14024593d
test rcx, rcx
je 0x140245852
mov rdi, r12
mov rdx, r9
test r12, r12
je 0x1402458c4
mov r8, rcx
sub r8, r9
nop dword [rax]
movzx eax, word [rdx]
cmp word [rdx + r8], ax
jne 0x1402458e9
add rdx, 2
sub rdi, 1
jne 0x1402458b0
sub rcx, r11
sar rcx, 1
mov r8, qword [rsp + 0x30]
cmp rcx, 0xffffffffffffffff
je 0x140245857
inc r8
mov qword [rsp + 0x30], r8
add rcx, r12
mov r11, qword [rbp - 0x38]
jmp 0x140245800
add rcx, 2
jmp 0x140245834
mov rax, rsi
sub rax, r13
cmp rbx, rax
ja 0x14024592e
mov qword [rbp + 0x48], r15
lea rdx, [rbp + 0x38]
cmp rsi, 7
cmova rdx, r14
lea rdi, [rdx + r13*2]
xor r9d, r9d
test rbx, rbx
je 0x140245923
movzx eax, r9w
mov rcx, rbx
rep stosw word [rdi], ax
lea rax, [rbx + r13]
mov word [rdx + rax*2], r9w
jmp 0x14024593d
mov r9, rbx
mov rdx, rbx
lea rcx, [rbp + 0x38]
call fcn.1401aa0a0
lea r14, [rbp + 0x38]
cmp qword [rbp + 0x50], 7
cmova r14, qword [rbp + 0x38]
mov r8, qword [rbp + 0x48]
sub r8, rbx
add r8, r8
lea rcx, [r14 + rbx*2]
mov rdx, r14
call sub.VCRUNTIME140.dll_memmove
mov rsi, qword [rbp + 0x50]
mov r13, qword [rbp + 0x48]
mov r11, qword [rbp - 0x38]
jmp 0x140245985
mov r15, r13
xor r9d, r9d
mov ebx, r9d
lea r14, [rbp + 0x38]
cmp rsi, 7
cmova r14, qword [rbp + 0x38]
cmp rbx, r15
jae 0x140245a14
nop
lea r9, [rbp - 0x38]
cmp qword [rbp - 0x20], 7
cmova r9, r11
lea r11, [rbp + 0x38]
cmp rsi, 7
cmova r11, qword [rbp + 0x38]
cmp r12, r13
ja 0x1402459ef
mov rax, r13
sub rax, r12
cmp rbx, rax
ja 0x1402459ef
lea r10, [rax + 1]
lea r10, [r11 + r10*2]
lea rdi, [r11 + rbx*2]
nop word [rax + rax]
mov rax, r10
sub rax, rdi
sar rax, 1
je 0x1402459ef
movzx ecx, word [r9]
nop
cmp word [rdi], cx
je 0x140245a5b
add rdi, 2
sub rax, 1
jne 0x1402459e0
mov rax, qword [rbp + 0x30]
cmp rax, rbx
je 0x140245a14
sub r15, rbx
lea r8, [r15 + r15]
lea rdx, [r14 + rbx*2]
lea rcx, [r14 + rax*2]
call sub.VCRUNTIME140.dll_memcpy
mov rsi, qword [rbp + 0x50]
mov r13, qword [rbp + 0x48]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x48]
cmp rcx, r12
jae 0x140245b6e
sub r12, rcx
imul r12, rax
mov rcx, r13
sub rcx, r12
cmp rcx, r13
ja 0x140245b1f
mov qword [rbp + 0x48], rcx
lea rax, [rbp + 0x38]
cmp rsi, 7
cmova rax, qword [rbp + 0x38]
xor r15d, r15d
mov word [rax + rcx*2], r15w
jmp 0x140245b71
test rdi, rdi
je 0x1402459ef
mov rdx, r12
mov rcx, r9
test r12, r12
je 0x140245a89
mov r8, rdi
sub r8, r9
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x140245b16
add rcx, 2
sub rdx, 1
jne 0x140245a71
sub rdi, r11
sar rdi, 1
cmp rdi, 0xffffffffffffffff
je 0x1402459ef
mov rsi, qword [rbp + 0x30]
cmp rsi, rdi
je 0x140245ab8
mov r8, rdi
sub r8, rbx
add r8, r8
lea rdx, [r14 + rbx*2]
lea rcx, [r14 + rsi*2]
call sub.VCRUNTIME140.dll_memmove
mov rax, rdi
sub rax, rbx
add rsi, rax
lea rdx, [rsp + 0x38]
cmp qword [rsp + 0x50], 7
cmova rdx, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x48]
lea r8, [rbx + rbx]
lea rcx, [r14 + rsi*2]
call sub.VCRUNTIME140.dll_memcpy
add rsi, rbx
mov qword [rbp + 0x30], rsi
lea rbx, [r12 + rdi]
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rsi, qword [rbp + 0x50]
mov r13, qword [rbp + 0x48]
cmp rbx, r15
jae 0x140245a19
mov r11, qword [rbp - 0x38]
jmp 0x140245990
add rdi, 2
jmp 0x1402459d0
mov rdx, rcx
sub rdx, r13
mov rax, rsi
sub rax, r13
cmp rdx, rax
ja 0x140245b62
mov qword [rbp + 0x48], rcx
lea r8, [rbp + 0x38]
cmp rsi, 7
cmova r8, qword [rbp + 0x38]
lea rdi, [r8 + r13*2]
xor r15d, r15d
test rdx, rdx
je 0x140245b57
movzx eax, r15w
mov rcx, rdx
rep stosw word [rdi], ax
lea rax, [rdx + r13]
mov word [r8 + rax*2], r15w
jmp 0x140245b71
mov r9, rdx
lea rcx, [rbp + 0x38]
call fcn.1401aa0a0
xor r15d, r15d
mov rbx, qword [rsp + 0x38]
mov r11, qword [rbp - 0x38]
mov r12d, 1
mov rax, qword [rbp - 0x20]
cmp rax, 7
jbe 0x140245bc3
lea rdx, [rax*2 + 2]
mov rax, r11
cmp rdx, 0x1000
jb 0x140245bba
add rdx, 0x27
mov r11, qword [r11 - 8]
sub rax, r11
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140245bba
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r11
call fcn.1403ca488
nop
mov rax, qword [rsp + 0x50]
cmp rax, 7
jbe 0x140245c06
lea rdx, [rax*2 + 2]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140245bfe
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140245bfe
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.1403ca488
xorps xmm0, xmm0
xorps xmm1, xmm1
mov r8, r12
cmp qword [0x1404c7a08], 0
je 0x14024625b
movups xmmword [rbp - 0x80], xmm0
movdqu xmmword [rbp - 0x70], xmm1
lea rdx, [0x1404438f8]
lea rcx, [rbp - 0x80]
call fcn.140006340
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x48], xmm1
mov r8, r12
lea rdx, [0x14043f8d8]
lea rcx, [rsp + 0x38]
call fcn.140006340
nop
cmp qword [rbp + 0x48], 0
je 0x140245c77
lea r8, [rbp + 0x38]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x38]
call fcn.1401f7250
nop
lea rcx, [rsp + 0x38]
call fcn.140006060
nop
lea rcx, [rbp - 0x80]
call fcn.140006060
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x50], r15
mov r8, r12
lea rdx, [0x1404438f8]
lea rcx, [rsp + 0x38]
call fcn.140006340
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], r15
mov r8d, 2
lea rdx, [0x140443984]
lea rcx, [rsp + 0x60]
call fcn.140006340
nop
mov r11, qword [rsp + 0x60]
mov r10, qword [rbp + 0x48]
mov qword [rsp + 0x30], r10
test r10, r10
je 0x1402460f8
mov rcx, r15
mov qword [rbp - 0x60], r15
mov r12, r15
mov qword [rsp + 0x58], r15
mov r8, qword [rsp + 0x70]
test r8, r8
je 0x1402460f2
mov r13, qword [rsp + 0x48]
mov rsi, qword [rbp + 0x50]
cmp r8, r13
jae 0x140245eb9
mov r14, qword [rbp + 0x38]
mov rbx, qword [rsp + 0x78]
nop dword [rax + rax]
lea r9, [rsp + 0x60]
cmp rbx, 7
cmova r9, r11
lea r11, [rbp + 0x38]
cmp rsi, 7
cmova r11, r14
cmp r8, r10
ja 0x140245d88
mov rax, r10
sub rax, r8
cmp rcx, rax
ja 0x140245d88
lea r10, [r11 + 2]
lea r10, [r10 + rax*2]
lea rcx, [r11 + rcx*2]
mov rax, r10
sub rax, rcx
sar rax, 1
je 0x140245d83
movzx edx, word [r9]
cmp word [rcx], dx
je 0x140245dca
add rcx, 2
sub rax, 1
jne 0x140245d74
mov r10, qword [rsp + 0x30]
test r12, r12
je 0x1402460ed
mov r15, r13
sub r15, r8
imul r15, r12
add r15, r10
mov rbx, r15
sub rbx, r10
cmp r15, r10
ja 0x140245e31
mov qword [rbp + 0x48], r15
lea rax, [rbp + 0x38]
cmp rsi, 7
cmova rax, r14
xor r9d, r9d
mov word [rax + r15*2], r9w
jmp 0x140245e7c
test rcx, rcx
je 0x140245d83
mov rdi, r8
mov rdx, r9
test r8, r8
je 0x140245df9
mov r8, rcx
sub r8, r9
movzx eax, word [rdx]
cmp word [rdx + r8], ax
jne 0x140245e23
add rdx, 2
sub rdi, 1
jne 0x140245de0
mov r8, qword [rsp + 0x70]
sub rcx, r11
sar rcx, 1
mov r10, qword [rsp + 0x30]
cmp rcx, 0xffffffffffffffff
je 0x140245d88
inc r12
mov qword [rsp + 0x58], r12
add rcx, r8
mov r11, qword [rsp + 0x60]
jmp 0x140245d30
add rcx, 2
mov r8, qword [rsp + 0x70]
jmp 0x140245d65
mov rax, rsi
sub rax, r10
cmp rbx, rax
ja 0x140245e6d
mov qword [rbp + 0x48], r15
lea rdx, [rbp + 0x38]
cmp rsi, 7
cmova rdx, r14
lea rdi, [rdx + r10*2]
xor r9d, r9d
test rbx, rbx
je 0x140245e62
movzx eax, r9w
mov rcx, rbx
rep stosw word [rdi], ax
lea rax, [r10 + rbx]
mov word [rdx + rax*2], r9w
jmp 0x140245e7c
mov r9, rbx
mov rdx, rbx
lea rcx, [rbp + 0x38]
call fcn.1401aa0a0
lea r14, [rbp + 0x38]
cmp qword [rbp + 0x50], 7
cmova r14, qword [rbp + 0x38]
mov r8, qword [rbp + 0x48]
sub r8, rbx
add r8, r8
lea rcx, [r14 + rbx*2]
mov rdx, r14
call sub.VCRUNTIME140.dll_memmove
mov rsi, qword [rbp + 0x50]
mov r10, qword [rbp + 0x48]
mov qword [rsp + 0x30], r10
mov r8, qword [rsp + 0x70]
mov r11, qword [rsp + 0x60]
jmp 0x140245ecf
mov r15, r10
xor r9d, r9d
mov ebx, r9d
lea r14, [rbp + 0x38]
cmp rsi, 7
cmova r14, qword [rbp + 0x38]
cmp rbx, r15
jae 0x14024604e
mov r12, qword [rsp + 0x50]
mov r13, qword [rsp + 0x38]
nop dword [rax]
nop word [rax + rax]
lea r9, [rsp + 0x60]
cmp qword [rsp + 0x78], 7
cmova r9, r11
lea r11, [rbp + 0x38]
cmp rsi, 7
cmova r11, qword [rbp + 0x38]
cmp r8, r10
ja 0x140245f4f
mov rax, r10
sub rax, r8
cmp rbx, rax
ja 0x140245f4f
lea r10, [rax + 1]
lea r10, [r11 + r10*2]
lea rdi, [r11 + rbx*2]
nop dword [rax + rax]
mov rax, r10
sub rax, rdi
sar rax, 1
je 0x140245f4f
movzx ecx, word [r9]
nop
cmp word [rdi], cx
je 0x140245f7d
add rdi, 2
sub rax, 1
jne 0x140245f40
mov rax, qword [rbp - 0x60]
cmp rax, rbx
je 0x140246055
sub r15, rbx
lea r8, [r15 + r15]
lea rdx, [r14 + rbx*2]
lea rcx, [r14 + rax*2]
call sub.VCRUNTIME140.dll_memcpy
mov rsi, qword [rbp + 0x50]
mov r9, qword [rbp + 0x48]
jmp 0x14024605a
test rdi, rdi
je 0x140245f4f
mov rdx, r8
mov rcx, r9
test r8, r8
je 0x140245fb8
mov r8, rdi
sub r8, r9
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x140246040
add rcx, 2
sub rdx, 1
jne 0x140245fa0
sub rdi, r11
sar rdi, 1
cmp rdi, 0xffffffffffffffff
je 0x140245f4f
mov rsi, qword [rbp - 0x60]
cmp rsi, rdi
je 0x140245fe3
mov r8, rdi
sub r8, rbx
add r8, r8
lea rdx, [r14 + rbx*2]
lea rcx, [r14 + rsi*2]
call sub.VCRUNTIME140.dll_memmove
mov rax, rdi
sub rax, rbx
add rsi, rax
lea rdx, [rsp + 0x38]
cmp r12, 7
cmova rdx, r13
mov rbx, qword [rsp + 0x48]
lea r8, [rbx + rbx]
lea rcx, [r14 + rsi*2]
call sub.VCRUNTIME140.dll_memcpy
add rsi, rbx
mov qword [rbp - 0x60], rsi
mov r8, qword [rsp + 0x70]
lea rbx, [r8 + rdi]
inc qword [rsp + 0x58]
mov rsi, qword [rbp + 0x50]
cmp rbx, r15
jae 0x140245f74
mov r10, qword [rbp + 0x48]
mov qword [rsp + 0x30], r10
mov r11, qword [rsp + 0x60]
jmp 0x140245ef0
add rdi, 2
mov r8, qword [rsp + 0x70]
jmp 0x140245f30
mov r9, qword [rsp + 0x30]
jmp 0x140246064
mov r9, qword [rsp + 0x30]
mov r12, qword [rsp + 0x58]
mov r13, qword [rsp + 0x48]
mov rax, qword [rsp + 0x70]
cmp r13, rax
jae 0x1402460ea
sub rax, r13
imul rax, r12
mov rcx, r9
sub rcx, rax
cmp rcx, r9
ja 0x14024609b
mov qword [rbp + 0x48], rcx
lea rax, [rbp + 0x38]
cmp rsi, 7
cmova rax, qword [rbp + 0x38]
xor r15d, r15d
mov word [rax + rcx*2], r15w
jmp 0x1402460ed
mov rdx, rcx
sub rdx, r9
mov rax, rsi
sub rax, r9
cmp rdx, rax
ja 0x1402460de
mov qword [rbp + 0x48], rcx
lea r8, [rbp + 0x38]
cmp rsi, 7
cmova r8, qword [rbp + 0x38]
lea rdi, [r8 + r9*2]
xor r15d, r15d
test rdx, rdx
je 0x1402460d3
movzx eax, r15w
mov rcx, rdx
rep stosw word [rdi], ax
lea rax, [r9 + rdx]
mov word [r8 + rax*2], r15w
jmp 0x1402460ed
mov r9, rdx
lea rcx, [rbp + 0x38]
call fcn.1401aa0a0
xor r15d, r15d
mov r11, qword [rsp + 0x60]
mov r12d, 1
mov rax, qword [rsp + 0x78]
cmp rax, 7
jbe 0x14024613c
lea rdx, [rax*2 + 2]
mov rax, r11
cmp rdx, 0x1000
jb 0x140246133
add rdx, 0x27
mov r11, qword [r11 - 8]
sub rax, r11
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140246133
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r11
call fcn.1403ca488
nop
lea rcx, [rsp + 0x38]
call fcn.140006060
lea rdx, [rbp + 0x38]
lea rcx, [rbp - 0x10]
call fcn.1401e5830
mov rdx, rax
lea rcx, [rbp + 0x38]
call fcn.140004930
mov rdx, qword [rbp + 8]
cmp rdx, 7
jbe 0x1402461a2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14024619d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14024619d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1403ca488
lea rcx, [rbp + 0x38]
call fcn.1401e5110
mov rbx, rax
test rax, rax
je 0x1402463bd
mov qword [rbp + 0x30], r15
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
lea r8, [rbp + 0x30]
mov edx, r12d
mov rcx, rbx
call qword [sym.imp.ole32.dll_CreateStreamOnHGlobal]
cmp qword [rbp + 0x30], 0
jne 0x1402461f2
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GlobalFree]
jmp 0x1402463bd
mov ecx, reloc.SinoSPE.dll_Ordinal_24
call qword [sym.imp.gdiplus.dll_GdipAlloc]
mov rdi, rax
mov qword [rbp - 0x60], rax
test rax, rax
je 0x140246235
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rax
mov rcx, qword [rbp + 0x30]
lea rax, vtable.Gdiplus::Image.0
mov qword [rdi], rax
lea rdx, [rdi + 8]
mov qword [rdx], r15
call qword [sym.imp.gdiplus.dll_GdipLoadImageFromStream]
mov dword [rdi + 0x10], eax
jmp 0x140246238
mov rdi, r15
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x758], rdi
mov rcx, qword [rbp + 0x30]
mov rax, qword [rcx]
call qword [rax + reloc.SinoSPE.dll_Ordinal_16]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
jmp 0x140246343
movups xmmword [rsp + 0x38], xmm0
movdqu xmmword [rsp + 0x48], xmm1
lea rdx, [0x14043f8d8]
lea rcx, [rsp + 0x38]
call fcn.140006340
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x70], xmm1
mov r8, r12
lea rdx, [0x1404438f8]
lea rcx, [rbp - 0x80]
call fcn.140006340
nop
cmp qword [rbp + 0x48], 0
je 0x1402462b5
lea r8, [rbp + 0x38]
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x80]
call fcn.1401f7250
nop
lea rcx, [rbp - 0x80]
call fcn.140006060
nop
lea rcx, [rsp + 0x38]
call fcn.140006060
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x48], xmm1
mov r8, r12
lea rdx, [0x14043f8d8]
lea rcx, [rsp + 0x38]
call fcn.140006340
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x70], xmm1
mov r8d, 2
lea rdx, [0x140439aec]
lea rcx, [rbp - 0x80]
call fcn.140006340
nop
cmp qword [rbp + 0x48], 0
je 0x14024632f
lea r8, [rbp + 0x38]
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x80]
call fcn.1401f7250
nop
lea rcx, [rbp - 0x80]
call fcn.140006060
nop
lea rcx, [rsp + 0x38]
call fcn.140006060
mov rdi, qword [rbp - 0x18]
mov rcx, qword [rdi + 0x758]
test rcx, rcx
jne 0x14024645a
lea rcx, [rbp + 0x38]
cmp qword [rbp + 0x50], 7
cmova rcx, qword [rbp + 0x38]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1402463bd
mov ecx, reloc.SinoSPE.dll_Ordinal_24
call qword [sym.imp.gdiplus.dll_GdipAlloc]
mov qword [rbp - 0x18], rax
test rax, rax
je 0x1402463aa
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rcx
lea rdx, [rbp + 0x38]
cmp qword [rbp + 0x50], 7
cmova rdx, qword [rbp + 0x38]
mov rcx, rax
call fcn.1401302f0
mov rcx, rax
jmp 0x1402463ad
mov rcx, r15
mov qword [rdi + 0x758], rcx
test rcx, rcx
jne 0x14024645a
mov rdx, qword [rbp + 0x50]
cmp rdx, 7
jbe 0x140246400
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402463fb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1402463fb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1403ca488
mov qword [rbp + 0x48], r15
mov qword [rbp + 0x50], 7
mov word [rbp + 0x38], r15w
mov rdx, qword [rbp + 0x70]
cmp rdx, 7
jbe 0x14024649f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140246453
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140246453
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1403ca488
jmp 0x14024649f
mov eax, dword [rcx + 0x10]
mov dword [rcx + 0x10], r15d
test eax, eax
jne 0x14024648c
mov edx, 3
cmp byte [rdi + 0x741], al
cmovne edx, r12d
mov rcx, qword [rdi + 0x758]
call fcn.1402464d0
mov rax, qword [rdi]
xor edx, edx
mov rcx, rdi
call qword [rax + 0x60]
nop
lea rcx, [rbp + 0x38]
call fcn.140006060
nop
lea rcx, [rbp + 0x58]
call fcn.140006060
mov rcx, qword [rbp + 0x78]
xor rcx, rsp
call fcn.1403ca460
mov rbx, qword [rsp + 0x1d0]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret