Function at 0x180043c40
Capabilities:
Encode data using base64
Query or enumerate registry value
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x150]
sub rsp, 0x250
mov rax, qword [0x1804762b8]
xor rax, rsp
mov qword [rbp + 0x140], rax
mov r11, r9
mov qword [rbp - 0x68], r9
mov qword [rbp - 0x20], r8
mov r15, rdx
mov qword [rbp - 0x50], rdx
mov r14d, ecx
mov dword [rbp - 0x78], ecx
mov r13, qword [rbp + 0x1b0]
mov qword [rbp - 0x48], r13
mov r12d, ecx
mov dword [rsp + 0x78], ecx
imul eax, ecx, 0x473
mov dword [rbp - 0x74], eax
cmp ecx, eax
mov ecx, dword [rsp + 0x70]
ja 0x180043e43
mov edx, 0xf000
mov dword [rbp - 0x70], 0xf0
mov eax, 0x74
mov r9d, 0x7fff
lea r10d, [rax - 0x33]
mov r14, qword [rbp - 0x80]
mov dword [rsp + 0x68], ecx
movzx edi, word [rsp + 0x78]
mov esi, dword [rsp + 0x64]
nop dword [rax + rax]
mov ebx, esi
cmp r12d, 0x24c7
ja 0x18004441e
je 0x1800443bc
cmp r12d, 0x11f
ja 0x180043f0c
je 0x1800444b1
mov eax, r12d
sub eax, 0x23
je 0x180043eec
sub eax, 0xa6
je 0x180043edd
sub eax, 0x1f
je 0x180043d3c
cmp eax, 0x16
jne 0x180043e0d
mov dword [rbp + 0xd0], 0x6f0054
jmp 0x180043e0d
mov rax, qword [r15]
movzx ecx, byte [r8 + rax]
lea eax, [rcx - 0xa]
test al, 0xfc
jne 0x180043ea0
cmp cl, 0xb
je 0x180043ea0
mov ebx, 0xc0
nop dword [rax]
mov eax, ebx
sub eax, 0xc0
je 0x180043ddb
sub eax, 0x56
je 0x180043dba
cmp eax, 0x56
jne 0x180043dfa
xor eax, eax
mov dword [r11 + 0x88], eax
mov qword [rbp - 0x38], 2
mov rax, qword [r15]
mov qword [rbp - 0x40], rax
mov qword [rsp + 0x28], r11
lea rax, [rbp - 0x38]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp - 0x40]
mov ecx, 0xae
call fcn.1800afd40
mov qword [r15], rax
mov r11, qword [rbp - 0x68]
jmp 0x180043dfa
inc qword [r11 + 0xd0]
mov rax, qword [r11 + 0xc0]
test rax, rax
je 0x180043dfa
mov rdx, r13
mov rcx, r11
call rax
mov r11, qword [rbp - 0x68]
jmp 0x180043dfa
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + 0x18]
sub rcx, qword [r13 + 8]
add rcx, 0xfffffffffffffffe
add rcx, qword [r15]
mov qword [r13 + 0x10], rcx
mov dword [r13], 0x14
add ebx, 0x56
cmp ebx, 0x1c2
jb 0x180043d60
mov ecx, dword [rsp + 0x68]
imul eax, dword [rbp - 0x78], 0x43
add r12d, eax
mov dword [rsp + 0x78], r12d
cmp r12d, dword [rbp - 0x74]
mov r8, qword [rbp - 0x20]
mov r11, qword [rbp - 0x68]
mov edx, 0xf000
mov eax, 0x74
mov r9d, 0x7fff
lea r10d, [rax - 0x33]
jbe 0x180043ce0
mov r14d, dword [rbp - 0x78]
mov r8d, r14d
lea esi, [r14 - 0xf]
mov dword [rsp + 0x70], esi
cmp r14d, esi
jbe 0x1800446a0
movsxd rax, ecx
lea r9, [rax*4]
lea edx, [r14 - 0x7e]
mov ebx, 0x3a
lea edi, [rbx + 0x22]
lea r10d, [rbx + 0x36]
cmp edx, 0xa1
ja case.0x180043e9e.1
lea rcx, [0x180000000]
movzx eax, byte [rcx + rdx + 0x45380]
mov ecx, dword [rcx + rax*4 + 0x45340]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov ecx, 0x8b
mov eax, ecx
sub eax, 0x8a
je 0x180043ec3
cmp eax, 1
jne 0x180043ece
inc qword [r15]
mov dword [r11 + 0x88], 0x67
jmp 0x180043ece
mov dword [r11 + 0x8c], 0x27
dec ecx
cmp ecx, 0x89
ja 0x180043ea5
jmp 0x180043e09
mov eax, dword [r11]
mov dword [0x4000468], eax
jmp 0x180043e0d
mov r14d, 0x5000000
cmp qword [r11 + 0x28], 0x6200000
mov eax, 0x5000400
cmovae r14d, eax
mov qword [rbp - 0x80], r14
jmp 0x180043e0d
cmp r12d, 0x94c
je 0x180043f56
cmp r12d, 0x1275
je 0x180043f4b
cmp r12d, 0x1b9e
jne 0x180043e0d
mov qword [rsp + 0x20], r11
mov r9d, 0x56
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1800d99f0
mov qword [rbp - 0x18], rax
jmp 0x180043e09
xor eax, eax
mov word [r14], ax
jmp 0x180043e0d
movzx eax, byte [r11 + 0x12]
cmp al, 4
jne 0x18004421b
cmp byte [r11 + 0x18], 0
jne 0x180043ff7
mov ebx, 0x105
cmp ebx, 0x105
je 0x180043fb1
cmp ebx, 0x2feb
je 0x180043f93
cmp ebx, 0x5ed1
jne 0x180043fe4
shl word [r11 + 0x66], 0xc
jmp 0x180043fe4
mov rcx, qword [r11 + 8]
test rcx, rcx
je 0x180043fe4
movzx eax, word [r11 + 0x10]
add eax, eax
movzx edx, word [r11 + 0x66]
shl rdx, 5
add rdx, r14
jmp 0x180043fc5
mov rcx, qword [r11]
test rcx, rcx
je 0x180043fe4
movzx eax, word [r11 + 0x16]
shl eax, 5
mov rdx, qword [r11 + 0x28]
mov qword [rsp + 0x20], rcx
mov dword [rsp + 0x70], eax
lea r9, [rsp + 0x70]
xor r8d, r8d
mov ecx, 0xbe
call fcn.180040b70
mov r11, qword [rbp - 0x68]
add ebx, 0x2ee6
cmp ebx, 0x8cb2
jbe 0x180043f73
jmp 0x180043e09
mov ebx, GetAcceptLanguagesW
lea r11d, [rbx - 1]
mov r13, qword [rbp - 0x68]
mov esi, 0x7c00
mov r15d, 0xf00
mov r12d, 0x3c0f
cmp r11d, 0xb
ja case.default.0x180044034
mov eax, r11d
lea r8, [0x180000000]
mov ecx, dword [r8 + rax*4 + 0x45424]
add rcx, r8
jmp rcx
mov word [r14 + 0xbe], r12w
jmp case.default.0x180044034
mov eax, 0x3e0
mov word [r14 + 0x15e], ax
mov eax, 0x3ff
mov word [r14 + 0x17e], ax
jmp case.default.0x180044034
mov word [r14 + 0x19e], si
jmp case.default.0x180044034
xor eax, eax
mov word [r14 + 0x1e], ax
mov eax, reloc.SHLWAPI.dll_GetAcceptLanguagesW
mov word [r14 + 0x3e], ax
jmp case.default.0x180044034
mov eax, 0x1e0
mov word [r14 + 0x5e], ax
jmp case.default.0x180044034
mov eax, 0x3c00
mov word [r14 + 0x9e], ax
jmp case.default.0x180044034
mov eax, 0x3de0
mov word [r14 + 0xde], ax
mov eax, 0x6318
mov word [r14 + 0xfe], ax
jmp case.default.0x180044034
mov word [r13 + 0x66], dx
xor ecx, ecx
mov r10d, ecx
movzx eax, word [r13 + 0x16]
shl eax, 4
test eax, eax
je case.default.0x180044034
mov r8d, ecx
mov r14d, 0x43
nop dword [rax + rax]
mov r9d, r14d
mov eax, r9d
sub eax, 0x3f
je 0x180044172
sub eax, 1
je 0x180044162
sub eax, 1
je 0x180044131
sub eax, 1
je 0x180044113
cmp eax, 1
jne 0x18004417b
mov edi, ecx
jmp 0x18004417b
mov rax, qword [r13]
movzx ecx, byte [r8 + rax]
movzx eax, di
or ax, 0xf
and cl, 0xf
cmove ax, di
movzx edi, ax
xor ecx, ecx
jmp 0x18004417b
mov rax, qword [r13]
movzx edx, word [r8 + rax]
movzx eax, dl
movzx ecx, di
or cx, word [rbp - 0x70]
and al, 0xf0
cmove cx, di
movzx edi, cx
or di, r15w
and dx, r15w
cmove di, cx
mov edx, 0xf000
xor ecx, ecx
jmp 0x18004417b
mov rax, qword [r13]
test word [r8 + rax], dx
je 0x18004417b
or di, dx
jmp 0x18004417b
mov rax, qword [r13 + 0x28]
mov word [r8 + rax], di
dec r9d
cmp r9d, 0x3e
ja 0x1800440f3
inc r10d
add r8, 2
movzx eax, word [r13 + 0x16]
shl eax, 4
cmp r10d, eax
jl 0x1800440f0
mov r14, qword [rbp - 0x80]
mov r9d, 0x7fff
jmp case.default.0x180044034
mov word [r14 + 0x1fe], r9w
jmp case.default.0x180044034
mov eax, 0x3def
mov word [r14 + 0x11e], ax
mov eax, 0x1f
mov word [r14 + 0x13e], ax
jmp case.default.0x180044034
mov eax, 0x1ef
mov word [r14 + 0x7e], ax
jmp case.default.0x180044034
mov eax, 0x7c1f
mov word [r14 + 0x1be], ax
mov eax, 0x7fe0
mov word [r14 + 0x1de], ax
dec r11d
sub rbx, 1
jne 0x180044015
mov esi, dword [rsp + 0x64]
mov r15, qword [rbp - 0x50]
mov r12d, dword [rsp + 0x78]
mov r13, qword [rbp - 0x48]
jmp 0x180043e09
cmp al, 8
jne 0x180043e0d
mov dword [rsp + 0x64], ebx
xor eax, eax
mov word [r11 + 0x66], ax
cmp byte [r11 + 0x18], al
jne 0x1800442b0
mov rcx, qword [r11]
test rcx, rcx
je 0x180044267
movzx eax, word [r11 + 0x16]
shl eax, 6
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x70]
xor r8d, r8d
mov rdx, qword [r11 + 0x28]
mov ecx, 0xbe
call fcn.180040b70
mov r11, qword [rbp - 0x68]
mov rcx, qword [r11 + 8]
mov dword [rsp + 0x64], ebx
test rcx, rcx
je 0x180043e09
movzx eax, word [r11 + 0x10]
add eax, eax
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x70]
xor r8d, r8d
mov rdx, r14
mov ecx, 0xbe
call fcn.180040b70
mov dword [rsp + 0x64], ebx
jmp 0x180043e09
mov r10d, eax
movzx eax, word [r11 + 0x16]
shl eax, 4
test eax, eax
je 0x1800443af
xor eax, eax
mov r8d, eax
mov r9d, eax
mov ebx, 0xf000
mov r13d, 0xf00
mov r15d, 0xff
nop dword [rax]
mov edx, 5
cmp edx, 5
je 0x180044356
cmp edx, 0x3a2
je 0x18004433d
cmp edx, 0x73f
je 0x180044323
cmp edx, 0xadc
jne 0x180044366
mov rax, qword [r11]
movzx ecx, word [r8 + rax]
mov eax, esi
or eax, 0xff000000
and cx, bx
cmove eax, esi
mov esi, eax
mov rax, qword [r11 + 0x28]
mov dword [r9 + rax], esi
jmp 0x180044364
mov rax, qword [r11]
movzx ecx, word [r8 + rax]
mov eax, esi
or eax, 0xff0000
and cx, r13w
cmove eax, esi
mov esi, eax
jmp 0x180044364
mov rax, qword [r11]
movzx ecx, byte [r8 + rax]
mov eax, esi
or eax, 0xff00
and cl, 0xf0
cmove eax, esi
mov esi, eax
jmp 0x180044364
mov esi, eax
mov rax, qword [r11]
test byte [r8 + rax], 0xf
cmovne esi, r15d
xor eax, eax
add edx, 0x39d
cmp edx, 0xe74
jbe 0x1800442e5
mov dword [rsp + 0x64], esi
inc r10d
add r9, 4
add r8, 2
movzx eax, word [r11 + 0x16]
shl eax, 4
cmp r10d, eax
mov eax, 0
jl 0x1800442e0
mov r15, qword [rbp - 0x50]
mov r13, qword [rbp - 0x48]
mov ecx, dword [rsp + 0x68]
mov r9d, 0x7fff
mov word [r14 + 0x1fe], r9w
jmp 0x180043e0d
mov byte [rsp + 0x78], 0x32
xor ebx, ebx
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], 0xd1
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x78]
call fcn.180051e50
mov rax, qword [rbp - 0x18]
mov qword [rsp + 0x20], rax
lea r9d, [rbx + 0x56]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1800d99f0
jmp 0x180043e09
cmp r12d, 0x85f2
ja 0x1800444e6
je 0x1800444d9
cmp r12d, 0x3564
je 0x1800444c9
cmp r12d, 0x3da0
je 0x18004448e
cmp r12d, 0x4378
je 0x180044478
cmp r12d, 0x69ff
jne 0x180043e0d
mov eax, dword [r11 + 8]
mov dword [0x4000468], eax
mov eax, dword [r11 + 0xc]
mov dword [0x4000468], eax
jmp 0x180043e0d
mov word [rbp + 0xd4], ax
mov dword [rbp + 0xd6], 0x6c0061
jmp 0x180043e0d
mov ecx, 0x6a
mov eax, ecx
sub eax, 0x69
je case.0x180044964.240
cmp eax, 1
jne 0x1800444aa
mov rax, qword [r15]
mov qword [rbp - 0x60], rax
dec ecx
cmp ecx, 0x68
ja 0x180044493
mov eax, dword [r11]
sar eax, 6
movzx ecx, al
mov dword [r11], ecx
and ecx, 0x7f
mov dword [rsp + 0x68], ecx
jmp 0x180043e0d
mov eax, dword [r11 + 4]
mov dword [0x4000468], eax
jmp 0x180043e0d
mov word [rbp + 0xda], r10w
jmp 0x180043e0d
cmp r12d, 0x9e9a
je 0x180044525
cmp r12d, 0xd335
je 0x180044515
cmp r12d, 0x107d0
jne 0x180043e0d
mov eax, dword [r11 + 0x18]
mov dword [0x4000468], eax
jmp 0x180043e0d
mov eax, dword [r11 + 0x14]
mov dword [0x4000468], eax
jmp 0x180043e0d
mov eax, dword [r11 + 0x10]
mov dword [0x4000468], eax
jmp 0x180043e0d
mov eax, 0x72
mov word [rbp + 0xee], ax
jmp case.0x180043e9e.1
mov eax, 0x44
mov word [rbp + 0xf0], ax
mov dword [rbp + 0xf2], 0x610072
jmp case.0x180043e9e.1
mov dword [rbp + 0xe6], 0x73006c
jmp case.0x180043e9e.1
lea rax, [0x1800f3590]
sub rax, r9
mov ecx, dword [rax]
neg ecx
mov dword [rbp - 0x60], ecx
jmp case.0x180043e9e.1
cmp dword [r11], 0x80
jne 0x1800445e8
mov eax, 0xd9
cmp eax, 0xd9
je 0x1800445d0
cmp eax, 0x42f7
jne 0x1800445d7
mov rax, qword [rbp - 0x60]
mov rcx, qword [rbp + 0x140]
xor rcx, rsp
call fcn.1800e9340
mov rbx, qword [rsp + 0x290]
add rsp, 0x250
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov dword [rbp - 0x60], 0x1900000
add eax, 0x421e
cmp eax, 0x843c
jbe 0x180044594
jmp case.0x180043e9e.1
jge case.0x180043e9e.1
mov ecx, 0x56
cmp ecx, 0x56
je 0x180044602
cmp ecx, 0x412c
je case.0x180044964.240
jmp 0x180044614
lea rax, [0x180000000]
mov eax, dword [r9 + rax + 0xf3390]
mov dword [rbp - 0x60], eax
add ecx, 0x40d6
cmp ecx, 0x81ac
jbe 0x1800445f3
jmp case.0x180043e9e.1
mov word [rbp + 0xdc], r10w
jmp case.0x180043e9e.1
mov eax, dword [r11 + 0x1c]
mov dword [0x4000468], eax
mov eax, dword [r11 + 0x20]
mov dword [0x4000468], eax
jmp case.0x180043e9e.1
mov dword [rbp + 0xde], 0x430069
jmp case.0x180043e9e.1
mov dword [rbp + 0xe2], 0x6c0061
jmp case.0x180043e9e.1
mov eax, dword [r11]
mov dword [0x40004a4], eax
jmp case.0x180043e9e.1
mov word [rbp + 0xf6], bx
jmp case.0x180043e9e.1
mov word [rbp + 0xf8], di
jmp case.0x180043e9e.1
mov dword [rbp + 0xea], 0x650050
jmp case.0x180043e9e.1
mov dword [rbp + 0xfa], 0x430077
dec r8d
dec edx
cmp r8d, esi
ja 0x180043e72
mov ebx, r14d
lea edi, [r14 + 0x645]
cmp r14d, edi
jae 0x1800448f2
mov ecx, 0x30
lea esi, [rcx + 0x42]
lea r15d, [rcx + 0x31]
movabs r13, 0x32003100720063
movabs r12, 0x7400730069
lea r14d, [rcx + 0x14]
nop word [rax + rax]
cmp ebx, 0x3eb
ja 0x1800447b8
je 0x1800447aa
cmp ebx, 0x23f
ja 0x18004474b
je 0x18004473d
mov eax, ebx
sub eax, 0xfe
je 0x180044730
sub eax, 0x6b
je 0x180044721
cmp eax, 0x6b
jne 0x1800448df
xor eax, eax
mov word [rbp + 0x104], ax
jmp 0x1800448df
mov dword [rbp + 0x100], 0x6c006c
jmp 0x1800448df
mov word [rbp + 0xfe], r15w
jmp 0x1800448df
xor eax, eax
mov word [rbp + 0xb8], ax
jmp 0x1800448df
mov eax, ebx
sub eax, 0x2aa
je 0x180044786
sub eax, 0x6b
je 0x180044771
cmp eax, 0x6b
jne 0x1800448df
mov dword [rbp + 0xc6], 0x30
jmp 0x1800448df
mov qword [rbp + 0xbe], r13
xor eax, eax
mov word [rbp + 0xc6], ax
jmp 0x1800448df
mov r8d, 3
lea rdx, [0x18046a120]
lea rcx, [rbp + 0xb8]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncat]
mov ecx, 0x30
jmp 0x1800448df
xor eax, eax
mov word [rbp + 0x108], ax
jmp 0x1800448df
cmp ebx, 0x597
ja 0x180044861
je 0x180044855
mov eax, ebx
sub eax, 0x456
je 0x180044800
sub eax, 0x6b
je 0x1800447ed
cmp eax, 0x6b
jne 0x1800448df
mov dword [rbp + 0x11c], r15d
jmp 0x1800448df
mov dword [rbp + 0x114], r14d
mov qword [rbp + 0x116], r12
jmp 0x1800448df
lea rcx, [rbp + 0x108]
sub rcx, 2
nop dword [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x180044810
movsd xmm0, qword [str.myBe]
movsd qword [rcx], xmm0
movzx eax, word [0x18046a098]
mov word [rcx + 8], ax
mov r8d, 2
lea rdx, [0x18046a09c]
lea rcx, [rbp + 0x108]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncat]
mov ecx, 0x30
jmp 0x1800448df
mov dword [rbp + 0x11e], 0x6e
jmp 0x1800448df
mov eax, ebx
sub eax, 0x602
je 0x1800448c5
sub eax, 0x6b
je 0x1800448b3
cmp eax, 0x6b
jne 0x1800448df
movsd xmm0, qword [str.esul]
movsd qword [rbp + 0x12e], xmm0
movzx eax, word [0x18046a0b0]
mov word [rbp + 0x136], ax
mov r8d, 3
lea rdx, [0x18046a0b4]
lea rcx, [rbp + 0x136]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
mov ecx, 0x30
jmp 0x1800448df
mov dword [rbp + 0x12a], 0x20
mov dword [rbp + 0x12c], esi
jmp 0x1800448df
movsd xmm0, qword [str.ce2]
movsd qword [rbp + 0x120], xmm0
mov dword [rbp + 0x128], 0x3d
add ebx, 0x6b
cmp ebx, edi
jb 0x1800446e0
mov esi, dword [rsp + 0x70]
mov r14d, dword [rbp - 0x78]
cmp r14d, esi
jbe case.0x180044964.240
movabs r15, 0x650074005f
mov rbx, qword [rbp + 0x10]
mov r13d, dword [rbp - 0x50]
mov r12, qword [rbp + 0x10]
movzx edi, byte [rsp + 0x78]
mov dword [rsp + 0x64], edi
lea r11, str.ssleay32
mov r10d, 0x63
movabs r8, 0x7ffffffffffffffe
lea r9d, [r10 - 0x35]
lea rdx, str.libeay32
lea eax, [r14 - 0xf0]
cmp eax, 0xe
ja case.0x180044964.248
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x45454]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov dword [rbp - 0x2c], 0x14
lea rax, [rbp + 0xb8]
mov qword [rbp + 0x58], rax
jmp case.0x180044964.248
cmp byte [rsp + 0x78], 0
je 0x18004498d
mov rcx, rbx
call qword [sym.imp.GDI32.dll_DeleteObject]
mov byte [rbp - 0x60], 1
jmp case.0x180044964.248
lea rdx, [rbp + 0x108]
lea rcx, [rbp + 0xd0]
call qword [sym.imp.SHLWAPI.dll_PathIsContentTypeW]
jmp case.0x180044964.248
mov qword [rbp + 0x60], rdx
jmp case.0x180044964.248
xor esi, esi
mov dword [rbp - 0x70], esi
mov edx, esi
mov qword [rbp - 0x80], rdx
jmp 0x1800449d2
xor esi, esi
mov qword [rbp + 0x28], rsi
mov qword [rbp + 0x30], 7
mov word [rbp + 0x18], si
mov eax, 7
mov dword [rbp - 0x74], eax
jmp 0x1800449f2
xor esi, esi
add eax, 0xfffffff9
cmp eax, 8
ja case.default.0x180044a10
lea r14, [0x180000000]
mov ecx, dword [r14 + rax*4 + 0x45490]
add rcx, r14
jmp rcx
mov r8d, 3
lea rdx, [0x180468d88]
lea rcx, [rbp + 0x18]
call fcn.1800200e0
mov ecx, esi
movzx eax, byte [rsp + 0x60]
test r13d, r13d
cmovne ecx, eax
mov byte [rsp + 0x60], cl
mov rdx, qword [rbp - 0x80]
movabs r8, 0x7ffffffffffffffe
mov r9d, 0x2e
lea r10d, [r9 + 0x35]
jmp case.default.0x180044a10
lea rcx, [rbp + 0x18]
cmp qword [rbp + 0x30], 8
cmovae rcx, qword [rbp + 0x18]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov qword [rbp + 0x10], rax
movzx eax, byte [rsp + 0x60]
test al, al
je 0x180044a39
mov edi, 7
cmp edi, 7
je 0x180044b44
cmp edi, 0x16c
je 0x180044b2f
cmp edi, 0x2d1
je 0x180044aed
cmp edi, 0x436
jne 0x180044b54
test al, al
je 0x180044b54
mov ebx, 0x93
cmp ebx, 0x93
je 0x180044ad1
cmp ebx, 0xca2
jne 0x180044add
mov rcx, r12
call fcn.1800e8b8c
jmp 0x180044add
mov rdx, r12
mov ecx, r13d
call qword [sym.imp.GDI32.dll_SetEnhMetaFileBits]
add ebx, 0xc0f
cmp ebx, 0x181e
jbe 0x180044ab7
jmp 0x180044b4f
cmp dword [rbp - 0x10], 0
jne 0x180044b54
mov ebx, 0xbb
nop dword [rax + rax]
mov eax, ebx
sub eax, 0xbb
je 0x180044b16
cmp eax, 1
jne 0x180044b1e
xor al, al
mov byte [rsp + 0x60], al
jmp 0x180044b23
mov rcx, r12
call fcn.1800e8b8c
movzx eax, byte [rsp + 0x60]
inc ebx
cmp ebx, 0xbd
jb 0x180044b00
jmp 0x180044b54
mov r8, r12
mov edx, r13d
mov rcx, qword [rbp - 0x40]
call qword [sym.imp.GDI32.dll_GetEnhMetaFileBits]
mov dword [rbp - 0x10], eax
jmp 0x180044b4f
mov ecx, r13d
call fcn.1800e8b94
mov r12, rax
movzx eax, byte [rsp + 0x60]
add edi, 0x165
cmp edi, 0x594
jbe 0x180044a81
mov rdx, qword [rbp - 0x80]
movabs r8, 0x7ffffffffffffffe
mov r9d, 0x2e
lea r10d, [r9 + 0x35]
jmp case.default.0x180044a10
mov rdi, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x30]
cmp rdi, rcx
jae 0x180044bb1
lea rax, [rdi + 1]
mov qword [rbp + 0x28], rax
lea rax, [rbp + 0x18]
cmp rcx, 8
cmovae rax, qword [rbp + 0x18]
mov dword [rax + rdi*2], 0x2e
jmp 0x180044c82
mov rax, r8
sub rax, rdi
cmp rax, 1
jb 0x180045338
lea r15, [rdi + 1]
mov rsi, qword [rbp + 0x30]
mov rbx, r15
or rbx, 7
cmp rbx, r8
jbe 0x180044bda
mov rbx, r8
jmp 0x180044bfb
mov rcx, rsi
shr rcx, 1
mov rax, r8
sub rax, rcx
cmp rsi, rax
jbe 0x180044bf0
mov rbx, r8
jmp 0x180044bfb
lea rax, [rcx + rsi]
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp + 0x18]
call fcn.18001ffe0
mov r14, rax
mov qword [rbp + 0x28], r15
mov qword [rbp + 0x30], rbx
add rdi, rdi
mov r8, rdi
mov rcx, rax
cmp rsi, 8
jb 0x180044c6d
mov rbx, qword [rbp + 0x18]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov dword [r14 + rdi], 0x2e
lea rdx, [rsi*2 + 2]
cmp rdx, 0x1000
jb 0x180044c63
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x1800452de
mov rbx, rcx
mov rcx, rbx
call fcn.1800e8b8c
jmp 0x180044c7e
lea rdx, [rbp + 0x18]
call sub.VCRUNTIME140.dll_memcpy
mov dword [r14 + rdi], 0x2e
mov qword [rbp + 0x18], r14
xor r8d, r8d
xor edx, edx
mov rcx, qword [rbp - 0x40]
call qword [sym.imp.GDI32.dll_GetEnhMetaFileBits]
mov r13d, eax
mov rdx, qword [rbp - 0x80]
movabs r8, 0x7ffffffffffffffe
mov r9d, 0x2e
lea r10d, [r9 + 0x35]
jmp case.default.0x180044a10
mov rdx, qword [rbp + rdx*8 + 0x58]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x180044cc0
lea rcx, [rbp + 0x18]
call fcn.1800200e0
mov qword [rbp - 0x40], rsi
mov rdx, qword [rbp - 0x80]
movabs r8, 0x7ffffffffffffffe
mov r9d, 0x2e
lea r10d, [r9 + 0x35]
jmp case.default.0x180044a10
mov r8d, 1
lea rdx, [0x18046a144]
lea rcx, [rbp + 0x70]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov r8d, 1
lea rdx, [0x180469b28]
lea rcx, [rbp + 0x70]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov rdx, qword [rbp - 0x80]
movabs r8, 0x7ffffffffffffffe
mov r9d, 0x2e
lea r10d, [r9 + 0x35]
jmp case.default.0x180044a10
mov rax, qword [rbp - 0x68]
mov rdi, qword [rax + 0x10]
mov rbx, rax
cmp qword [rax + 0x18], 8
jb 0x180044d55
mov rbx, qword [rax]
cmp rdi, 8
jae 0x180044d6d
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x38], xmm0
mov esi, 7
mov r14, qword [rbp + 0x38]
jmp 0x180044dac
mov rsi, rdi
or rsi, 7
cmp rsi, r8
cmova rsi, r8
lea rdx, [rsi + 1]
lea rcx, [rbp + 0x38]
call fcn.18001ffe0
mov r14, rax
mov qword [rbp + 0x38], rax
lea r8, [rdi*2 + 2]
mov rdx, rbx
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
movabs r8, 0x7ffffffffffffffe
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x48], rdi
lea r15, [rbp + 0x38]
cmp rsi, 8
cmovae r15, r14
cmp rdi, 8
jae 0x180044dd7
movups xmm0, xmmword [r15]
mov qword [rbp + 0x98], 7
jmp 0x180044e1d
mov rbx, rdi
or rbx, 7
cmp rbx, r8
cmova rbx, r8
lea rdx, [rbx + 1]
lea rcx, [rbp + 0x80]
call fcn.18001ffe0
mov qword [rbp + 0x80], rax
lea r8, [rdi*2 + 2]
mov rdx, r15
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp + 0x98], rbx
movups xmm0, xmmword [rbp + 0x80]
movups xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x90], rdi
mov rcx, qword [rbp + 0x30]
cmp rcx, 8
jb 0x180044e68
lea rdx, [rcx*2 + 2]
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180044e63
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800452d7
call fcn.1800e8b8c
movups xmm0, xmmword [rbp + 0x38]
movups xmmword [rbp + 0x18], xmm0
movups xmm0, xmmword [rbp + 0x90]
movups xmmword [rbp + 0x28], xmm0
cmp rsi, 8
jb 0x180044eb6
lea rdx, [rsi*2 + 2]
mov rax, r14
cmp rdx, 0x1000
jb 0x180044eae
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800452de
mov rcx, r14
call fcn.1800e8b8c
mov byte [rsp + 0x60], 1
mov rdx, qword [rbp - 0x80]
movabs r8, 0x7ffffffffffffffe
mov r9d, 0x2e
lea r10d, [r9 + 0x35]
jmp case.default.0x180044a10
mov eax, dword [str.Inst]
mov dword [rbp + 0x70], eax
mov eax, dword [str.r_:_]
mov dword [rbp + 0x74], eax
movzx eax, byte [0x18046a154]
mov byte [rbp + 0x78], al
jmp case.default.0x180044a10
lea rcx, [rbp + 0x70]
call qword [sym.imp.SHLWAPI.dll_PathGetDriveNumberA]
cmp qword [rbp + 0x10], 0
jne 0x180044a39
mov ebx, esi
cmp ebx, 0x17
ja case.default.0x180044f26
mov eax, ebx
mov ecx, dword [r14 + rax*4 + 0x454b4]
add rcx, r14
jmp rcx
movsd xmm0, qword [str.ate_]
movsd qword [rbp + 0x9a], xmm0
movzx eax, word [0x18046a160]
mov word [rbp + 0xa2], ax
jmp case.default.0x180044f26
mov dword [rbp + 0x82], 0x73
mov dword [rbp + 0x84], 0x2f
jmp case.default.0x180044f26
mov eax, dword [0x18046a168]
mov dword [rbp + 0x86], eax
movzx eax, word [0x18046a16c]
mov word [rbp + 0x8a], ax
jmp case.default.0x180044f26
mov dword [rbp - 8], esi
jmp case.default.0x180044f26
mov dword [rbp - 0xc], 0xa
jmp case.default.0x180044f26
mov r9d, dword [rbp]
mov r8d, dword [rbp - 4]
mov edx, dword [rbp + 8]
mov ecx, dword [rbp - 0xc]
call qword [sym.imp.GDI32.dll_CreateRectRgn]
mov qword [rbp - 0x38], rax
mov eax, dword [rbp + 4]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rsi
mov eax, dword [rbp - 8]
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rbp - 0x58]
xor edx, edx
lea rcx, [rbp + 0x80]
call sub.SHLWAPI.dll_SHRegGetUSValueW
mov dword [rbp - 0x30], eax
jmp case.default.0x180044f26
mov dword [rbp - 4], 0x28
jmp case.default.0x180044f26
mov dword [rbp], 0x32
mov dword [rbp + 4], esi
jmp case.default.0x180044f26
mov dword [rsp + 0x68], esi
jmp case.default.0x180044f26
mov r8d, 0xa
lea rdx, [rbp + 0x8a]
lea ecx, [r8 - 2]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__itow]
jmp case.default.0x180044f26
mov dword [rbp + 0x8c], 0x6e
jmp case.default.0x180044f26
mov dil, 1
jmp 0x18004514c
lea rax, [rbp + 0x80]
sub rax, 2
nop dword [rax + rax]
lea rax, [rax + 2]
cmp word [rax], 0
jne 0x180045050
movsd xmm0, qword [0x18046a170]
movsd qword [rax], xmm0
jmp case.default.0x180044f26
mov qword [rbp + 0x8e], r15
movabs rax, 0x6c0070006d
mov qword [rbp + 0x94], rax
jmp case.default.0x180044f26
mov eax, dword [0x18046a178]
mov dword [rbp + 0xa2], eax
mov dword [rbp + 0xa6], 0x6f
jmp case.default.0x180044f26
mov byte [rsp + 0x61], 1
jmp case.default.0x180044f26
movsd xmm0, qword [str.cess]
movsd qword [rbp + 0xa8], xmm0
movzx eax, word [0x18046a188]
mov word [rbp + 0xb0], ax
jmp case.default.0x180044f26
test dil, dil
je case.default.0x180044f26
mov dword [rsp + 0x28], 1
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, dword [rbp - 0x58]
xor edx, edx
lea rcx, [rbp + 0x80]
call qword [sym.imp.SHLWAPI.dll_SHRegSetUSValueW]
jmp case.default.0x180044f26
mov dword [rbp - 0x58], esi
mov dword [rbp + 8], 0x14
jmp case.default.0x180044f26
mov byte [rbp - 0x60], 0
jmp case.default.0x180044f26
mov dword [rbp + 0x80], 0x6a
jmp case.default.0x180044f26
cmp byte [rsp + 0x61], 0
je case.default.0x180044f26
mov rcx, qword [rbp - 0x38]
call qword [sym.imp.GDI32.dll_DeleteObject]
jmp case.default.0x180044f26
mov ecx, esi
movzx eax, byte [rsp + 0x61]
cmp qword [rbp - 0x38], 0
cmovne ecx, eax
mov byte [rsp + 0x61], cl
movzx edi, dil
cmp dword [rbp - 0x30], 0
cmovne edi, esi
mov dword [rsp + 0x64], edi
inc ebx
lea eax, [rbx + 0x100]
cmp eax, 0x118
jb 0x180044f10
mov rdx, qword [rbp - 0x80]
movabs r8, 0x7ffffffffffffffe
mov r9d, 0x2e
lea r10d, [r9 + 0x35]
jmp case.default.0x180044a10
mov word [rbp + 0x78], r10w
movzx eax, word [0x18046a18c]
mov word [rbp + 0x79], ax
movzx eax, byte [0x18046a18e]
mov byte [rbp + 0x7b], al
mov eax, dword [rbp - 0x74]
inc eax
mov dword [rbp - 0x74], eax
cmp eax, 0x10
mov edi, dword [rsp + 0x64]
movabs r15, 0x650074005f
jb 0x1800449f0
mov rcx, qword [rbp + 0x30]
cmp rcx, 8
jb 0x1800451fa
lea rdx, [rcx*2 + 2]
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800451f1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180045331
call fcn.1800e8b8c
mov rdx, qword [rbp - 0x80]
mov ecx, dword [rbp - 0x70]
inc ecx
mov dword [rbp - 0x70], ecx
inc rdx
mov qword [rbp - 0x80], rdx
cmp ecx, 3
mov edi, dword [rsp + 0x64]
movabs r8, 0x7ffffffffffffffe
movabs r15, 0x650074005f
mov r9d, 0x2e
lea r10d, [r9 + 0x35]
jb 0x1800449d0
mov eax, dword [rbp - 0x50]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x18]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp - 0x48]
mov r8d, dword [rbp - 0x28]
mov edx, dword [rbp - 0x2c]
mov ecx, dword [rbp - 0x20]
call qword [sym.imp.GDI32.dll_CreateRoundRectRgn]
mov rbx, rax
mov esi, dword [rsp + 0x70]
mov r14d, dword [rbp - 0x78]
jmp case.0x180044964.248
xor eax, eax
mov ecx, eax
movzx eax, byte [rsp + 0x78]
test rbx, rbx
cmovne ecx, eax
mov byte [rsp + 0x78], cl
jmp case.0x180044964.248
mov dword [rbp - 0x28], 0x28
jmp case.0x180044964.248
mov dword [rbp - 0x20], 0xa
jmp case.0x180044964.248
mov dword [rbp - 0x18], 0xa
jmp case.0x180044964.248
mov qword [rbp + 0x68], r11
jmp case.0x180044964.248
mov byte [rsp + 0x78], 1
movups xmm0, xmmword [rbp + 0x38]
movups xmmword [rbp + 0x58], xmm0
movsd xmm1, qword [rbp + 0x48]
movsd qword [rbp + 0x68], xmm1
jmp case.0x180044964.248
mov dword [rbp - 0x48], 0x32
jmp case.0x180044964.248
mov dword [rbp - 0x50], 0xa
dec r14d
mov dword [rbp - 0x78], r14d
cmp r14d, esi
jbe case.0x180044964.240
jmp 0x18004491a
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 rdx, qword [rbp + 0x30]
cmp rdx, 8
jb case.0x180044964.240
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180045327
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180045327
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800e8b8c
jmp case.0x180044964.240
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.18001de50
int3