Function at 0x14004de20
Capabilities:
Authenticate hmac
Check http status code

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x578
mov eax, 0xf758
mov word [rsp + 0x388], ax
mov eax, dword [0x1401771d4]
mov byte [rsp + 0x43], al
movzx eax, byte [0x14017722b]
mov dword [rsp + 0x80], eax
movzx eax, word [0x1401772b0]
mov word [rsp + 0x5c], ax
movzx eax, word [0x1401772d0]
mov word [rsp + 0x64], ax
movzx eax, byte [0x14017722b]
mov dword [rsp + 0x78], eax
movzx eax, byte [str.__._AV__JsonPrimitiv]
mov byte [rsp + 0x42], al
movzx eax, word [0x140177288]
mov word [rsp + 0x60], ax
mov eax, 0x4dae
mov word [rsp + 0x54], ax
mov eax, 0x5d
mov word [rsp + 0x4c], ax
mov qword [rsp + 0x88], 0x520c28ea
mov eax, 0x42f9
mov word [rsp + 0x68], ax
mov eax, dword [0x140177250]
mov word [rsp + 0x70], ax
mov dword [rsp + 0x7c], 0x9d
mov dword [rsp + 0x6c], 0xc8ba3887
mov qword [rsp + 0x98], 0xd7
mov byte [rsp + 0x41], 0x8e
movzx eax, word [0x1401772d4]
mov word [rsp + 0x48], ax
movzx eax, byte [0x1401771a7]
movsx eax, al
mov dword [rsp + 0x74], eax
mov dword [rsp + 0x84], 0x26173a4a
movzx eax, byte [0x1401771a6]
mov byte [rsp + 0x40], al
mov eax, 0x15a6
mov word [rsp + 0x50], ax
mov byte [rsp + 0x44], 0x90
movzx eax, byte [0x1401771a6]
mov word [rsp + 0x58], ax
mov qword [rsp + 0x4d0], 0x2d14
mov dword [rsp + 0x440], 0xc678
mov dword [rsp + 0x444], 0x7c8815f3
movzx eax, byte [0x140177264]
mov byte [rsp + 0xac], al
mov byte [rsp + 0xad], 0xf9
mov byte [rsp + 0xb8], 0xf2
movzx eax, byte [0x1401771ff]
mov word [rsp + 0x38c], ax
mov eax, 0xffff9069
mov word [rsp + 0x36c], ax
mov rax, qword [0x1401772c0]
mov qword [rsp + 0x4d8], rax
mov byte [rsp + 0xae], 0xcc
mov qword [rsp + 0x4e0], 0x9d89
mov dword [rsp + 0x448], 0xee6329cd
movzx eax, byte [0x1401771fe]
movsx eax, al
sub eax, 0x6f43e64
mov byte [str.ORtlGetDeviceFamily], al
mov qword [0x140177270], 1
mov eax, dword [0x140371450]
mov dword [rsp + 0xbc], eax
movsx rax, word [0x140177260]
cmp rax, qword [0x140177290]
jle 0x14004e008
mov dword [rsp + 0x114], 1
jmp 0x14004e013
mov dword [rsp + 0x114], 0
movsx eax, word [0x140177260]
cmp eax, 0x64
jle 0x14004e02c
mov dword [rsp + 0x110], 1
jmp 0x14004e037
mov dword [rsp + 0x110], 0
mov eax, dword [rsp + 0x110]
cmp dword [rsp + 0x114], eax
jl 0x14004e0a4
movzx eax, word [rsp + 0x58]
movzx eax, ax
imul eax, eax, 0x86
movzx ecx, word [rsp + 0x54]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x54], ax
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
mov eax, dword [0x14017729c]
add eax, 0x97
mov ecx, dword [0x140177268]
sub ecx, eax
mov eax, ecx
mov dword [0x140177268], eax
jmp 0x14004e13a
mov rax, qword [rsp + 0x98]
movsx ecx, word [rsp + 0x5c]
not ecx
movsxd rcx, ecx
cmp rax, rcx
jne 0x14004e0c8
mov dword [rsp + 0x11c], 1
jmp 0x14004e0d3
mov dword [rsp + 0x11c], 0
mov eax, dword [0x140177250]
movzx ecx, byte [0x1401771a6]
cmp eax, ecx
jl 0x14004e0f1
mov dword [rsp + 0x118], 1
jmp 0x14004e0fc
mov dword [rsp + 0x118], 0
mov eax, dword [rsp + 0x118]
cmp dword [rsp + 0x11c], eax
jg 0x14004e13a
movzx eax, byte [0x14017722f]
movsx eax, al
mov ecx, dword [0x140177250]
sub ecx, eax
mov eax, ecx
mov dword [0x140177250], eax
movzx eax, word [rsp + 0x68]
movzx ecx, byte [0x140177216]
sub eax, ecx
mov byte [0x1401771a6], al
mov eax, dword [rsp + 0xbc]
add eax, 0x5a
mov dword [rsp + 0x308], eax
mov eax, dword [rsp + 0xbc]
add eax, 0x152
mov dword [rsp + 0x44c], eax
lea rax, [rsp + 0x4e8]
lea rcx, str.Unexpected_Failure
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x4e8]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov word [rsp + 0x50], ax
mov eax, dword [rsp + 0xbc]
add eax, 0x383
mov dword [rsp + 0xa0], eax
mov eax, dword [0x1401772bc]
test eax, eax
je 0x14004e1c7
movzx eax, word [rsp + 0x4c]
movzx eax, ax
mov ecx, dword [0x140177264]
sub ecx, eax
mov eax, ecx
mov dword [0x140177264], eax
jmp 0x14004e255
cmp dword [0x14017729c], 0
jne 0x14004e1d8
mov eax, dword [rsp + 0x78]
test eax, eax
je 0x14004e255
movzx eax, byte [0x1401771ff]
movsx ecx, word [rsp + 0x60]
cmp eax, ecx
je 0x14004e255
movzx eax, word [0x1401772d0]
cwde
test eax, eax
jne 0x14004e202
mov qword [rsp + 0x400], 1
jmp 0x14004e20e
mov qword [rsp + 0x400], 0
mov eax, dword [rsp + 0x74]
mov eax, eax
mov rcx, qword [0x140177280]
add rcx, rax
mov rax, rcx
movzx ecx, byte [0x1401771d3]
movzx edx, word [rsp + 0x50]
movzx edx, dx
add ecx, edx
movsxd rcx, ecx
xor rax, rcx
imul rax, qword [rsp + 0x400]
mov word [rsp + 0x54], ax
movzx eax, byte [0x1401771fe]
dec al
mov byte [0x1401771fe], al
mov eax, dword [0x140371450]
mov dword [rsp + 0xc0], eax
mov eax, dword [0x1401771d4]
mov dword [0x1401772d8], eax
movzx eax, word [0x14017725c]
cwde
movzx ecx, word [rsp + 0x70]
movzx ecx, cx
sub eax, ecx
movsx ecx, word [rsp + 0x60]
movzx edx, word [rsp + 0x68]
not edx
imul ecx, edx
sub eax, ecx
mov word [rsp + 0x4c], ax
mov eax, dword [rsp + 0xc0]
add eax, 0x349
mov dword [rsp + 0x13c], eax
mov eax, dword [rsp + 0x78]
cdqe
movabs rcx, 0x58f6b3f5ce6c6
sub rax, rcx
movzx ecx, word [rsp + 0x50]
movzx ecx, cx
movsx edx, word [rsp + 0x60]
sub ecx, edx
movsxd rcx, ecx
sub rax, rcx
movzx ecx, byte [0x14017722f]
movsx rcx, cl
sub rax, rcx
mov qword [rsp + 0x98], rax
movsx eax, byte [rsp + 0x40]
movzx ecx, word [0x14017725c]
movsx ecx, cx
add eax, ecx
movsx ecx, byte [rsp + 0x40]
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x40], al
mov eax, dword [rsp + 0xc0]
add eax, 0x327
mov dword [rsp + 0x138], eax
mov eax, dword [rsp + 0x74]
movzx ecx, word [rsp + 0x68]
mov edx, 0xffc8e461
lea rcx, [rcx + rdx]
add eax, ecx
mov word [rsp + 0x68], ax
movzx eax, byte [0x14017722f]
mov ecx, 1
imul rcx, rcx, 9
lea rdx, [0x1403e25f0]
mov byte [rdx + rcx], al
mov eax, dword [rsp + 0xc0]
add eax, 0xd3
mov dword [rsp + 0x450], eax
mov rax, qword [rsp + 0x98]
cmp qword [0x1401772b0], rax
jae 0x14004e37c
mov dword [rsp + 0x124], 1
jmp 0x14004e387
mov dword [rsp + 0x124], 0
cmp qword [0x1401772b0], 0x4d
jae 0x14004e39e
mov dword [rsp + 0x120], 1
jmp 0x14004e3a9
mov dword [rsp + 0x120], 0
mov eax, dword [rsp + 0x120]
cmp dword [rsp + 0x124], eax
jle 0x14004e404
movzx eax, byte [rsp + 0x43]
movsx eax, al
movzx ecx, byte [0x140177216]
imul eax, ecx
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x43], al
mov eax, dword [0x140177264]
mov dword [0x140177268], eax
movzx eax, word [rsp + 0x70]
movzx eax, ax
mov ecx, dword [0x1401772dc]
sub ecx, eax
mov eax, ecx
mov dword [0x1401772dc], eax
jmp 0x14004e49b
movzx eax, word [0x14017725c]
cwde
test eax, eax
jne 0x14004e41d
mov dword [rsp + 0x128], 1
jmp 0x14004e428
mov dword [rsp + 0x128], 0
cmp dword [0x140177268], 0
jne 0x14004e43e
mov dword [rsp + 0x12c], 1
jmp 0x14004e449
mov dword [rsp + 0x12c], 0
movsx eax, word [0x140177260]
sub eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x6c]
mov edx, dword [rsp + 0x12c]
add edx, ecx
mov ecx, edx
sub eax, ecx
movsx ecx, byte [rsp + 0x44]
mov edx, dword [rsp + 0x6c]
not edx
add ecx, edx
add eax, ecx
mov word [rsp + 0x4c], ax
movsx eax, word [rsp + 0x5c]
movsx ecx, word [rsp + 0x64]
movabs rdx, 0xffffffff12ca0f91
lea rcx, [rcx + rdx]
add eax, ecx
mov word [rsp + 0x64], ax
mov eax, dword [0x140371450]
mov dword [rsp + 0xc4], eax
movzx eax, word [rsp + 0x4c]
mov word [0x1401772cc], ax
mov eax, 1
imul rax, rax, 0x7f
lea rcx, [0x1403878d0]
movzx eax, byte [rcx + rax]
mov word [0x140177254], ax
mov eax, dword [rsp + 0xc4]
add eax, 0x347
mov dword [rsp + 0x454], eax
movzx eax, byte [rsp + 0x43]
movsx eax, al
cmp dword [0x14017726c], eax
je 0x14004e51b
movsx eax, byte [rsp + 0x40]
movzx ecx, word [0x140177254]
sub eax, ecx
mov byte [rsp + 0x40], al
mov byte [rsp + 0x43], 0x5d
mov eax, dword [0x140371450]
mov dword [rsp + 0x84], eax
jmp 0x14004e5ce
movzx eax, word [0x1401772d0]
cwde
test eax, eax
je 0x14004e551
mov eax, dword [0x1401772bc]
imul eax, eax, 0x7a
mov word [rsp + 0x48], ax
movsxd rax, dword [0x140177264]
movabs rcx, 0x634f88fc794fd
imul rax, rcx
mov word [rsp + 0x48], ax
jmp 0x14004e5ce
movzx eax, byte [rsp + 0x42]
movzx eax, al
movzx ecx, byte [rsp + 0x41]
imul eax, ecx
test eax, eax
je 0x14004e5ce
movzx eax, word [rsp + 0x68]
xor eax, 0x49c03414
test eax, eax
jne 0x14004e580
mov dword [rsp + 0x130], 1
jmp 0x14004e58b
mov dword [rsp + 0x130], 0
mov eax, dword [rsp + 0x78]
add eax, dword [rsp + 0x130]
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
not ecx
xor ecx, 0xe6
movzx edx, byte [0x1401771ff]
imul ecx, edx
add eax, ecx
mov dword [0x14017729c], eax
movzx eax, byte [0x14017722f]
movsx eax, al
mov ecx, dword [rsp + 0x7c]
sub eax, ecx
mov byte [0x14017722f], al
mov eax, dword [rsp + 0xc4]
add eax, 0x82
mov dword [rsp + 0x338], eax
movzx eax, word [rsp + 0x50]
movzx eax, ax
movsx ecx, word [0x140177260]
and eax, ecx
mov word [rsp + 0x50], ax
movzx eax, byte [rsp + 0x60]
mov byte [0x14017722f], al
mov eax, dword [rsp + 0xc4]
add eax, 0x2dc
mov dword [rsp + 0x334], eax
mov eax, dword [rsp + 0x6c]
mov eax, eax
movsx rcx, word [rsp + 0x60]
mov rdx, qword [rsp + 0x98]
add rcx, rdx
or rax, rcx
test rax, rax
jne 0x14004e642
mov qword [rsp + 0x410], 1
jmp 0x14004e64e
mov qword [rsp + 0x410], 0
movsx eax, byte [0x1401771a3]
test eax, eax
jne 0x14004e667
mov qword [rsp + 0x408], 1
jmp 0x14004e673
mov qword [rsp + 0x408], 0
mov rax, qword [0x140177270]
not rax
mov rcx, qword [rsp + 0x408]
imul rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x410]
sub rcx, rax
mov rax, rcx
mov byte [rsp + 0x42], al
mov eax, dword [0x140177264]
inc eax
mov dword [0x140177264], eax
movzx eax, word [rsp + 0x70]
movzx eax, ax
shl eax, 7
mov word [0x140177298], ax
mov qword [rsp + 0x398], 0
movsx eax, byte [rsp + 0x44]
test eax, eax
je 0x14004e6f6
movzx eax, byte [0x140371450]
mov byte [0x1401771ff], al
movzx eax, word [0x140177298]
dec ax
mov word [0x140177298], ax
jmp 0x14004e793
movzx eax, byte [0x14017722f]
movsx eax, al
not eax
test eax, eax
je 0x14004e793
movsx eax, word [0x14017722c]
movsx ecx, word [rsp + 0x60]
imul eax, ecx
test eax, eax
jne 0x14004e72a
mov dword [rsp + 0x134], 1
jmp 0x14004e735
mov dword [rsp + 0x134], 0
movzx eax, word [rsp + 0x54]
movsx rax, ax
imul rax, qword [0x1401772a0]
mov ecx, dword [0x140177250]
add ecx, 0xa241
movsxd rcx, ecx
sub rax, rcx
imul ecx, dword [rsp + 0x134], 0xf47e5554
mov ecx, ecx
imul rax, rcx
mov word [0x140177260], ax
movzx eax, word [0x1401772d4]
cwde
xor eax, 0x8cd0
cdqe
mov rcx, qword [0x140177278]
sub rcx, rax
mov rax, rcx
mov qword [0x140177278], rax
mov qword [rsp + 0xb0], 0
mov eax, dword [rsp + 0x13c]
imul eax, eax, 0xca
mov ecx, dword [rsp + 0x138]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x138]
mov edx, dword [rsp + 0x13c]
add ecx, edx
cmp eax, ecx
je 0x14004fc66
mov rax, qword [0x140177278]
movsx rcx, word [rsp + 0x5c]
cmp rax, rcx
jbe 0x14004e7e6
jmp 0x14004e886
movzx eax, word [rsp + 0x50]
movzx eax, ax
movzx ecx, word [rsp + 0x68]
cmp eax, ecx
jne 0x14004e804
mov dword [rsp + 0x144], 1
jmp 0x14004e80f
mov dword [rsp + 0x144], 0
mov eax, dword [rsp + 0x74]
test eax, eax
jne 0x14004e824
mov dword [rsp + 0x140], 1
jmp 0x14004e82f
mov dword [rsp + 0x140], 0
movzx eax, byte [0x1401771fe]
movsx eax, al
cmp eax, dword [rsp + 0x140]
jle 0x14004e84f
mov dword [rsp + 0x148], 1
jmp 0x14004e85a
mov dword [rsp + 0x148], 0
mov eax, dword [rsp + 0x144]
not eax
cmp eax, dword [rsp + 0x148]
jg 0x14004e886
mov eax, dword [rsp + 0x6c]
mov eax, eax
mov rcx, qword [0x1401772a8]
and rcx, rax
mov rax, rcx
mov qword [0x1401772a8], rax
movzx eax, word [rsp + 0x68]
movsx ecx, word [rsp + 0x64]
cmp eax, ecx
jg 0x14004e8b9
movzx eax, byte [0x140371450]
mov byte [rsp + 0x42], al
mov eax, dword [0x1401772c8]
imul eax, eax, 0x923fc787
mov eax, eax
mov qword [0x1401772a8], rax
jmp 0x14004e93c
movzx eax, byte [0x14017722f]
movsx eax, al
test eax, eax
je 0x14004e93c
movzx eax, word [rsp + 0x50]
movzx eax, ax
movabs rcx, 0x6b2c69aea8fe5
add rax, rcx
mov word [rsp + 0x64], ax
movzx eax, byte [0x1401771d3]
not eax
cdqe
imul rax, qword [0x1401772b0]
not rax
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
not ecx
movzx edx, byte [rsp + 0x41]
sub ecx, edx
movsxd rcx, ecx
imul rax, rcx
mov dword [rsp + 0x74], eax
movzx eax, byte [rsp + 0x41]
mov rcx, qword [rsp + 0x88]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x88]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
mov eax, dword [0x140371450]
mov dword [rsp + 0xc8], eax
movzx eax, byte [0x1401771fe]
movsx eax, al
imul eax, eax, 0xffff114f
mov byte [rsp + 0x40], al
mov byte [rsp + 0x44], 0x36
mov eax, dword [rsp + 0xc8]
add eax, 0x89
mov dword [rsp + 0x384], eax
xor ecx, ecx
call fcn.14003abb0
movsx rax, al
mov qword [0x1401772c0], rax
mov rax, qword [0x1401772c0]
test rax, rax
je 0x14004e995
jmp 0x14004e9d3
movzx eax, word [rsp + 0x58]
movzx eax, ax
test eax, eax
je 0x14004e9d3
mov rax, qword [0x140177248]
dec rax
mov qword [0x140177248], rax
movzx eax, word [0x1401772cc]
cwde
shl eax, 1
cdqe
mov qword [0x1401772a8], rax
mov eax, dword [rsp + 0x74]
add eax, dword [0x1401772d8]
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0xc8]
add eax, 0x30
mov dword [rsp + 0x458], eax
movzx eax, word [0x140177288]
movsx rax, ax
mov ecx, dword [rsp + 0x74]
mov ecx, ecx
movabs rdx, 0xfffa6a4cb808acc4
add rcx, rdx
add rax, rcx
mov dword [rsp + 0x74], eax
mov eax, dword [0x140177268]
sub eax, 0x1d7b60a8
mov word [rsp + 0x4c], ax
mov eax, dword [rsp + 0x6c]
shr eax, 5
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0xc8]
add eax, 0x44
mov dword [rsp + 0x45c], eax
mov dword [rsp + 0x30], 0x13
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x89
mov r9d, 0xd7
mov r8d, pe_nt_image_headers64
mov edx, 0xcc
mov ecx, 0xb6
call fcn.140039ab0
mov dword [0x14017729c], eax
cmp dword [0x14017729c], 0
jae 0x14004eb29
movzx eax, word [0x1401772cc]
cwde
cmp dword [0x1401772dc], eax
jne 0x14004ea9b
mov dword [rsp + 0x150], 1
jmp 0x14004eaa6
mov dword [rsp + 0x150], 0
cmp dword [0x1401772dc], 0x4e
jne 0x14004eabc
mov dword [rsp + 0x14c], 1
jmp 0x14004eac7
mov dword [rsp + 0x14c], 0
mov eax, dword [rsp + 0x14c]
cmp dword [rsp + 0x150], eax
je 0x14004eaf4
movsx eax, word [rsp + 0x5c]
sar eax, 2
cdqe
mov qword [0x140177278], rax
mov eax, 0xe5ce
mov word [rsp + 0x68], ax
jmp 0x14004eb27
mov eax, dword [0x14017726c]
sub eax, 0x7905
mov word [rsp + 0x48], ax
mov eax, dword [0x1401772dc]
add eax, 0xa121
mov word [rsp + 0x64], ax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
sub eax, 0xed
mov dword [0x1401772c8], eax
jmp 0x14004eb63
mov rax, qword [0x1401772c0]
movabs rcx, 0xed17e1717b34e
add rax, rcx
mov dword [0x140177264], eax
mov byte [0x1401771a6], 0xeb
movzx eax, byte [0x14017722b]
movzx ecx, word [0x140177288]
movsx ecx, cx
sub eax, ecx
mov byte [0x14017722b], al
mov eax, dword [rsp + 0x78]
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
cmp eax, ecx
jle 0x14004eb80
mov dword [rsp + 0x158], 1
jmp 0x14004eb8b
mov dword [rsp + 0x158], 0
mov eax, dword [rsp + 0x78]
cmp eax, 0x56
jle 0x14004eba1
mov dword [rsp + 0x154], 1
jmp 0x14004ebac
mov dword [rsp + 0x154], 0
mov eax, dword [rsp + 0x154]
cmp dword [rsp + 0x158], eax
je 0x14004ecbb
mov eax, dword [0x1401771d4]
mov ecx, dword [rsp + 0x80]
cmp eax, ecx
jb 0x14004ec78
movabs rax, 0x9958ff1bb6bc
mov rcx, qword [0x1401772a0]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
movzx eax, byte [0x14017722b]
mov ecx, dword [0x14017726c]
imul ecx, eax
mov eax, ecx
test eax, eax
jne 0x14004ec17
mov dword [rsp + 0x15c], 1
jmp 0x14004ec22
mov dword [rsp + 0x15c], 0
movzx eax, word [rsp + 0x70]
movzx eax, ax
mov ecx, dword [0x1401772c8]
imul ecx, eax
mov eax, ecx
xor eax, dword [rsp + 0x15c]
mov byte [0x1401771a6], al
movzx eax, word [0x140177254]
test eax, eax
je 0x14004ec5d
movzx eax, byte [0x140177216]
mov byte [rsp + 0x90], al
jmp 0x14004ec69
movzx eax, byte [rsp + 0x41]
mov byte [rsp + 0x90], al
movzx eax, byte [rsp + 0x90]
mov word [rsp + 0x5c], ax
jmp 0x14004ecb9
cmp qword [0x1401772a8], 0
je 0x14004ecb9
movsx eax, word [rsp + 0x60]
test eax, eax
je 0x14004ecb9
movzx eax, word [0x1401772d4]
cwde
sar eax, 1
mov dword [rsp + 0x84], eax
movzx eax, word [0x1401772b8]
mov byte [0x1401771a7], al
mov eax, dword [0x140177250]
sub eax, 0x7fcc
mov word [rsp + 0x58], ax
jmp 0x14004ed17
movzx eax, word [rsp + 0x68]
movzx ecx, word [rsp + 0x70]
movzx ecx, cx
cmp eax, ecx
jl 0x14004ed17
movzx eax, word [0x1401772cc]
cwde
add eax, 0x52
mov byte [0x1401771a3], al
movzx eax, word [rsp + 0x54]
cwde
add eax, 0x6c4d
mov byte [0x14017722f], al
mov eax, dword [0x1401772c8]
mov eax, eax
movabs rcx, 0x8d0ec6d596cf9
add rax, rcx
mov rcx, qword [0x140177270]
add rcx, rax
mov rax, rcx
mov qword [0x140177270], rax
mov eax, dword [rsp + 0x384]
add eax, 0x23b
mov dword [rsp + 0x318], eax
movzx eax, word [rsp + 0x48]
cwde
movzx ecx, word [rsp + 0x50]
movzx ecx, cx
add eax, ecx
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x48], ax
movsx rax, word [rsp + 0x5c]
movsxd rcx, dword [0x1401772dc]
movabs rdx, 0xfff5229a331fb812
add rcx, rdx
add rax, rcx
mov dword [0x1401772dc], eax
movzx eax, word [0x14017728c]
mov word [rsp + 0x48], ax
mov eax, dword [0x140371450]
mov dword [rsp + 0xcc], eax
movzx eax, word [0x1401772d4]
cwde
imul eax, eax, 0x5c
mov word [0x14017722c], ax
movsx eax, byte [rsp + 0x40]
movsx ecx, word [0x140177260]
xor eax, ecx
imul eax, eax, 0xf170
not eax
mov dword [rsp + 0x80], eax
movsx eax, byte [rsp + 0x44]
movsx ecx, word [rsp + 0x64]
mov edx, dword [rsp + 0x6c]
add ecx, edx
not ecx
imul eax, ecx
mov word [rsp + 0x64], ax
mov eax, dword [rsp + 0xcc]
add eax, 0xb516
mov dword [rsp + 0x460], eax
movzx eax, byte [rsp + 0x41]
sub rax, qword [0x140177280]
mov byte [rsp + 0x41], al
movzx eax, word [rsp + 0x4c]
movzx eax, ax
movzx ecx, word [rsp + 0x70]
movzx ecx, cx
imul eax, ecx
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x4c], ax
mov eax, dword [rsp + 0xcc]
add eax, 0xc1fe
mov dword [rsp + 0x464], eax
movsx eax, word [0x140177260]
test eax, eax
je 0x14004ee37
jmp 0x14004ee55
movzx eax, word [0x1401772cc]
mov byte [rsp + 0x40], al
movzx eax, byte [0x1401771a7]
movsx eax, al
shl eax, 8
mov byte [0x140177216], al
mov eax, dword [rsp + 0xcc]
add eax, 0x7f
mov dword [rsp + 0x380], eax
movzx eax, byte [0x1401771d3]
xor eax, 0x3112
cdqe
mov qword [0x140177290], rax
movzx eax, word [rsp + 0x58]
movzx eax, ax
movabs rcx, 0xfd17555167e01
sub rax, rcx
mov dword [rsp + 0x6c], eax
movzx r8d, byte [rsp + 0x42]
mov dl, 0xb9
mov cl, 9
call fcn.14003a5d0
movzx eax, al
mov word [0x14017722c], ax
movsx eax, word [0x14017722c]
test eax, eax
je 0x14004eeff
movsx eax, word [0x14017722c]
test eax, eax
jne 0x14004eed0
mov dword [rsp + 0x160], 1
jmp 0x14004eedb
mov dword [rsp + 0x160], 0
movsx eax, word [rsp + 0x64]
mov ecx, dword [rsp + 0x160]
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x43], al
mov qword [0x140177278], 0x2f20
jmp 0x14004f029
movzx eax, word [0x1401772cc]
cwde
not eax
mov ecx, dword [0x1401772bc]
cmp eax, ecx
jle 0x14004ef39
movsx eax, word [rsp + 0x5c]
movzx ecx, byte [0x140177216]
sub eax, ecx
mov word [rsp + 0x5c], ax
movsx eax, word [rsp + 0x64]
add eax, 0x8e6a
mov byte [rsp + 0x40], al
jmp 0x14004f029
movsx eax, byte [rsp + 0x44]
movzx ecx, byte [0x1401771a7]
movsx ecx, cl
cmp eax, ecx
jl 0x14004ef55
movsx eax, byte [rsp + 0x40]
test eax, eax
je 0x14004efcd
movzx eax, byte [0x1401771d3]
test eax, eax
je 0x14004ef72
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x418], rax
jmp 0x14004ef81
mov rax, qword [0x1401772b0]
mov qword [rsp + 0x418], rax
movzx eax, byte [rsp + 0x418]
mov byte [rsp + 0x43], al
movzx eax, word [rsp + 0x50]
movzx eax, ax
mov rcx, qword [0x140177280]
add rcx, rax
mov rax, rcx
mov rcx, qword [0x140177280]
and rcx, rax
mov rax, rcx
mov qword [0x140177280], rax
mov eax, dword [0x1401772bc]
cdqe
add rax, qword [rsp + 0x88]
mov word [rsp + 0x5c], ax
jmp 0x14004f029
movzx eax, byte [0x1401771ff]
test eax, eax
je 0x14004f029
mov eax, 2
imul rax, rax, 0xdd6c
lea rcx, [0x1404f93f0]
movzx eax, word [rcx + rax]
mov ecx, dword [rsp + 0x84]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x84], eax
mov eax, 1
imul rax, rax, 0x63a
lea rcx, [0x14045b940]
movzx eax, byte [rcx + rax]
movzx ecx, word [rsp + 0x54]
movsx ecx, cx
or ecx, eax
mov eax, ecx
mov word [rsp + 0x54], ax
mov eax, dword [rsp + 0x380]
mov ecx, dword [rsp + 0xa0]
mov edx, dword [rsp + 0xa0]
mov edi, dword [rsp + 0xa0]
sub edx, edi
lea ecx, [rcx + rdx + 0x28d]
mov edx, dword [rsp + 0xa0]
mov edi, dword [rsp + 0xa0]
sub edx, edi
mov edi, dword [rsp + 0xa0]
mov esi, dword [rsp + 0x308]
imul edi, esi
imul edx, edi
imul ecx, edx
lea eax, [rax + rcx + 0x13e]
mov dword [rsp + 0x31c], eax
mov rax, qword [0x1401772a8]
add rax, 0x9459
mov byte [0x1401771a7], al
mov eax, dword [rsp + 0x7c]
cdqe
mov qword [0x1401772a8], rax
mov eax, dword [0x140371450]
mov dword [rsp + 0xd0], eax
mov eax, dword [0x140371450]
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x74]
mov eax, eax
mov rcx, qword [0x140177248]
imul rax, rcx
mov ecx, dword [rsp + 0x74]
mov ecx, ecx
add rcx, rax
mov rax, rcx
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0xd0]
add eax, 0xd5
mov dword [rsp + 0x468], eax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
mov rcx, qword [0x140177248]
sub rax, rcx
test rax, rax
jne 0x14004f112
mov dword [rsp + 0x164], 1
jmp 0x14004f11d
mov dword [rsp + 0x164], 0
movzx eax, byte [0x14017722f]
movsx eax, al
mov ecx, dword [0x140177264]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x74]
sub ecx, dword [0x14017729c]
imul eax, ecx
mov ecx, dword [rsp + 0x164]
imul ecx, eax
mov eax, ecx
mov byte [0x1401771a6], al
mov eax, dword [rsp + 0x80]
shr eax, 8
mov word [0x1401772b8], ax
mov eax, dword [rsp + 0xd0]
add eax, 0xf0c1
mov dword [rsp + 0x30c], eax
movsx eax, byte [rsp + 0x40]
test eax, eax
je 0x14004f1f6
movzx eax, word [0x1401772cc]
cwde
test eax, eax
je 0x14004f1bb
movzx eax, byte [rsp + 0x42]
movzx eax, al
mov rcx, qword [0x1401772c0]
sub rax, rcx
movzx ecx, byte [rsp + 0x42]
movzx ecx, cl
sub rcx, rax
mov rax, rcx
mov byte [rsp + 0x42], al
mov eax, dword [0x140371450]
mov dword [0x1401772c8], eax
jmp 0x14004f1f6
mov eax, dword [rsp + 0x6c]
test eax, eax
je 0x14004f1f6
mov eax, dword [0x14017729c]
sub eax, 0xabae
mov byte [0x1401771a3], al
movzx eax, byte [0x140177216]
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
add eax, ecx
movzx ecx, byte [0x140177216]
add ecx, eax
mov eax, ecx
mov byte [0x140177216], al
mov eax, dword [rsp + 0xd0]
add eax, 0x6d
mov dword [rsp + 0x4b0], eax
movzx eax, byte [0x1401771fe]
movsx eax, al
test eax, eax
jne 0x14004f222
mov dword [rsp + 0x168], 1
jmp 0x14004f22d
mov dword [rsp + 0x168], 0
movzx eax, word [0x140177254]
sub eax, dword [rsp + 0x168]
cdqe
sub rax, qword [0x1401772a0]
test rax, rax
jne 0x14004f256
mov dword [rsp + 0x170], 1
jmp 0x14004f261
mov dword [rsp + 0x170], 0
mov eax, dword [rsp + 0x78]
test eax, eax
jne 0x14004f276
mov dword [rsp + 0x16c], 1
jmp 0x14004f281
mov dword [rsp + 0x16c], 0
movzx eax, word [rsp + 0x50]
movzx eax, ax
mov ecx, dword [rsp + 0x74]
sub eax, ecx
sub eax, dword [rsp + 0x16c]
mov ecx, dword [rsp + 0x170]
imul ecx, eax
mov eax, ecx
test eax, eax
jne 0x14004f2b5
mov eax, 1
mov word [rsp + 0xaa], ax
jmp 0x14004f2bf
xor eax, eax
mov word [rsp + 0xaa], ax
movzx eax, word [rsp + 0xaa]
mov word [rsp + 0x48], ax
movsx rax, word [rsp + 0x60]
movabs rcx, 0x8dd5ebad5a188
add rax, rcx
mov dword [rsp + 0x78], eax
mov rax, qword [0x1401772c0]
mov ecx, 8
imul rcx, rcx, 0x2245
lea rdx, [0x1403879d0]
mov qword [rdx + rcx], rax
mov eax, dword [rsp + 0x30c]
xor eax, 0x48
sub eax, 0xef7c
mov dword [rsp + 0x320], eax
movsx rax, word [rsp + 0x5c]
cmp qword [rsp + 0x88], rax
je 0x14004f334
mov dword [rsp + 0x178], 1
jmp 0x14004f33f
mov dword [rsp + 0x178], 0
cmp qword [rsp + 0x88], 0x33
je 0x14004f357
mov dword [rsp + 0x174], 1
jmp 0x14004f362
mov dword [rsp + 0x174], 0
mov eax, dword [rsp + 0x174]
cmp dword [rsp + 0x178], eax
je 0x14004f381
mov byte [rsp + 0x40], 0xd
mov dword [rsp + 0x6c], 0xee
jmp 0x14004f3d4
movsx eax, word [rsp + 0x5c]
mov ecx, dword [rsp + 0x74]
sub eax, ecx
movsx ecx, word [rsp + 0x5c]
add ecx, eax
mov eax, ecx
mov word [rsp + 0x5c], ax
movzx eax, word [0x14017725c]
cwde
test eax, eax
je 0x14004f3b5
movzx eax, word [rsp + 0x48]
mov word [rsp + 0xa8], ax
jmp 0x14004f3c4
movzx eax, word [0x1401772b8]
mov word [rsp + 0xa8], ax
movsx rax, word [rsp + 0xa8]
mov qword [0x140177270], rax
mov eax, dword [0x140371450]
mov dword [rsp + 0xd4], eax
mov cl, 0xed
call fcn.14003abb0
movsx ax, al
mov word [rsp + 0x60], ax
movsx eax, word [rsp + 0x60]
test eax, eax
je 0x14004f41f
movzx eax, byte [rsp + 0x41]
movabs rcx, 0xb36ae3f812c3a
xor rax, rcx
mov word [0x1401772d0], ax
mov eax, 0xfffff90f
mov word [rsp + 0x54], ax
jmp 0x14004f495
movzx eax, byte [str.ORtlGetDeviceFamily]
test eax, eax
jne 0x14004f438
mov qword [rsp + 0x420], 1
jmp 0x14004f444
mov qword [rsp + 0x420], 0
mov rax, qword [0x140177270]
sub rax, qword [rsp + 0x420]
test rax, rax
jne 0x14004f462
mov byte [rsp + 0x91], 1
jmp 0x14004f46a
mov byte [rsp + 0x91], 0
movzx eax, byte [rsp + 0x91]
mov byte [0x1401771d3], al
movabs rax, 0x463235949fbc6
mov rcx, qword [0x1401772a0]
sub rcx, rax
mov rax, rcx
mov dword [0x14017726c], eax
mov eax, dword [rsp + 0xd4]
add eax, 0x895
mov dword [rsp + 0x314], eax
lea rax, [rsp + 0x500]
lea rcx, str.ds_ext_aad_aadclou
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x500]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [0x140177250], eax
mov eax, dword [rsp + 0xd4]
add eax, 0x5014
mov dword [rsp + 0x310], eax
movzx eax, byte [0x1401771fe]
movsx eax, al
test eax, eax
je 0x14004f586
movzx eax, byte [0x14017722b]
test eax, eax
jne 0x14004f531
movzx eax, byte [rsp + 0x41]
mov rcx, qword [0x140177278]
sub rcx, rax
mov rax, rcx
mov qword [0x140177278], rax
movzx eax, word [0x140371450]
mov word [0x14017725c], ax
jmp 0x14004f584
cmp dword [0x14017726c], 0
je 0x14004f54b
movzx eax, word [0x140177260]
mov word [rsp + 0xa6], ax
jmp 0x14004f558
movzx eax, word [rsp + 0x60]
mov word [rsp + 0xa6], ax
movzx eax, byte [rsp + 0xa6]
mov byte [0x1401771d3], al
movzx eax, word [0x14017728c]
movzx eax, ax
movzx ecx, byte [0x1401771ff]
lea eax, [rcx + rax - 0xf6ea]
mov byte [0x1401771ff], al
jmp 0x14004f5f3
xor eax, eax
cmp eax, 0xb7e0e1cf
je 0x14004f5f3
movzx eax, word [rsp + 0x4c]
movzx eax, ax
test eax, eax
jne 0x14004f5f3
mov eax, dword [rsp + 0x78]
add eax, dword [0x1401772dc]
movzx ecx, word [0x140177288]
movsx ecx, cx
not ecx
sub eax, ecx
mov byte [0x1401771ff], al
mov eax, 8
imul rax, rax, 0x4153
lea rcx, [0x14042ec70]
movsx rdx, byte [0x1401771a3]
add rdx, qword [rcx + rax]
mov rax, rdx
mov byte [0x1401771a3], al
movsx eax, word [0x140177298]
sub eax, 0xa7
mov dword [0x140177264], eax
mov eax, dword [rsp + 0xd4]
add eax, 0xe75
mov dword [rsp + 0x4a8], eax
xor r8d, r8d
mov edx, dword [rsp + 0x6c]
xor ecx, ecx
call fcn.14003a2b0
mov eax, eax
mov qword [0x140177278], rax
mov rax, qword [0x140177278]
test rax, rax
jbe 0x14004f773
movzx eax, word [0x14017728c]
movzx eax, ax
cmp dword [0x1401772dc], eax
jl 0x14004f64c
mov dword [rsp + 0x180], 1
jmp 0x14004f657
mov dword [rsp + 0x180], 0
cmp dword [0x1401772dc], 0x25
jl 0x14004f66d
mov dword [rsp + 0x17c], 1
jmp 0x14004f678
mov dword [rsp + 0x17c], 0
mov eax, dword [rsp + 0x17c]
cmp dword [rsp + 0x180], eax
jg 0x14004f741
movzx eax, word [rsp + 0x4c]
movzx eax, ax
sub rax, qword [0x1401772a0]
mov word [rsp + 0x4c], ax
movsx eax, word [rsp + 0x5c]
test eax, eax
jne 0x14004f6b7
mov qword [rsp + 0x428], 1
jmp 0x14004f6c3
mov qword [rsp + 0x428], 0
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x428]
add rcx, rax
mov rax, rcx
mov ecx, dword [rsp + 0x7c]
not ecx
xor ecx, 0xd3
movsxd rcx, ecx
imul rax, rcx
test rax, rax
jne 0x14004f6ff
mov qword [rsp + 0x430], 1
jmp 0x14004f70b
mov qword [rsp + 0x430], 0
movzx eax, byte [rsp + 0x42]
movzx eax, al
mov ecx, dword [0x1401772bc]
add ecx, eax
mov eax, ecx
cdqe
mov rcx, qword [0x140177278]
add rax, rcx
mov rcx, qword [rsp + 0x430]
imul rcx, rax
mov rax, rcx
mov word [0x14017722c], ax
jmp 0x14004f76e
mov rax, qword [0x140177278]
movabs rcx, 0xc3feba3e0fbb2
add rax, rcx
mov dword [0x14017729c], eax
movsx eax, byte [rsp + 0x40]
sub eax, 0xb9912e63
mov eax, eax
mov qword [0x140177280], rax
jmp 0x14004f821
mov rax, qword [rsp + 0x88]
not rax
movzx ecx, byte [rsp + 0x42]
movzx ecx, cl
cmp rax, rcx
jg 0x14004f7a7
movsx rax, word [0x14017722c]
movabs rcx, 0x48d13471bc941
imul rax, rcx
mov dword [rsp + 0x7c], eax
jmp 0x14004f821
movabs rax, 0x4733c6ab61c25
xor ecx, ecx
cmp rcx, rax
je 0x14004f7e7
movzx eax, word [0x140177254]
add eax, 0xb8
movzx ecx, byte [str.__._AV__JsonPrimitiv]
movsx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [str.__._AV__JsonPrimitiv], al
movzx eax, word [0x1401772b8]
mov byte [0x1401771fe], al
jmp 0x14004f821
movabs rax, 0xfffea016fe0e3c51
xor ecx, ecx
cmp rcx, rax
je 0x14004f821
movsx eax, word [rsp + 0x5c]
xor ecx, ecx
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x42], al
movsx eax, word [0x140177298]
mov ecx, dword [rsp + 0x80]
imul ecx, eax
mov eax, ecx
mov dword [rsp + 0x80], eax
movsx eax, word [rsp + 0x5c]
movzx ecx, byte [rsp + 0x41]
cmp eax, ecx
jne 0x14004f84d
mov rax, qword [0x1401772b0]
xor rax, 0xe4c5
mov word [rsp + 0x68], ax
movzx eax, word [rsp + 0x60]
mov word [rsp + 0x58], ax
jmp 0x14004f8b6
cmp qword [0x140177290], 0
jne 0x14004f864
mov dword [rsp + 0x184], 1
jmp 0x14004f86f
mov dword [rsp + 0x184], 0
movzx eax, word [0x1401772d0]
cwde
cmp eax, dword [rsp + 0x184]
jne 0x14004f8b6
movzx eax, word [rsp + 0x48]
cwde
mov dword [0x140177268], eax
movzx eax, byte [0x140177216]
not eax
movsx ecx, word [0x14017722c]
xor ecx, dword [0x1401772d8]
add eax, ecx
movzx ecx, word [0x14017728c]
movzx ecx, cx
xor eax, ecx
mov dword [0x14017726c], eax
mov eax, dword [rsp + 0x310]
mov ecx, dword [rsp + 0x314]
xor eax, ecx
mov ecx, 0x5a06
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x328], eax
cmp qword [rsp + 0x590], 0
je 0x14004f8ff
cmp qword [rsp + 0x598], 0
je 0x14004f8ff
mov rax, qword [rsp + 0x598]
movsx eax, byte [rax]
test eax, eax
jne 0x14004fc66
mov qword [0x1401772b0], 0xc33a
movzx eax, word [0x14017725c]
cwde
sar eax, 8
mov byte [rsp + 0x40], al
movzx eax, word [rsp + 0x54]
movsx rax, ax
mov rcx, qword [rsp + 0x88]
xor rcx, rax
mov rax, rcx
mov byte [0x14017722b], al
movzx eax, word [0x14017728c]
movzx eax, ax
mov ecx, dword [0x140177268]
add ecx, eax
mov eax, ecx
mov dword [0x140177268], eax
mov eax, dword [0x140371450]
mov dword [rsp + 0xd8], eax
movzx eax, byte [0x14017722f]
movsx eax, al
test eax, eax
je 0x14004faef
movsx rax, byte [0x1401771a3]
cmp rax, qword [0x1401772a0]
jne 0x14004f98d
mov dword [rsp + 0x18c], 1
jmp 0x14004f998
mov dword [rsp + 0x18c], 0
movsx eax, byte [0x1401771a3]
cmp eax, 2
jne 0x14004f9b1
mov dword [rsp + 0x188], 1
jmp 0x14004f9bc
mov dword [rsp + 0x188], 0
mov eax, dword [rsp + 0x188]
cmp dword [rsp + 0x18c], eax
jl 0x14004f9f7
movzx eax, word [rsp + 0x60]
inc ax
mov word [rsp + 0x60], ax
mov eax, 4
imul rax, rax, 0x2a
lea rcx, [0x140473310]
movzx eax, word [rcx + rax]
mov word [rsp + 0x48], ax
jmp 0x14004faef
cmp dword [0x140177268], 0
jne 0x14004fa08
mov eax, dword [rsp + 0x6c]
test eax, eax
je 0x14004fa63
movzx eax, word [rsp + 0x68]
test eax, eax
je 0x14004fa21
movzx eax, word [0x140177258]
mov dword [rsp + 0x190], eax
jmp 0x14004fa2d
movzx eax, byte [rsp + 0x41]
mov dword [rsp + 0x190], eax
movzx eax, word [rsp + 0x190]
mov word [rsp + 0x64], ax
movsx eax, word [rsp + 0x64]
add eax, dword [0x1401772d8]
movsx ecx, word [rsp + 0x64]
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x64], ax
mov qword [0x1401772b0], 0x68
jmp 0x14004faef
movzx eax, word [0x140177254]
not eax
mov ecx, dword [0x1401772dc]
not ecx
cmp eax, ecx
jle 0x14004fa85
mov dword [rsp + 0x194], 1
jmp 0x14004fa90
mov dword [rsp + 0x194], 0
mov eax, dword [rsp + 0x194]
not eax
test eax, eax
je 0x14004faef
movzx eax, word [rsp + 0x58]
movzx eax, ax
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
add eax, ecx
cdqe
mov qword [0x140177248], rax
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
je 0x14004fad3
mov rax, qword [0x1401772a8]
mov qword [rsp + 0x438], rax
jmp 0x14004fae1
movsx rax, byte [rsp + 0x40]
mov qword [rsp + 0x438], rax
movzx eax, byte [rsp + 0x438]
mov byte [str.ORtlGetDeviceFamily], al
mov eax, dword [rsp + 0x318]
mov ecx, dword [rsp + 0xd8]
add eax, ecx
mov dword [rsp + 0x324], eax
movzx eax, word [0x1401772d0]
cwde
mov ecx, dword [0x140177250]
xor eax, ecx
mov word [0x1401772d0], ax
mov eax, dword [rsp + 0x6c]
mov eax, eax
mov rcx, qword [0x140177280]
lea rax, [rax + rcx + 0x5a5e]
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x31c]
mov ecx, dword [rsp + 0xd8]
add eax, ecx
mov dword [rsp + 0x4a4], eax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
mov ecx, dword [rsp + 0x74]
imul eax, ecx
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x4c], ax
movzx eax, byte [0x14017722f]
movsx rax, al
mov rcx, qword [0x1401772a8]
add rcx, rax
mov rax, rcx
mov rcx, qword [0x1401772a8]
or rcx, rax
mov rax, rcx
mov qword [0x1401772a8], rax
movzx eax, word [rsp + 0x48]
cwde
sar eax, 7
mov byte [str.ORtlGetDeviceFamily], al
mov eax, dword [rsp + 0x320]
mov ecx, dword [rsp + 0xd8]
add eax, ecx
mov dword [rsp + 0x32c], eax
mov eax, dword [rsp + 0x324]
mov ecx, dword [rsp + 0x328]
mov edx, dword [rsp + 0x32c]
xor ecx, edx
cmp eax, ecx
je 0x14004fc66
movzx eax, word [0x1401772d4]
movsx rax, ax
cmp rax, qword [rsp + 0x88]
jle 0x14004fc59
mov byte [rsp + 0x20], 0xda
mov r9b, 0xa8
mov r8b, 0x1a
movzx edx, byte [0x1401772d8]
movzx ecx, byte [0x1401772a8]
call fcn.140038570
mov byte [str.ORtlGetDeviceFamily], al
movzx eax, byte [str.ORtlGetDeviceFamily]
test eax, eax
jne 0x14004fc59
movsx rax, byte [rsp + 0x44]
mov rcx, qword [0x1401772a8]
sub rcx, rax
mov rax, rcx
mov qword [0x1401772a8], rax
movzx eax, word [rsp + 0x54]
movsx rax, ax
mov rcx, qword [0x1401772b0]
lea rax, [rax + rcx - 0xae7a]
mov word [rsp + 0x54], ax
mov rax, qword [rsp + 0x590]
jmp 0x140052e5a
xor edx, edx
mov ecx, 0x3c
call fcn.140038240
mov word [rsp + 0x58], ax
movzx eax, word [rsp + 0x58]
movzx eax, ax
test eax, eax
jne 0x14004fd5d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.14003a2b0
mov word [rsp + 0x4c], ax
mov eax, dword [rsp + 0x80]
test eax, eax
je 0x14004fcae
movzx eax, byte [0x1401771ff]
test eax, eax
je 0x14004fcb3
jmp 0x14004fd5b
movzx eax, word [rsp + 0x54]
cwde
test eax, eax
je 0x14004fd5b
movzx eax, word [0x14017728c]
movzx eax, ax
movabs rcx, 0x7bfccbaaf89fc
xor rax, rcx
mov word [rsp + 0x48], ax
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov ecx, dword [0x14017729c]
xor ecx, eax
mov eax, ecx
mov ecx, dword [0x14017729c]
sub ecx, eax
mov eax, ecx
mov dword [0x14017729c], eax
cmp dword [0x1401772d8], 0
jne 0x14004fd15
mov dword [rsp + 0x198], 1
jmp 0x14004fd20
mov dword [rsp + 0x198], 0
movzx eax, word [rsp + 0x50]
movzx eax, ax
movzx ecx, word [0x1401772d4]
movsx ecx, cx
mov edx, dword [0x1401772c8]
sub edx, ecx
mov ecx, edx
and eax, ecx
mov ecx, dword [0x14017729c]
mov edx, dword [rsp + 0x198]
sub edx, ecx
mov ecx, edx
mov edx, dword [rsp + 0x7c]
sub ecx, edx
add eax, ecx
mov byte [rsp + 0x44], al
jmp 0x14004fdb1
movsx eax, byte [rsp + 0x40]
movzx ecx, word [0x1401772cc]
movsx ecx, cx
cmp eax, ecx
jg 0x14004fd7d
mov dword [rsp + 0x19c], 1
jmp 0x14004fd88
mov dword [rsp + 0x19c], 0
movzx eax, byte [0x1401771a6]
cmp eax, dword [rsp + 0x19c]
jle 0x14004fdb1
movzx eax, word [rsp + 0x68]
movabs rcx, 0xc1423ea4a8efa
sub rax, rcx
mov qword [0x1401772a8], rax
mov rax, qword [rsp + 0x598]
mov qword [rsp + 0x4b8], rax
mov qword [rsp + 0x300], 0xffffffffffffffff
inc qword [rsp + 0x300]
mov rax, qword [rsp + 0x4b8]
mov rcx, qword [rsp + 0x300]
cmp byte [rax + rcx], 0
jne 0x14004fdcd
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0x398], rax
movzx eax, byte [str.ORtlGetDeviceFamily]
test eax, eax
je 0x14004fe35
cmp qword [0x140177280], 0
je 0x14004fe33
movzx eax, byte [0x1401771d3]
xor eax, 0x33212393
mov byte [str.ORtlGetDeviceFamily], al
mov eax, dword [rsp + 0x74]
mov ecx, dword [rsp + 0x84]
sub eax, ecx
mov dword [rsp + 0x74], eax
jmp 0x14004fe63
movzx eax, word [rsp + 0x48]
cwde
mov ecx, dword [rsp + 0x80]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x80], eax
movzx eax, word [0x140177288]
cwde
add eax, 0xb088
cdqe
mov qword [0x1401772b0], rax
mov qword [rsp + 0x2f8], 0
jmp 0x14004fe84
mov rax, qword [rsp + 0x2f8]
inc rax
mov qword [rsp + 0x2f8], rax
mov rax, qword [rsp + 0x2f8]
mov rcx, qword [rsp + 0x590]
add rcx, rax
mov rax, rcx
movsx eax, byte [rax]
test eax, eax
je 0x140052df6
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
jne 0x14004febc
mov dword [rsp + 0x1a0], 1
jmp 0x14004fec7
mov dword [rsp + 0x1a0], 0
movzx eax, byte [rsp + 0x43]
movsx eax, al
test eax, eax
jne 0x14004fee1
mov qword [rsp + 0x3a0], 1
jmp 0x14004feed
mov qword [rsp + 0x3a0], 0
mov rax, qword [0x140177280]
not rax
movzx ecx, word [rsp + 0x48]
movsx rcx, cx
imul rax, rcx
movsx ecx, byte [0x1401771a3]
add ecx, dword [rsp + 0x1a0]
movsxd rcx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x3a0]
imul rdx, rcx
mov rcx, rdx
movzx edx, byte [rsp + 0x42]
movzx edx, dl
not edx
movsxd rdx, edx
xor rcx, rdx
sub rax, rcx
mov qword [rsp + 0x98], rax
movzx eax, word [rsp + 0x48]
cwde
sub eax, dword [0x140177264]
mov word [rsp + 0x48], ax
mov cl, 0xf7
call fcn.140038d10
movzx eax, al
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x7c]
test eax, eax
jge 0x14004ff7e
mov dword [rsp + 0x1a8], 1
jmp 0x14004ff89
mov dword [rsp + 0x1a8], 0
mov eax, dword [rsp + 0x7c]
cmp eax, 0x33
jge 0x14004ff9f
mov dword [rsp + 0x1a4], 1
jmp 0x14004ffaa
mov dword [rsp + 0x1a4], 0
mov eax, dword [rsp + 0x1a4]
cmp dword [rsp + 0x1a8], eax
jle 0x1400500c6
mov edx, 0x74
xor ecx, ecx
call fcn.140038240
mov byte [rsp + 0x41], al
movzx eax, byte [rsp + 0x41]
test eax, eax
jle 0x14004ffe4
mov dword [rsp + 0x1b0], 1
jmp 0x14004ffef
mov dword [rsp + 0x1b0], 0
movzx eax, byte [rsp + 0x41]
cmp eax, 0x1b
jle 0x140050006
mov dword [rsp + 0x1ac], 1
jmp 0x140050011
mov dword [rsp + 0x1ac], 0
mov eax, dword [rsp + 0x1ac]
cmp dword [rsp + 0x1b0], eax
jg 0x140050061
mov eax, dword [0x14017726c]
sar eax, 5
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x84]
cdqe
mov rcx, qword [0x140177280]
not rcx
imul rax, rcx
movsx ecx, word [rsp + 0x60]
movsx edx, word [0x140177298]
sub ecx, edx
movsxd rcx, ecx
sub rax, rcx
mov byte [0x1401771ff], al
jmp 0x1400500c4
movzx eax, word [rsp + 0x4c]
movzx eax, ax
cmp qword [rsp + 0x88], rax
jg 0x140050080
mov dword [rsp + 0x1b4], 1
jmp 0x14005008b
mov dword [rsp + 0x1b4], 0
mov eax, dword [rsp + 0x1b4]
not eax
test eax, eax
je 0x1400500c4
movzx eax, word [0x140177260]
inc ax
mov word [0x140177260], ax
mov eax, dword [0x14017729c]
movabs rcx, 0x4d3c083c3f2f4
imul rax, rcx
mov word [0x1401772cc], ax
jmp 0x14005012b
movsx eax, word [0x14017722c]
not eax
cdqe
cmp qword [0x1401772a0], rax
jg 0x14005012b
mov eax, dword [rsp + 0x6c]
shr eax, 8
mov byte [rsp + 0x40], al
movzx eax, word [0x1401772d4]
cwde
mov ecx, dword [rsp + 0x7c]
add eax, ecx
mov word [0x1401772d4], ax
mov eax, dword [rsp + 0x74]
test eax, eax
je 0x140050110
movzx eax, byte [rsp + 0x41]
mov dword [rsp + 0x1b8], eax
jmp 0x14005011f
movzx eax, word [0x1401772b8]
cwde
mov dword [rsp + 0x1b8], eax
movzx eax, byte [rsp + 0x1b8]
mov byte [rsp + 0x44], al
mov eax, dword [0x140371450]
mov dword [rsp + 0xdc], eax
movzx eax, word [rsp + 0x50]
movzx eax, ax
test eax, eax
je 0x140050146
jmp 0x14005017e
mov eax, dword [0x140177250]
movzx ecx, word [rsp + 0x70]
movzx ecx, cx
cmp eax, ecx
jle 0x14005017e
movzx eax, word [0x14017728c]
movzx eax, ax
xor eax, 0xe9
cdqe
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
mov word [0x140177260], ax
mov eax, dword [rsp + 0xdc]
add eax, 0x2b1
mov dword [rsp + 0x1c0], eax
mov eax, dword [rsp + 0x84]
cdqe
mov ecx, dword [rsp + 0x7c]
movsxd rcx, ecx
movabs rdx, 0xfff18e5266cb928b
add rcx, rdx
add rax, rcx
mov dword [rsp + 0x7c], eax
movzx eax, byte [0x1401771a6]
movabs rcx, 0x8246269f89b4f
sub rax, rcx
mov rcx, qword [0x140177280]
sub rcx, rax
mov rax, rcx
mov qword [0x140177280], rax
mov eax, dword [rsp + 0xdc]
add eax, 0xb9
mov dword [rsp + 0x4a0], eax
mov rax, qword [0x1401772c0]
test rax, rax
je 0x140050237
movzx eax, word [rsp + 0x48]
cwde
mov ecx, dword [0x1401772bc]
cmp eax, ecx
jg 0x140050235
movzx eax, word [0x1401772b8]
movsx rax, ax
mov qword [0x1401772a0], rax
movzx eax, byte [0x1401771ff]
imul eax, eax, 0x5fc0
cdqe
mov qword [rsp + 0x88], rax
jmp 0x14005026a
movsx eax, byte [0x1401771a3]
movzx ecx, byte [0x140177216]
xor eax, ecx
mov byte [0x1401771a3], al
movzx eax, word [rsp + 0x4c]
movzx eax, ax
sub eax, 0xce707b16
mov word [rsp + 0x5c], ax
movzx eax, byte [rsp + 0x44]
mov byte [0x1401771ff], al
mov eax, dword [rsp + 0xdc]
add eax, 0x2d
mov dword [rsp + 0x1bc], eax
mov eax, dword [rsp + 0x1bc]
mov ecx, dword [rsp + 0x1c0]
sub eax, ecx
mov ecx, dword [rsp + 0x1bc]
mov edx, dword [rsp + 0x1c0]
sub ecx, edx
cmp eax, ecx
jne 0x140052df1
mov eax, dword [rsp + 0x6c]
test eax, eax
je 0x1400502c4
movzx eax, word [rsp + 0x58]
movzx eax, ax
test eax, eax
je 0x1400502c4
mov dword [rsp + 0x1c4], 1
jmp 0x1400502cf
mov dword [rsp + 0x1c4], 0
mov eax, dword [rsp + 0x1c4]
not eax
test eax, eax
je 0x140050336
movzx eax, byte [0x1401771ff]
cmp dword [0x14017729c], eax
jne 0x140050336
mov eax, dword [rsp + 0x80]
add eax, 0xe51e
mov eax, eax
mov qword [0x140177270], rax
mov eax, dword [rsp + 0x84]
add eax, 0xb6
mov word [rsp + 0x58], ax
movzx eax, word [rsp + 0x58]
movzx eax, ax
movzx ecx, word [0x1401772d0]
movsx ecx, cx
add eax, ecx
movzx ecx, word [rsp + 0x58]
movzx ecx, cx
add ecx, eax
mov eax, ecx
mov word [rsp + 0x58], ax
movzx eax, byte [0x1401771a7]
movsx eax, al
cmp eax, dword [0x140177268]
jl 0x140050364
movzx eax, word [0x140371450]
mov word [rsp + 0x68], ax
movsx eax, byte [rsp + 0x40]
sub eax, 0xaa
mov byte [0x1401771a3], al
mov eax, dword [0x140371450]
mov dword [rsp + 0xe0], eax
mov eax, 8
imul rax, rax, 0x8516
lea rcx, [0x14047b1d0]
mov edx, dword [0x1401772bc]
movsxd rdx, edx
add rdx, qword [rcx + rax]
mov rax, rdx
mov dword [0x1401772bc], eax
movzx eax, byte [rsp + 0x41]
sub eax, 0x5892b271
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x80]
sub eax, 0xe7
mov word [rsp + 0x60], ax
mov eax, dword [rsp + 0xe0]
add eax, 0x3b3
mov dword [rsp + 0x2a4], eax
movzx eax, word [0x140371450]
mov word [rsp + 0x60], ax
movsx eax, word [rsp + 0x5c]
sar eax, 1
mov word [0x140177260], ax
mov eax, dword [rsp + 0xe0]
add eax, 0x12d
mov dword [rsp + 0x49c], eax
mov eax, dword [0x1401772d8]
shr eax, 7
mov dword [rsp + 0x6c], eax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
sub eax, 0xa2e6382b
mov word [rsp + 0x54], ax
mov qword [0x140177270], 4
mov eax, dword [rsp + 0xe0]
add eax, 0x20a
mov dword [rsp + 0x498], eax
lea rax, [rsp + 0x518]
lea rcx, str.No_user_interface
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x518]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [0x1401771d3], al
mov eax, dword [0x140371450]
mov dword [rsp + 0xe4], eax
movzx eax, byte [0x1401771ff]
test eax, eax
jne 0x14005048b
mov dword [rsp + 0x1c8], 1
jmp 0x140050496
mov dword [rsp + 0x1c8], 0
mov eax, dword [0x1401771d4]
mov ecx, dword [rsp + 0x1c8]
sub ecx, eax
mov eax, ecx
mov dword [0x140177268], eax
movsx eax, word [rsp + 0x60]
movzx ecx, byte [0x1401771fe]
movsx ecx, cl
imul eax, ecx
movsx ecx, word [rsp + 0x60]
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x60], ax
mov eax, dword [rsp + 0xe4]
add eax, 0x29d
mov dword [rsp + 0x358], eax
movzx eax, word [rsp + 0x58]
movzx eax, ax
cmp dword [0x14017729c], eax
jbe 0x1400504fd
mov dword [rsp + 0x1d0], 1
jmp 0x140050508
mov dword [rsp + 0x1d0], 0
cmp dword [0x14017729c], 0x39
jbe 0x14005051e
mov dword [rsp + 0x1cc], 1
jmp 0x140050529
mov dword [rsp + 0x1cc], 0
mov eax, dword [rsp + 0x1cc]
cmp dword [rsp + 0x1d0], eax
je 0x1400505df
cmp dword [0x1401772d8], 0
je 0x140050585
movzx eax, word [rsp + 0x68]
mov rcx, qword [0x140177248]
sub rax, rcx
movzx ecx, word [rsp + 0x68]
sub rcx, rax
mov rax, rcx
mov word [rsp + 0x68], ax
movzx eax, byte [0x140177216]
add eax, 0x2a
mov dword [0x1401772c8], eax
mov eax, dword [rsp + 0x80]
shr eax, 1
mov word [rsp + 0x54], ax
jmp 0x1400505da
movsx eax, word [0x14017722c]
not eax
mov ecx, 0xcf
sub ecx, eax
mov eax, ecx
cmp eax, 0x9d
jl 0x1400505da
imul eax, dword [0x14017726c], 0xfa18c7db
mov word [rsp + 0x4c], ax
movsx eax, word [rsp + 0x64]
sar eax, 5
cdqe
mov qword [rsp + 0x88], rax
movsx eax, byte [rsp + 0x44]
movzx ecx, byte [0x140177216]
add eax, ecx
movsx ecx, byte [rsp + 0x44]
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x44], al
jmp 0x140050683
movzx eax, word [rsp + 0x4c]
movzx eax, ax
imul rax, qword [rsp + 0x88]
test rax, rax
je 0x140050683
cmp dword [0x14017729c], 0
jne 0x140050610
mov qword [rsp + 0x3a8], 1
jmp 0x14005061c
mov qword [rsp + 0x3a8], 0
movabs rax, 0x9129f1008bfbe
cmp qword [rsp + 0x3a8], rax
jge 0x140050683
mov eax, dword [0x1401771d4]
shr eax, 2
mov word [rsp + 0x48], ax
movsx eax, byte [rsp + 0x44]
movzx ecx, word [rsp + 0x70]
movzx ecx, cx
sub eax, ecx
test eax, eax
jne 0x14005065e
mov dword [rsp + 0x1d4], 1
jmp 0x140050669
mov dword [rsp + 0x1d4], 0
movzx eax, byte [0x1401771fe]
movsx eax, al
mov ecx, dword [rsp + 0x1d4]
add ecx, eax
mov eax, ecx
mov word [rsp + 0x60], ax
mov eax, dword [rsp + 0xe4]
add eax, 0x188
mov dword [rsp + 0x2e4], eax
mov rax, qword [rsp + 0x88]
not rax
movzx ecx, word [rsp + 0x58]
movzx ecx, cx
mov rdx, qword [0x140177248]
not rdx
imul rcx, rdx
mov edx, 0xeb1579aa
sub rcx, rdx
imul rax, rcx
mov dword [rsp + 0x7c], eax
movsx eax, byte [rsp + 0x40]
imul eax, eax, 0xed97
mov byte [rsp + 0x41], al
movzx eax, byte [rsp + 0x41]
mov word [0x14017725c], ax
mov eax, dword [rsp + 0xe4]
add eax, 0x175
mov dword [rsp + 0x35c], eax
mov eax, dword [rsp + 0x84]
mov ecx, dword [0x14017726c]
lea eax, [rcx + rax - 0x618b9f3c]
mov dword [0x14017726c], eax
mov qword [rsp + 0xb0], 0
jmp 0x140050730
mov rax, qword [rsp + 0xb0]
inc rax
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x398]
cmp qword [rsp + 0xb0], rax
jae 0x1400508a4
mov rax, qword [0x140177248]
sub rax, 0x931a
mov dword [0x1401771d4], eax
movzx eax, word [0x1401772d4]
cwde
test eax, eax
jne 0x140050772
mov dword [rsp + 0x1dc], 1
jmp 0x14005077d
mov dword [rsp + 0x1dc], 0
movsx eax, byte [rsp + 0x40]
mov ecx, dword [rsp + 0x7c]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x14005079b
mov dword [rsp + 0x1d8], 1
jmp 0x1400507a6
mov dword [rsp + 0x1d8], 0
movzx eax, byte [rsp + 0x41]
and eax, dword [rsp + 0x1d8]
test eax, eax
jne 0x1400507c3
mov dword [rsp + 0x1e0], 1
jmp 0x1400507ce
mov dword [rsp + 0x1e0], 0
movzx eax, byte [rsp + 0x42]
movzx eax, al
movzx ecx, byte [0x1401771a7]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [0x1401772c8]
not ecx
add ecx, dword [rsp + 0x1dc]
imul eax, ecx
add eax, dword [rsp + 0x1e0]
mov word [0x14017728c], ax
mov rax, qword [0x140177248]
sub rax, 0x500e
mov word [rsp + 0x68], ax
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x2f8]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x590]
movzx eax, byte [rcx + rax]
mov ecx, eax
call fcn.14012c0dc
mov dword [rsp + 0x330], eax
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x598]
add rdx, rcx
mov rcx, rdx
movzx ecx, byte [rcx]
call fcn.14012c0dc
mov ecx, dword [rsp + 0x330]
cmp ecx, eax
je 0x14005089f
mov eax, dword [rsp + 0x74]
imul eax, eax, 0xb9
movzx ecx, word [0x14017725c]
movsx ecx, cx
add ecx, eax
mov eax, ecx
mov word [0x14017725c], ax
movzx eax, word [0x140177258]
sub eax, 0x5bbeeea1
mov byte [rsp + 0x43], al
jmp 0x1400508a4
jmp 0x14005071d
mov eax, dword [rsp + 0x334]
add eax, 0x29e
mov ecx, dword [rsp + 0x338]
sub ecx, 0x34e
cmp eax, ecx
je 0x140052df1
movsx eax, word [rsp + 0x64]
cmp eax, dword [0x1401772dc]
jg 0x1400509f2
mov eax, dword [rsp + 0x74]
test eax, eax
jne 0x14005093c
movzx eax, word [0x1401772d0]
cwde
mov ecx, dword [rsp + 0x84]
imul ecx, eax
mov eax, ecx
movzx ecx, word [0x140177258]
not ecx
mov edx, dword [rsp + 0x7c]
imul edx, ecx
mov ecx, edx
imul eax, ecx
test eax, eax
jne 0x140050915
mov byte [rsp + 0x96], 1
jmp 0x14005091d
mov byte [rsp + 0x96], 0
movzx eax, byte [rsp + 0x96]
mov byte [str.__._AV__JsonPrimitiv], al
mov eax, 0xae4
mov word [0x140177298], ax
jmp 0x1400509ed
xor eax, eax
cmp eax, 0x194
je 0x1400509ed
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
jne 0x140050960
mov dword [rsp + 0x1e4], 1
jmp 0x14005096b
mov dword [rsp + 0x1e4], 0
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov ecx, dword [rsp + 0x1e4]
sub ecx, eax
mov eax, ecx
cdqe
movzx ecx, word [rsp + 0x58]
movzx ecx, cx
mov rdx, qword [0x140177270]
sub rcx, rdx
and rax, rcx
not rax
mov rcx, qword [0x140177270]
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0x6c], eax
mov rax, qword [0x140177270]
movzx ecx, byte [str.ORtlGetDeviceFamily]
lea rax, [rcx + rax + 0xcbc8]
mov byte [str.ORtlGetDeviceFamily], al
movzx eax, word [0x140177288]
movsx rax, ax
movsx rcx, word [rsp + 0x64]
movabs rdx, 0xfffd8fecdac4aec2
add rax, rdx
add rax, rcx
mov word [0x140177288], ax
jmp 0x140050a82
mov eax, dword [0x1401772c8]
movzx ecx, byte [0x1401771a7]
movsx ecx, cl
cmp eax, ecx
jne 0x140050a82
mov eax, dword [0x1401772bc]
test eax, eax
jne 0x140050a1d
mov dword [rsp + 0x1e8], 1
jmp 0x140050a28
mov dword [rsp + 0x1e8], 0
movzx eax, byte [str.ORtlGetDeviceFamily]
cmp dword [rsp + 0x1e8], eax
jle 0x140050a82
movzx eax, byte [0x14017722f]
movsx eax, al
imul eax, eax, 0x30
mov word [0x140177288], ax
movzx eax, byte [0x1401771d3]
movzx ecx, byte [0x1401771d3]
add eax, ecx
mov byte [0x1401771d3], al
movzx eax, word [rsp + 0x48]
cwde
mov ecx, dword [0x1401772bc]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x1401772bc]
sub ecx, eax
mov eax, ecx
mov dword [0x1401772bc], eax
mov eax, dword [0x140371450]
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0x74]
test eax, eax
je 0x140050a9c
jmp 0x140050b4b
movzx eax, byte [rsp + 0x42]
movzx eax, al
not eax
test eax, eax
je 0x140050ab7
cmp dword [0x1401772d8], 0
jne 0x140050b4b
mov eax, dword [0x14017729c]
mov rcx, qword [0x140177278]
add rcx, rax
mov rax, rcx
mov qword [0x140177278], rax
movsx eax, word [rsp + 0x60]
test eax, eax
jne 0x140050ae7
mov dword [rsp + 0x1ec], 1
jmp 0x140050af2
mov dword [rsp + 0x1ec], 0
movzx eax, byte [0x14017722b]
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
sub eax, ecx
cdqe
sub rax, qword [rsp + 0x88]
not rax
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
not ecx
mov edx, dword [rsp + 0x7c]
sub ecx, edx
mov edx, dword [rsp + 0x74]
xor edx, dword [rsp + 0x1ec]
and ecx, edx
mov ecx, ecx
add rax, rcx
mov byte [0x1401771fe], al
movzx eax, word [0x1401772d0]
cwde
mov ecx, dword [rsp + 0x78]
add eax, ecx
mov word [rsp + 0x54], ax
mov eax, dword [rsp + 0xe8]
add eax, 0x5656
mov dword [rsp + 0x33c], eax
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x140050b78
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x1f0], eax
jmp 0x140050b85
mov eax, dword [0x140177264]
mov dword [rsp + 0x1f0], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x7c], eax
movzx eax, byte [0x1401772a8]
mov byte [rsp + 0x40], al
mov eax, dword [rsp + 0xe8]
add eax, 0xdb
mov dword [rsp + 0x4ac], eax
mov eax, dword [rsp + 0xe8]
add eax, 0xc2
mov dword [rsp + 0xec], eax
movsx eax, word [0x140177260]
movzx ecx, word [rsp + 0x58]
movzx ecx, cx
add eax, ecx
movsx ecx, word [0x140177260]
add ecx, eax
mov eax, ecx
mov word [0x140177260], ax
movzx eax, word [0x140177288]
movsx rax, ax
movabs rcx, 0xb818df186332e
add rax, rcx
mov qword [0x1401772a0], rax
movzx eax, byte [0x14017722b]
test eax, eax
je 0x140050e27
mov r8w, 0xe6
xor edx, edx
mov cx, 0xbc
call fcn.140038800
movsx rax, ax
mov qword [0x140177248], rax
mov rax, qword [0x140177248]
test rax, rax
jge 0x140050c46
mov dword [rsp + 0x1f8], 1
jmp 0x140050c51
mov dword [rsp + 0x1f8], 0
mov rax, qword [0x140177248]
cmp rax, 0x44
jge 0x140050c6b
mov dword [rsp + 0x1f4], 1
jmp 0x140050c76
mov dword [rsp + 0x1f4], 0
mov eax, dword [rsp + 0x1f4]
cmp dword [rsp + 0x1f8], eax
jge 0x140050db2
cmp dword [0x140177268], 0
jne 0x140050ca0
mov dword [rsp + 0x1fc], 1
jmp 0x140050cab
mov dword [rsp + 0x1fc], 0
movzx eax, word [0x140177258]
not eax
cmp eax, dword [rsp + 0x1fc]
jle 0x140050cca
mov dword [rsp + 0x200], 1
jmp 0x140050cd5
mov dword [rsp + 0x200], 0
movsx eax, word [rsp + 0x64]
movzx ecx, word [0x1401772b8]
movsx ecx, cx
not ecx
sub eax, ecx
mov ecx, dword [rsp + 0x200]
imul ecx, eax
mov eax, ecx
test eax, eax
je 0x140050d2b
movzx eax, word [0x140371450]
mov word [rsp + 0x50], ax
movzx eax, byte [0x140177216]
movzx ecx, word [0x140177254]
imul eax, ecx
movzx ecx, byte [0x140177216]
or ecx, eax
mov eax, ecx
mov byte [0x140177216], al
jmp 0x140050db0
mov rax, qword [0x140177248]
inc rax
mov qword [0x140177248], rax
mov eax, dword [rsp + 0x84]
test eax, eax
jne 0x140050d54
mov dword [rsp + 0x204], 1
jmp 0x140050d5f
mov dword [rsp + 0x204], 0
movzx eax, word [rsp + 0x54]
cwde
test eax, eax
jne 0x140050d77
mov qword [rsp + 0x3b0], 1
jmp 0x140050d83
mov qword [rsp + 0x3b0], 0
movzx eax, byte [0x140177216]
sub eax, dword [rsp + 0x204]
cdqe
mov rcx, qword [0x1401772c0]
mov rdx, qword [rsp + 0x3b0]
imul rdx, rcx
mov rcx, rdx
xor rax, rcx
mov dword [rsp + 0x7c], eax
jmp 0x140050e25
movzx eax, byte [0x1401771d3]
test eax, eax
jne 0x140050dca
mov dword [rsp + 0x208], 1
jmp 0x140050dd5
mov dword [rsp + 0x208], 0
mov eax, dword [0x140177268]
cmp dword [rsp + 0x208], eax
jle 0x140050e25
movzx eax, byte [rsp + 0x42]
movzx eax, al
test eax, eax
je 0x140050e00
movzx eax, byte [0x1401771a6]
mov dword [rsp + 0x20c], eax
jmp 0x140050e0c
movsx eax, word [rsp + 0x64]
mov dword [rsp + 0x20c], eax
movzx eax, word [rsp + 0x20c]
mov word [rsp + 0x4c], ax
movzx eax, byte [rsp + 0x41]
sar eax, 7
mov dword [rsp + 0x7c], eax
jmp 0x140050e6c
mov rax, qword [0x140177248]
movzx ecx, word [0x1401772b8]
movsx rcx, cx
cmp rax, rcx
jg 0x140050e6c
mov eax, dword [0x1401771d4]
mov eax, eax
movabs rcx, 0x454b7ed779c20
sub rax, rcx
mov dword [0x140177264], eax
mov rax, qword [0x1401772b0]
sub rax, 0x2a66
mov dword [0x140177268], eax
mov eax, dword [rsp + 0xec]
mov ecx, dword [rsp + 0xec]
xor eax, ecx
mov ecx, dword [rsp + 0xec]
mov edx, dword [rsp + 0x33c]
imul ecx, edx
xor eax, ecx
sub eax, 0x416a3e
mov dword [rsp + 0x360], eax
movzx r8d, byte [0x140177254]
mov dl, 0x95
xor ecx, ecx
call fcn.14003a5d0
movzx eax, al
mov word [rsp + 0x5c], ax
mov eax, dword [rsp + 0x74]
mov eax, eax
movabs rcx, 0x4fdf5abbeddfd
sub rcx, rax
mov rax, rcx
movzx ecx, byte [rsp + 0x41]
cmp rax, rcx
jg 0x140050ee1
mov dword [rsp + 0x218], 1
jmp 0x140050eec
mov dword [rsp + 0x218], 0
mov eax, dword [0x140177250]
movzx ecx, word [rsp + 0x70]
movzx ecx, cx
cmp eax, ecx
jl 0x140050f0b
mov dword [rsp + 0x214], 1
jmp 0x140050f16
mov dword [rsp + 0x214], 0
movzx eax, word [rsp + 0x58]
movzx eax, ax
cmp qword [0x140177290], rax
je 0x140050f34
mov dword [rsp + 0x210], 1
jmp 0x140050f3f
mov dword [rsp + 0x210], 0
mov eax, dword [rsp + 0x210]
mov ecx, dword [rsp + 0x214]
sub ecx, eax
mov eax, ecx
cmp dword [rsp + 0x218], eax
jl 0x14005101b
movzx eax, word [0x14017725c]
cwde
test eax, eax
je 0x140051016
movsx eax, word [0x140177298]
mov ecx, dword [rsp + 0x78]
add eax, ecx
movsx ecx, word [0x140177298]
sub ecx, eax
mov eax, ecx
mov word [0x140177298], ax
movzx eax, byte [0x1401771a7]
movsx eax, al
movsx ecx, word [rsp + 0x5c]
imul eax, ecx
test eax, eax
jne 0x140050fb0
mov dword [rsp + 0x220], 1
jmp 0x140050fbb
mov dword [rsp + 0x220], 0
movzx eax, word [rsp + 0x50]
movzx eax, ax
test eax, eax
jne 0x140050fd4
mov dword [rsp + 0x21c], 1
jmp 0x140050fdf
mov dword [rsp + 0x21c], 0
movzx eax, word [0x14017728c]
movzx eax, ax
mov ecx, dword [rsp + 0x78]
add ecx, eax
mov eax, ecx
movzx ecx, byte [rsp + 0x41]
mov edx, dword [rsp + 0x21c]
add edx, ecx
mov ecx, edx
sub eax, ecx
not eax
mov ecx, dword [rsp + 0x220]
xor ecx, eax
mov eax, ecx
mov byte [0x140177216], al
jmp 0x1400511b2
movzx eax, word [rsp + 0x54]
cwde
test eax, eax
jne 0x140051032
mov dword [rsp + 0x224], 1
jmp 0x14005103d
mov dword [rsp + 0x224], 0
movzx eax, word [0x14017725c]
cwde
cmp dword [rsp + 0x224], eax
jne 0x14005105b
mov dword [rsp + 0x228], 1
jmp 0x140051066
mov dword [rsp + 0x228], 0
movsx eax, byte [rsp + 0x40]
cmp dword [rsp + 0x228], eax
jl 0x14005108d
mov byte [0x1401771a6], 0x6b
mov eax, dword [rsp + 0x78]
sub eax, 0xab7f
mov byte [rsp + 0x44], al
jmp 0x1400511b2
mov rax, qword [0x1401772c0]
test rax, rax
je 0x1400510da
mov rax, qword [0x140177270]
test rax, rax
je 0x1400510da
movzx eax, word [rsp + 0x58]
movzx eax, ax
movsx ecx, byte [rsp + 0x40]
xor eax, ecx
movzx ecx, word [rsp + 0x58]
movzx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x58], ax
movzx eax, byte [rsp + 0x43]
movsx eax, al
imul eax, eax, 0x65
mov word [rsp + 0x5c], ax
jmp 0x1400511b2
mov rax, qword [0x140177280]
not rax
test rax, rax
je 0x1400511b2
movzx eax, byte [0x1401771a7]
movsx eax, al
movzx ecx, word [0x1401772b8]
movsx ecx, cx
xor eax, ecx
mov byte [0x1401771a7], al
cmp qword [rsp + 0x88], 0
jne 0x140051121
mov dword [rsp + 0x22c], 1
jmp 0x14005112c
mov dword [rsp + 0x22c], 0
movzx eax, byte [0x1401771ff]
mov ecx, dword [rsp + 0x22c]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x6c]
sub ecx, eax
mov eax, ecx
mov eax, eax
movzx ecx, byte [rsp + 0x42]
movzx ecx, cl
not ecx
movsxd rcx, ecx
movzx edx, word [0x1401772b8]
movsx rdx, dx
movabs rdi, 0x7c85a4dfa489a
imul rdx, rdi
not rdx
imul rcx, rdx
xor rax, rcx
test rax, rax
jne 0x14005118c
mov eax, 1
mov word [rsp + 0xa4], ax
jmp 0x140051196
xor eax, eax
mov word [rsp + 0xa4], ax
movzx eax, word [rsp + 0xa4]
mov word [rsp + 0x48], ax
mov eax, dword [0x140177268]
shl eax, 7
mov dword [0x14017726c], eax
mov eax, dword [0x140371450]
mov dword [rsp + 0xf0], eax
mov eax, dword [rsp + 0x6c]
movzx ecx, word [0x1401772d0]
movsx ecx, cx
cmp eax, ecx
je 0x1400511de
mov dword [rsp + 0x234], 1
jmp 0x1400511e9
mov dword [rsp + 0x234], 0
mov eax, dword [rsp + 0x6c]
cmp eax, 0x64
je 0x1400511ff
mov dword [rsp + 0x230], 1
jmp 0x14005120a
mov dword [rsp + 0x230], 0
mov eax, dword [rsp + 0x230]
cmp dword [rsp + 0x234], eax
je 0x14005133c
movzx eax, word [rsp + 0x70]
movzx eax, ax
cmp eax, dword [0x14017729c]
ja 0x14005123b
mov dword [rsp + 0x238], 1
jmp 0x140051246
mov dword [rsp + 0x238], 0
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov ecx, dword [rsp + 0x238]
and ecx, eax
mov eax, ecx
test eax, eax
je 0x1400512d0
movsx eax, word [0x140177260]
sub eax, 0x6f030aec
movzx ecx, byte [0x1401771a6]
sub ecx, eax
mov eax, ecx
mov byte [0x1401771a6], al
movzx eax, word [0x1401772b8]
movsx rax, ax
movabs rcx, 0x9cb2da1f72d20
add rax, rcx
mov word [0x1401772d0], ax
movzx eax, byte [0x1401771a6]
test eax, eax
je 0x1400512b2
movsx eax, word [rsp + 0x60]
mov dword [rsp + 0x23c], eax
jmp 0x1400512c1
movzx eax, word [rsp + 0x50]
movzx eax, ax
mov dword [rsp + 0x23c], eax
movzx eax, word [rsp + 0x23c]
mov word [rsp + 0x50], ax
jmp 0x140051337
cmp dword [0x140177268], 0
je 0x1400512e8
movzx eax, word [rsp + 0x48]
cwde
mov dword [rsp + 0x240], eax
jmp 0x1400512f5
mov eax, dword [0x14017729c]
mov dword [rsp + 0x240], eax
mov eax, dword [rsp + 0x240]
mov dword [rsp + 0x7c], eax
movzx eax, word [rsp + 0x48]
mov ecx, 1
imul rcx, rcx, 0xf3
lea rdx, [0x1403878d0]
mov byte [rdx + rcx], al
movzx eax, byte [0x1401771a7]
movsx rax, al
movabs rcx, 0x44017ab40996e
sub rax, rcx
mov dword [rsp + 0x78], eax
jmp 0x14005146d
movzx eax, word [0x14017725c]
cwde
movzx ecx, word [0x1401772d4]
movsx ecx, cx
cmp eax, ecx
jge 0x14005135f
mov dword [rsp + 0x244], 1
jmp 0x14005136a
mov dword [rsp + 0x244], 0
mov eax, dword [rsp + 0x244]
not eax
test eax, eax
je 0x14005141c
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov ecx, dword [rsp + 0x80]
not ecx
imul eax, ecx
mov word [0x1401772d4], ax
movzx eax, byte [0x140371450]
mov byte [rsp + 0x40], al
mov rax, qword [0x140177278]
test rax, rax
jne 0x1400513ba
mov dword [rsp + 0x248], 1
jmp 0x1400513c5
mov dword [rsp + 0x248], 0
movzx eax, word [rsp + 0x48]
cwde
add eax, dword [rsp + 0x248]
test eax, eax
jne 0x1400513e4
mov qword [rsp + 0x3b8], 1
jmp 0x1400513f0
mov qword [rsp + 0x3b8], 0
movzx eax, byte [0x1401771fe]
movsx rax, al
mov rcx, qword [0x140177278]
mov rdx, qword [rsp + 0x3b8]
add rdx, rax
mov rax, rdx
add rcx, rax
mov rax, rcx
mov dword [rsp + 0x78], eax
jmp 0x14005146d
movzx eax, word [rsp + 0x4c]
movzx eax, ax
test eax, eax
jne 0x14005146d
mov eax, 1
mov word [rsp + 0x68], ax
movzx eax, word [0x140177258]
not eax
cdqe
movabs rcx, 0xb61b4828f1fa1
add rax, rcx
test rax, rax
jne 0x140051459
mov byte [rsp + 0x92], 1
jmp 0x140051461
mov byte [rsp + 0x92], 0
movzx eax, byte [rsp + 0x92]
mov byte [rsp + 0x40], al
mov eax, dword [rsp + 0xf0]
add eax, 0x8e6c
mov dword [rsp + 0x4b4], eax
movsx eax, word [0x140177260]
inc eax
mov word [0x140177254], ax
movzx eax, word [0x140177254]
movsx ecx, word [rsp + 0x64]
sub eax, ecx
mov word [0x1401772d4], ax
mov eax, dword [rsp + 0xf0]
add eax, 0xd9
mov dword [rsp + 0x46c], eax
mov eax, dword [0x1401772c8]
test eax, eax
jne 0x1400514cf
mov dword [rsp + 0x24c], 1
jmp 0x1400514da
mov dword [rsp + 0x24c], 0
movzx eax, word [rsp + 0x54]
cwde
mov ecx, dword [rsp + 0x24c]
sub ecx, eax
mov eax, ecx
mov dword [0x14017726c], eax
movzx eax, word [0x140177258]
movzx ecx, word [rsp + 0x50]
movzx ecx, cx
lea eax, [rcx + rax - 0x67]
mov word [rsp + 0x50], ax
movsx eax, word [0x140177260]
test eax, eax
jne 0x14005151e
mov byte [rsp + 0x93], 1
jmp 0x140051526
mov byte [rsp + 0x93], 0
movzx eax, byte [rsp + 0x93]
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0xf0]
add eax, 0x5876
mov dword [rsp + 0x340], eax
movzx eax, byte [0x140177216]
add eax, 0xfe
mov dword [0x14017726c], eax
mov eax, dword [rsp + 0x6c]
mov ecx, dword [0x1401772bc]
xor eax, ecx
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x7c]
test eax, eax
je 0x140051582
movzx eax, byte [rsp + 0x43]
movsx rax, al
mov qword [rsp + 0x3c0], rax
jmp 0x140051591
mov rax, qword [0x140177248]
mov qword [rsp + 0x3c0], rax
mov rax, qword [rsp + 0x3c0]
mov qword [0x140177290], rax
movsx eax, byte [rsp + 0x44]
mov ecx, dword [rsp + 0x74]
xor eax, ecx
movzx ecx, word [0x140177254]
imul eax, ecx
test eax, eax
jne 0x1400515c6
mov dword [rsp + 0x254], 1
jmp 0x1400515d1
mov dword [rsp + 0x254], 0
movsx eax, byte [rsp + 0x44]
movzx ecx, word [0x14017728c]
movzx ecx, cx
imul eax, ecx
test eax, eax
jne 0x1400515f4
mov dword [rsp + 0x250], 1
jmp 0x1400515ff
mov dword [rsp + 0x250], 0
movzx eax, byte [0x1401771a6]
movzx ecx, word [rsp + 0x58]
movzx ecx, cx
mov edx, dword [rsp + 0x250]
add edx, eax
mov eax, edx
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x254]
xor ecx, eax
mov eax, ecx
test eax, eax
jne 0x140051636
mov byte [rsp + 0x94], 1
jmp 0x14005163e
mov byte [rsp + 0x94], 0
movzx eax, byte [rsp + 0x94]
mov byte [rsp + 0x44], al
mov rax, qword [0x140177278]
dec rax
mov qword [0x140177278], rax
mov eax, dword [rsp + 0x340]
xor eax, 0x2a53
mov ecx, 0x7378
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x364], eax
movzx eax, byte [rsp + 0x41]
movsx ecx, byte [rsp + 0x40]
cmp eax, ecx
je 0x1400517c0
movzx eax, byte [0x14017722b]
mov ecx, dword [rsp + 0x6c]
cmp eax, ecx
jb 0x1400516a5
mov dword [rsp + 0x25c], 1
jmp 0x1400516b0
mov dword [rsp + 0x25c], 0
movzx eax, byte [0x14017722b]
cmp eax, 0x51
jl 0x1400516c9
mov dword [rsp + 0x258], 1
jmp 0x1400516d4
mov dword [rsp + 0x258], 0
mov eax, dword [rsp + 0x258]
cmp dword [rsp + 0x25c], eax
jne 0x14005171e
movsx eax, word [0x140177298]
mov ecx, dword [rsp + 0x84]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x84], eax
movzx eax, byte [0x1401771a6]
add eax, 0x60a8
mov byte [0x1401771a7], al
mov eax, dword [0x140371450]
mov dword [rsp + 0x78], eax
jmp 0x1400517bb
movzx eax, byte [str.__._AV__JsonPrimitiv]
movsx eax, al
mov ecx, dword [rsp + 0x74]
cmp eax, ecx
jbe 0x140051744
movzx eax, byte [0x140177216]
movzx ecx, byte [str.ORtlGetDeviceFamily]
sub eax, ecx
test eax, eax
je 0x1400517bb
movzx eax, byte [0x1401771ff]
mov ecx, dword [0x1401772bc]
add ecx, eax
mov eax, ecx
movzx ecx, word [rsp + 0x58]
movzx ecx, cx
mov edx, dword [rsp + 0x80]
add edx, ecx
mov ecx, edx
xor eax, ecx
test eax, eax
jne 0x14005177b
mov dword [rsp + 0x260], 1
jmp 0x140051786
mov dword [rsp + 0x260], 0
mov eax, dword [rsp + 0x260]
mov dword [rsp + 0x84], eax
movzx eax, byte [rsp + 0x41]
not eax
mov ecx, dword [0x1401772c8]
xor ecx, eax
mov eax, ecx
mov word [rsp + 0x48], ax
movzx eax, byte [rsp + 0x42]
movzx eax, al
sub eax, 0xea
mov dword [rsp + 0x74], eax
jmp 0x14005184e
movzx eax, byte [0x1401771a6]
movzx ecx, word [0x14017725c]
movsx ecx, cx
cmp eax, ecx
je 0x14005184e
movzx eax, word [rsp + 0x54]
cwde
mov ecx, dword [rsp + 0x6c]
cmp eax, ecx
je 0x1400517f0
mov dword [rsp + 0x264], 1
jmp 0x1400517fb
mov dword [rsp + 0x264], 0
mov eax, dword [rsp + 0x264]
not eax
test eax, eax
je 0x14005184e
mov rax, qword [rsp + 0x88]
not rax
movzx ecx, word [0x1401772b8]
movsx rcx, cx
xor rax, rcx
mov word [0x140177260], ax
movzx eax, byte [str.__._AV__JsonPrimitiv]
movsx rax, al
movzx ecx, byte [0x14017722b]
mov rdx, qword [0x140177248]
imul rcx, rdx
add rax, rcx
mov byte [0x1401771fe], al
mov eax, dword [0x140371450]
mov dword [rsp + 0xf4], eax
mov cx, 0xa7
call fcn.140039300
cwde
mov dword [0x1401772d8], eax
cmp dword [0x1401772d8], 0
je 0x140051950
movzx eax, byte [0x1401771fe]
movsx eax, al
movzx ecx, byte [0x1401771ff]
movzx edx, byte [rsp + 0x43]
movsx edx, dl
mov dword [rsp + 0x344], edx
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0
mov r9d, ecx
mov r8d, 0x5f
mov edx, 0x63
mov eax, dword [rsp + 0x344]
mov ecx, eax
call fcn.140039ab0
mov byte [rsp + 0x41], al
mov rax, qword [rsp + 0x98]
test rax, rax
jne 0x1400518ec
cmp qword [0x140177290], 0
jne 0x1400518ec
movsx eax, byte [rsp + 0x40]
test eax, eax
je 0x140051922
xor eax, eax
cmp eax, 0x13
je 0x140051922
movsx eax, byte [rsp + 0x44]
mov dword [0x14017726c], eax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
movsx ecx, word [0x140177298]
add eax, ecx
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
or ecx, eax
mov eax, ecx
mov word [rsp + 0x4c], ax
jmp 0x14005194e
movzx eax, byte [0x1401771a7]
movsx eax, al
test eax, eax
je 0x14005194e
mov dword [rsp + 0x78], 0x7e
mov eax, dword [0x140371450]
mov dword [0x14017729c], eax
movzx eax, word [rsp + 0x58]
mov word [rsp + 0x50], ax
jmp 0x1400519a0
mov eax, dword [rsp + 0x6c]
test eax, eax
je 0x1400519a0
movzx eax, word [0x1401772d4]
cwde
add eax, 2
mov byte [rsp + 0x42], al
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
je 0x140051983
movsx rax, byte [0x1401771a3]
mov qword [rsp + 0x3c8], rax
jmp 0x140051992
mov rax, qword [0x140177278]
mov qword [rsp + 0x3c8], rax
movzx eax, byte [rsp + 0x3c8]
mov byte [0x14017722b], al
mov eax, dword [rsp + 0xf4]
add eax, 0xb9
mov dword [rsp + 0x268], eax
movzx eax, word [0x14017728c]
movzx eax, ax
mov rcx, qword [0x1401772c0]
sub rax, rcx
movzx ecx, word [0x14017728c]
movzx ecx, cx
add rcx, rax
mov rax, rcx
mov word [0x14017728c], ax
mov byte [rsp + 0x41], 0xe8
mov eax, dword [rsp + 0xf4]
add eax, 0x7e2
mov dword [rsp + 0x470], eax
movzx eax, word [rsp + 0x50]
movzx eax, ax
movzx ecx, byte [0x14017722f]
movsx ecx, cl
imul eax, ecx
movzx ecx, word [rsp + 0x50]
movzx ecx, cx
add ecx, eax
mov eax, ecx
mov word [rsp + 0x50], ax
mov eax, 0xfffff97c
mov word [rsp + 0x48], ax
movzx eax, byte [0x1401771a6]
movabs rcx, 0xe8df1ac77d1aa
xor rax, rcx
mov byte [0x1401771a6], al
mov eax, dword [rsp + 0xf4]
add eax, 0x44
mov dword [rsp + 0x474], eax
movzx eax, byte [rsp + 0x42]
movzx eax, al
mov ecx, dword [rsp + 0x84]
imul ecx, eax
mov eax, ecx
mov dword [rsp + 0x84], eax
movzx eax, byte [0x1401771fe]
movsx rax, al
movabs rcx, 0x4753382cdd874
sub rax, rcx
mov byte [0x1401771d3], al
movzx eax, word [0x140177258]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x70
xor edx, edx
xor ecx, ecx
call fcn.1400389f0
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x140051abf
jmp 0x140051af4
movzx eax, word [rsp + 0x68]
test eax, eax
je 0x140051af4
movzx eax, byte [0x1401771a7]
movsx eax, al
mov ecx, dword [rsp + 0x78]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x78]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x78], eax
movzx eax, word [0x140371450]
mov word [0x14017728c], ax
mov eax, dword [rsp + 0x268]
mov ecx, dword [rsp + 0x268]
xor eax, ecx
or eax, 0x5dc
xor eax, 0x409
mov dword [rsp + 0x368], eax
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
jne 0x140051b2c
mov dword [rsp + 0x26c], 1
jmp 0x140051b37
mov dword [rsp + 0x26c], 0
movzx eax, word [rsp + 0x58]
movzx eax, ax
mov ecx, dword [rsp + 0x26c]
imul ecx, eax
mov eax, ecx
test eax, eax
je 0x140051b7e
movsx eax, word [0x14017722c]
test eax, eax
je 0x140051b7c
movzx eax, word [0x1401772d0]
cwde
mov dword [0x1401772d8], eax
mov rax, qword [0x1401772c0]
mov ecx, 0xd128f32d
add rax, rcx
mov word [rsp + 0x60], ax
jmp 0x140051ba7
mov eax, dword [rsp + 0x7c]
test eax, eax
jne 0x140051ba7
movzx eax, byte [0x1401771d3]
mov qword [rsp + 0x88], rax
movzx eax, byte [rsp + 0x42]
movzx eax, al
mov ecx, dword [rsp + 0x7c]
add eax, ecx
mov byte [rsp + 0x42], al
mov eax, dword [0x140371450]
mov dword [rsp + 0xf8], eax
mov eax, dword [rsp + 0x6c]
test eax, eax
jne 0x140051bc9
mov dword [rsp + 0x270], 1
jmp 0x140051bd4
mov dword [rsp + 0x270], 0
movzx eax, byte [str.ORtlGetDeviceFamily]
movsx ecx, word [0x14017722c]
movzx edx, word [rsp + 0x68]
add edx, dword [rsp + 0x270]
sub ecx, edx
sub eax, ecx
cdqe
mov qword [0x1401772a0], rax
movzx eax, word [rsp + 0x48]
cwde
add eax, dword [0x1401772dc]
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x48], ax
mov eax, dword [rsp + 0xf8]
add eax, 0x8f
mov dword [rsp + 0x478], eax
movzx eax, word [0x140177254]
not eax
movzx ecx, word [0x14017725c]
movsx ecx, cx
imul eax, ecx
cdqe
mov rcx, qword [0x140177278]
imul rcx, rax
mov rax, rcx
test rax, rax
jne 0x140051c63
mov dword [rsp + 0x278], 1
jmp 0x140051c6e
mov dword [rsp + 0x278], 0
cmp qword [0x140177280], 0
jne 0x140051c85
mov dword [rsp + 0x274], 1
jmp 0x140051c90
mov dword [rsp + 0x274], 0
movsx eax, word [rsp + 0x5c]
sub eax, dword [0x14017729c]
not eax
imul eax, dword [rsp + 0x274]
mov ecx, dword [rsp + 0x278]
or ecx, eax
mov eax, ecx
mov word [0x1401772b8], ax
movzx eax, byte [rsp + 0x42]
movzx eax, al
test eax, eax
jne 0x140051cd1
mov qword [rsp + 0x3d0], 1
jmp 0x140051cdd
mov qword [rsp + 0x3d0], 0
mov rax, qword [0x140177248]
mov rcx, qword [rsp + 0x3d0]
imul rcx, rax
mov rax, rcx
movzx ecx, word [rsp + 0x54]
movsx ecx, cx
add ecx, 0x3cef6868
movsxd rcx, ecx
xor rax, rcx
movzx ecx, byte [str.ORtlGetDeviceFamily]
not ecx
movzx edx, word [rsp + 0x70]
movzx edx, dx
imul ecx, edx
not ecx
movsxd rcx, ecx
movzx edx, word [rsp + 0x4c]
movzx edx, dx
mov rdi, qword [rsp + 0x98]
xor rdx, rdi
sub rcx, rdx
imul rax, rcx
mov byte [rsp + 0x44], al
movzx eax, byte [0x1401771d3]
mov ecx, dword [0x1401772dc]
lea eax, [rax + rcx - 0xeb]
mov byte [0x1401771d3], al
mov eax, dword [rsp + 0xf8]
add eax, 0xed00
mov dword [rsp + 0x47c], eax
lea rax, [rsp + 0x548]
lea rcx, str.WSTrustMexResponse
mov rdi, rax
mov rsi, rcx
mov ecx, 0x26
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x548]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
cdqe
mov qword [0x1401772a0], rax
mov eax, dword [rsp + 0xf8]
add eax, 0x7a47
mov dword [rsp + 0x27c], eax
movzx eax, word [0x14017728c]
movzx eax, ax
movsx ecx, word [0x14017722c]
cmp eax, ecx
jle 0x140051de6
movzx eax, byte [0x14017722b]
sub eax, 0xeb6cd98
mov byte [rsp + 0x42], al
movzx eax, byte [str.ORtlGetDeviceFamily]
add eax, 0x6ab0d935
mov byte [rsp + 0x40], al
lea rax, [rsp + 0x530]
lea rcx, str.GetCurrentProcessI
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x530]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [0x14017729c], eax
mov eax, dword [rsp + 0x27c]
mov ecx, dword [rsp + 0x27c]
or eax, ecx
xor eax, 0x7bb5
mov dword [rsp + 0x370], eax
mov eax, dword [0x140177250]
mov ecx, dword [rsp + 0x74]
add eax, ecx
mov ecx, dword [0x140177250]
add ecx, eax
mov eax, ecx
mov dword [0x140177250], eax
movsx eax, byte [0x1401771a3]
imul eax, eax, 0x86
mov word [rsp + 0x64], ax
mov eax, dword [0x140371450]
mov dword [rsp + 0xfc], eax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
not eax
cmp eax, 0xfa00
jge 0x140051e8b
mov dword [rsp + 0x280], 1
jmp 0x140051e96
mov dword [rsp + 0x280], 0
movzx eax, word [rsp + 0x50]
movzx eax, ax
not eax
cmp eax, dword [rsp + 0x280]
jle 0x14005205d
mov eax, dword [0x140177250]
movzx ecx, byte [0x1401771ff]
cmp eax, ecx
jne 0x140051ecb
mov dword [rsp + 0x288], 1
jmp 0x140051ed6
mov dword [rsp + 0x288], 0
mov eax, dword [0x140177250]
cmp eax, 0x50
jne 0x140051eee
mov dword [rsp + 0x284], 1
jmp 0x140051ef9
mov dword [rsp + 0x284], 0
mov eax, dword [rsp + 0x284]
cmp dword [rsp + 0x288], eax
jle 0x140051faf
mov eax, dword [rsp + 0x78]
test eax, eax
jne 0x140051f22
mov dword [rsp + 0x28c], 1
jmp 0x140051f2d
mov dword [rsp + 0x28c], 0
mov eax, dword [rsp + 0x84]
test eax, eax
jne 0x140051f45
mov dword [rsp + 0x290], 1
jmp 0x140051f50
mov dword [rsp + 0x290], 0
movsx eax, byte [rsp + 0x44]
movzx ecx, word [0x1401772d0]
movsx ecx, cx
sub eax, ecx
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
mov edx, dword [rsp + 0x28c]
sub edx, ecx
mov ecx, edx
imul eax, ecx
imul eax, dword [rsp + 0x290]
not eax
mov word [rsp + 0x58], ax
movzx eax, word [rsp + 0x50]
movzx eax, ax
movzx ecx, word [rsp + 0x58]
movzx ecx, cx
imul eax, ecx
movzx ecx, word [rsp + 0x50]
movzx ecx, cx
add ecx, eax
mov eax, ecx
mov word [rsp + 0x50], ax
jmp 0x14005205b
movabs rax, 0xb4357b0f716a4
cmp qword [rsp + 0x88], rax
jl 0x140051fd0
mov dword [rsp + 0x29c], 1
jmp 0x140051fdb
mov dword [rsp + 0x29c], 0
movzx eax, word [0x1401772d4]
cwde
test eax, eax
jne 0x140051ff4
mov dword [rsp + 0x294], 1
jmp 0x140051fff
mov dword [rsp + 0x294], 0
mov eax, dword [rsp + 0x80]
cmp eax, dword [rsp + 0x294]
jb 0x14005201c
mov dword [rsp + 0x298], 1
jmp 0x140052027
mov dword [rsp + 0x298], 0
mov eax, dword [rsp + 0x298]
cmp dword [rsp + 0x29c], eax
jl 0x14005205b
mov dword [rsp + 0x74], 0xe9dcbb8f
mov qword [0x140177290], 2
mov eax, dword [rsp + 0x7c]
mov ecx, dword [rsp + 0x80]
sub eax, ecx
mov dword [rsp + 0x7c], eax
jmp 0x1400520b6
movzx eax, word [0x14017728c]
movzx eax, ax
mov ecx, dword [0x1401772c8]
imul eax, ecx
mov eax, eax
mov qword [rsp + 0x98], rax
movzx eax, byte [0x1401771ff]
movzx ecx, byte [0x14017722b]
xor eax, ecx
movzx ecx, word [rsp + 0x58]
movzx ecx, cx
sub eax, ecx
mov word [rsp + 0x70], ax
movzx eax, word [0x1401772d4]
movsx rax, ax
movabs rcx, 0xfea2a07314c36
add rax, rcx
mov word [rsp + 0x64], ax
mov eax, dword [rsp + 0xfc]
add eax, 0x68
mov dword [rsp + 0x348], eax
movzx eax, byte [0x140177216]
mov ecx, dword [rsp + 0x6c]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x6c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x6c], eax
movsx eax, byte [rsp + 0x40]
test eax, eax
jne 0x1400520f8
mov dword [rsp + 0x2a0], 1
jmp 0x140052103
mov dword [rsp + 0x2a0], 0
movzx eax, byte [0x1401771fe]
movsx eax, al
test eax, eax
jne 0x14005211f
mov qword [rsp + 0x3d8], 1
jmp 0x14005212b
mov qword [rsp + 0x3d8], 0
movsx eax, byte [rsp + 0x44]
not eax
xor eax, dword [rsp + 0x2a0]
cdqe
mov rcx, qword [0x140177290]
mov rdx, qword [rsp + 0x3d8]
add rdx, rcx
mov rcx, rdx
add rax, rcx
mov qword [0x140177270], rax
movsx eax, word [rsp + 0x60]
movzx ecx, byte [0x1401771a6]
add eax, ecx
mov word [rsp + 0x60], ax
mov eax, dword [rsp + 0xfc]
add eax, 0xb794
mov dword [rsp + 0x34c], eax
movzx eax, byte [0x1401771fe]
movsx eax, al
movsx ecx, word [0x14017722c]
sub eax, ecx
mov byte [0x1401771fe], al
movzx eax, word [0x1401772d4]
cwde
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
sub eax, ecx
mov word [0x1401772d4], ax
mov eax, dword [rsp + 0xfc]
add eax, 0xd7
mov dword [rsp + 0x480], eax
movzx eax, byte [rsp + 0x43]
movsx eax, al
movzx ecx, word [rsp + 0x70]
movzx ecx, cx
add eax, ecx
mov byte [rsp + 0x43], al
mov rax, qword [0x140177280]
add rax, 0x8b
mov dword [rsp + 0x6c], eax
mov byte [0x14017722b], 0xc3
mov eax, dword [rsp + 0x348]
or eax, 0x99
mov ecx, dword [rsp + 0x34c]
imul ecx, ecx, 0xec4c
add eax, ecx
cdqe
mov ecx, 0xa972f0a1
xor rax, rcx
mov ecx, dword [rsp + 0x2a4]
mov edx, dword [rsp + 0x2a4]
sub ecx, edx
movsxd rcx, ecx
add rax, rcx
mov dword [rsp + 0x374], eax
movzx eax, byte [str.__._AV__JsonPrimitiv]
movsx eax, al
test eax, eax
je 0x140052253
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x2a8], eax
jmp 0x14005225e
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x2a8], eax
movzx eax, byte [rsp + 0x2a8]
mov byte [rsp + 0x40], al
mov eax, dword [0x1401771d4]
mov eax, eax
movzx ecx, word [0x14017728c]
movzx ecx, cx
movabs rdx, 0xfff68ea652ed7aa7
add rax, rdx
add rax, rcx
mov word [0x14017728c], ax
mov eax, dword [0x140371450]
mov dword [rsp + 0x100], eax
movzx eax, word [0x14017728c]
mov word [0x14017722c], ax
movsx eax, byte [rsp + 0x40]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x100]
add eax, 0x392c
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0x100]
add eax, 0xb3
mov dword [rsp + 0x484], eax
movzx eax, byte [str.ORtlGetDeviceFamily]
movzx ecx, byte [0x14017722b]
cmp eax, ecx
jle 0x1400522ff
mov dword [rsp + 0x2b0], 1
jmp 0x14005230a
mov dword [rsp + 0x2b0], 0
movzx eax, byte [str.ORtlGetDeviceFamily]
cmp eax, 0x54
jle 0x140052323
mov dword [rsp + 0x2ac], 1
jmp 0x14005232e
mov dword [rsp + 0x2ac], 0
mov eax, dword [rsp + 0x2ac]
cmp dword [rsp + 0x2b0], eax
jg 0x140052343
jmp 0x1400523f3
movzx eax, byte [str.__._AV__JsonPrimitiv]
movsx eax, al
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
mov edx, dword [rsp + 0x6c]
add edx, ecx
mov ecx, edx
xor eax, ecx
test eax, eax
jne 0x140052371
mov qword [rsp + 0x3e0], 1
jmp 0x14005237d
mov qword [rsp + 0x3e0], 0
mov rax, qword [rsp + 0x3e0]
mov rcx, qword [0x140177290]
sub rcx, rax
mov rax, rcx
test rax, rax
jne 0x1400523a5
mov qword [rsp + 0x3f8], 1
jmp 0x1400523b1
mov qword [rsp + 0x3f8], 0
mov rax, qword [rsp + 0x3f8]
mov qword [0x1401772a0], rax
movzx eax, byte [rsp + 0x41]
test eax, eax
je 0x1400523da
mov rax, qword [0x1401772c0]
mov qword [rsp + 0x3e8], rax
jmp 0x1400523e8
movsx rax, word [rsp + 0x5c]
mov qword [rsp + 0x3e8], rax
mov eax, dword [rsp + 0x3e8]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x100]
add eax, 0xc8
mov dword [rsp + 0x488], eax
mov eax, dword [0x1401772bc]
cdqe
mov rcx, qword [rsp + 0x98]
cmp rax, rcx
jle 0x140052473
movzx eax, word [rsp + 0x68]
movabs rcx, 0x6408fefbac954
imul rax, rcx
mov word [rsp + 0x70], ax
movzx eax, word [rsp + 0x50]
movzx eax, ax
movzx ecx, byte [0x1401771a6]
and eax, ecx
mov word [rsp + 0x50], ax
mov rax, qword [0x1401772c0]
movabs rcx, 0xf80b95bb426cc
add rax, rcx
movzx ecx, word [rsp + 0x48]
movsx rcx, cx
sub rcx, rax
mov rax, rcx
mov word [rsp + 0x48], ax
jmp 0x1400524e3
movsx eax, word [rsp + 0x60]
sub eax, 0x97
mov dword [rsp + 0x80], eax
movsx eax, word [0x14017722c]
mov ecx, dword [rsp + 0x78]
sub ecx, eax
mov eax, ecx
movzx ecx, word [rsp + 0x50]
movzx ecx, cx
movzx edx, byte [0x1401771ff]
not edx
sub ecx, edx
xor eax, ecx
mov dword [0x1401772c8], eax
cmp qword [0x140177290], 0
je 0x1400524c8
movzx eax, word [0x140177258]
mov dword [rsp + 0x2b4], eax
jmp 0x1400524d4
movsx eax, byte [rsp + 0x40]
mov dword [rsp + 0x2b4], eax
movzx eax, word [rsp + 0x2b4]
mov word [0x140177254], ax
mov eax, dword [rsp + 0x104]
mov ecx, dword [rsp + 0x104]
add eax, ecx
mov ecx, dword [rsp + 0x104]
add ecx, 0xea
xor eax, ecx
xor eax, 0x49e8
mov dword [rsp + 0x378], eax
mov eax, dword [rsp + 0x80]
test eax, eax
je 0x140052548
movzx eax, byte [0x140371450]
mov byte [0x1401771ff], al
movzx eax, word [rsp + 0x54]
cwde
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
imul eax, ecx
movzx ecx, word [rsp + 0x54]
movsx ecx, cx
add ecx, eax
mov eax, ecx
mov word [rsp + 0x54], ax
mov eax, dword [0x140371450]
mov dword [rsp + 0x108], eax
mov eax, dword [rsp + 0x84]
mov ecx, dword [rsp + 0x74]
cmp eax, ecx
jne 0x1400525a3
movzx eax, word [0x14017725c]
cwde
sub eax, 0x2ff7ae68
mov byte [0x140177216], al
movzx eax, byte [rsp + 0x42]
movzx eax, al
add eax, 0x8cde3696
mov byte [0x14017722b], al
movzx eax, byte [rsp + 0x43]
movsx eax, al
and eax, 0x87
mov word [0x140177288], ax
jmp 0x1400526e6
cmp dword [0x14017729c], 0
jne 0x1400525b9
mov dword [rsp + 0x2bc], 1
jmp 0x1400525c4
mov dword [rsp + 0x2bc], 0
movzx eax, word [rsp + 0x70]
movzx eax, ax
test eax, eax
jne 0x1400525dd
mov dword [rsp + 0x2b8], 1
jmp 0x1400525e8
mov dword [rsp + 0x2b8], 0
mov eax, dword [rsp + 0x2b8]
cmp dword [rsp + 0x2bc], eax
je 0x140052605
mov dword [rsp + 0x2c0], 1
jmp 0x140052610
mov dword [rsp + 0x2c0], 0
movzx eax, word [rsp + 0x54]
cwde
cmp dword [rsp + 0x2c0], eax
je 0x1400526e6
movzx eax, byte [0x1401771a6]
test eax, eax
jne 0x14005263b
mov dword [rsp + 0x2c4], 1
jmp 0x140052646
mov dword [rsp + 0x2c4], 0
movzx eax, byte [0x14017722f]
movsx eax, al
not eax
movzx ecx, word [rsp + 0x50]
movzx ecx, cx
imul eax, ecx
test eax, eax
jne 0x14005266e
mov dword [rsp + 0x2c8], 1
jmp 0x140052679
mov dword [rsp + 0x2c8], 0
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov ecx, dword [rsp + 0x2c4]
sub ecx, eax
mov eax, ecx
sub eax, dword [rsp + 0x2c8]
cdqe
movzx ecx, word [rsp + 0x50]
movzx ecx, cx
movzx edx, word [0x1401772d4]
movsx edx, dx
sub ecx, edx
movsxd rcx, ecx
imul rdx, qword [0x1401772a8], 0x6297
add rcx, rdx
not rcx
xor rax, rcx
mov qword [rsp + 0x98], rax
movzx eax, word [0x140177288]
movsx rax, ax
movabs rcx, 0xfcec4d8bed0fc
xor rax, rcx
mov dword [0x14017726c], eax
mov eax, dword [rsp + 0x108]
add eax, 0x28
mov dword [rsp + 0x350], eax
mov eax, dword [0x140177264]
add eax, 0x3c184b15
mov word [rsp + 0x58], ax
movsx rax, byte [rsp + 0x44]
movabs rcx, 0x5991495b4a839
sub rax, rcx
mov word [0x140177288], ax
movzx eax, byte [0x1401771a6]
mov ecx, dword [rsp + 0x80]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x108]
add eax, 0xce
mov dword [rsp + 0x354], eax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
cmp qword [0x1401772a8], rax
jne 0x14005276b
mov dword [rsp + 0x2cc], 1
jmp 0x140052776
mov dword [rsp + 0x2cc], 0
movzx eax, byte [rsp + 0x42]
movzx eax, al
not eax
mov ecx, 0x7b
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x2cc]
not ecx
cmp eax, ecx
je 0x14005284b
movzx eax, word [rsp + 0x58]
movzx eax, ax
test eax, eax
je 0x140052825
movzx eax, byte [rsp + 0x42]
movzx eax, al
movzx ecx, byte [str.ORtlGetDeviceFamily]
cmp eax, ecx
jl 0x1400527c6
mov dword [rsp + 0x2d0], 1
jmp 0x1400527d1
mov dword [rsp + 0x2d0], 0
mov eax, dword [rsp + 0x2d0]
not eax
test eax, eax
je 0x140052825
movzx eax, word [rsp + 0x54]
cwde
xor eax, dword [0x14017726c]
movzx ecx, word [rsp + 0x54]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x54], ax
mov eax, dword [0x140371450]
mov dword [rsp + 0x78], eax
movzx eax, byte [rsp + 0x41]
movzx ecx, word [0x1401772b8]
movsx ecx, cx
add eax, ecx
movzx ecx, byte [rsp + 0x41]
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x41], al
jmp 0x140052849
movsx eax, word [rsp + 0x64]
and eax, 0x9cd6
mov word [0x1401772d0], ax
mov rax, qword [0x140177290]
add rax, 0x9e
mov dword [0x140177250], eax
jmp 0x1400528c0
movzx eax, word [rsp + 0x54]
cwde
test eax, eax
je 0x1400528c0
movsx eax, word [rsp + 0x64]
movsx ecx, byte [rsp + 0x40]
xor eax, ecx
movsx ecx, word [rsp + 0x5c]
movsx edx, word [0x140177260]
add ecx, edx
movsx edx, byte [rsp + 0x44]
imul ecx, edx
sub eax, ecx
mov byte [0x14017722b], al
mov eax, dword [0x1401771d4]
not eax
mov ecx, 0xffff0c25
sub ecx, eax
mov eax, ecx
movzx ecx, byte [rsp + 0x41]
movsx edx, word [rsp + 0x5c]
imul ecx, edx
imul eax, ecx
mov dword [0x1401772dc], eax
mov rax, qword [0x140177278]
mov ecx, dword [0x1401772c8]
mov ecx, ecx
lea rax, [rcx + rax - 0x75]
mov dword [0x1401772c8], eax
mov eax, dword [rsp + 0x108]
add eax, 0xee2
mov dword [rsp + 0x48c], eax
movzx eax, word [rsp + 0x58]
movzx eax, ax
movzx ecx, word [0x140177254]
cmp eax, ecx
je 0x140052959
movsx eax, byte [rsp + 0x44]
test eax, eax
je 0x140052959
mov rax, qword [0x1401772c0]
mov ecx, 0x8d37fb73
imul rax, rcx
mov word [rsp + 0x54], ax
mov eax, dword [0x1401772bc]
test eax, eax
je 0x14005291b
mov eax, dword [rsp + 0x6c]
mov dword [rsp + 0x2d4], eax
jmp 0x140052929
movzx eax, byte [0x140177216]
mov dword [rsp + 0x2d4], eax
mov eax, dword [rsp + 0x2d4]
mov dword [0x140177264], eax
mov rax, qword [0x140177280]
sub rax, 0x56
movzx ecx, word [0x140177288]
movsx rcx, cx
sub rcx, rax
mov rax, rcx
mov word [0x140177288], ax
movzx ecx, word [0x140177260]
call fcn.140039800
mov byte [rsp + 0x43], al
mov rax, qword [rsp + 0x98]
cmp rax, 0x66b5
jne 0x140052986
mov dword [rsp + 0x2e0], 1
jmp 0x140052991
mov dword [rsp + 0x2e0], 0
cmp dword [0x140177268], 0
jne 0x1400529a7
mov dword [rsp + 0x2d8], 1
jmp 0x1400529b2
mov dword [rsp + 0x2d8], 0
movsx eax, byte [rsp + 0x40]
cmp dword [rsp + 0x2d8], eax
jle 0x1400529cd
mov dword [rsp + 0x2dc], 1
jmp 0x1400529d8
mov dword [rsp + 0x2dc], 0
mov eax, dword [rsp + 0x2dc]
cmp dword [rsp + 0x2e0], eax
jle 0x140052a2f
mov eax, dword [rsp + 0x78]
movzx ecx, al
call fcn.14003abb0
movsx ax, al
mov word [0x140177258], ax
movzx eax, word [0x140177258]
test eax, eax
jge 0x140052a2d
movsx eax, word [rsp + 0x5c]
sub eax, 0xc5
mov dword [0x140177268], eax
mov rax, qword [0x1401772a0]
sub rax, 0x922e
mov byte [0x14017722b], al
jmp 0x140052a8c
movzx eax, word [rsp + 0x50]
movzx eax, ax
mov dword [0x14017729c], eax
movzx eax, byte [rsp + 0x43]
movsx eax, al
movsx ecx, word [rsp + 0x60]
not ecx
add eax, ecx
test eax, eax
jne 0x140052a60
mov qword [rsp + 0x3f0], 1
jmp 0x140052a6c
mov qword [rsp + 0x3f0], 0
mov rax, qword [rsp + 0x3f0]
mov qword [0x1401772c0], rax
movzx eax, word [rsp + 0x54]
cwde
sub eax, 0x81
mov dword [0x1401772bc], eax
mov eax, dword [rsp + 0x350]
mov ecx, dword [rsp + 0x354]
or eax, ecx
xor eax, 0x231
mov ecx, dword [rsp + 0x2e4]
mov edx, dword [rsp + 0x2e4]
sub ecx, edx
mov edx, dword [rsp + 0x358]
mov edi, dword [rsp + 0x35c]
xor edx, edi
imul ecx, edx
sub eax, ecx
mov dword [rsp + 0x37c], eax
mov rax, qword [rsp + 0x398]
cmp qword [rsp + 0xb0], rax
jne 0x140052df1
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov eax, dword [0x140371450]
mov dword [rsp + 0x10c], eax
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov ecx, 4
imul rcx, rcx, 0x23
lea rdx, [0x140473310]
mov dword [rdx + rcx], eax
mov eax, dword [rsp + 0x7c]
cdqe
movabs rcx, 0xcb78cee859864
sub rax, rcx
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x98], rax
movzx eax, byte [str.__._AV__JsonPrimitiv]
movsx eax, al
movsx ecx, byte [rsp + 0x40]
add eax, ecx
mov byte [str.__._AV__JsonPrimitiv], al
mov eax, dword [rsp + 0x360]
mov ecx, dword [rsp + 0x10c]
add eax, ecx
mov dword [rsp + 0x490], eax
movzx eax, byte [rsp + 0x42]
movzx eax, al
mov rcx, qword [rsp + 0x88]
imul rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x88]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x364]
mov ecx, dword [rsp + 0x10c]
add eax, ecx
mov dword [rsp + 0x390], eax
movzx eax, word [rsp + 0x58]
movzx eax, ax
test eax, eax
je 0x140052c04
movzx eax, word [rsp + 0x50]
movzx eax, ax
test eax, eax
je 0x140052bf4
movzx eax, word [0x14017728c]
movzx eax, ax
movzx ecx, word [rsp + 0x70]
movzx ecx, cx
add eax, ecx
mov word [0x14017728c], ax
mov rax, qword [0x140177248]
sub rax, 0xae49
mov dword [rsp + 0x78], eax
jmp 0x140052c04
movsx eax, word [rsp + 0x5c]
sub eax, 0xbd
mov byte [str.__._AV__JsonPrimitiv], al
mov eax, dword [rsp + 0x368]
mov ecx, dword [rsp + 0x10c]
add eax, ecx
mov dword [rsp + 0x494], eax
mov eax, dword [rsp + 0x390]
mov ecx, dword [rsp + 0x370]
mov edx, dword [rsp + 0x374]
xor ecx, edx
mov edx, dword [rsp + 0x378]
mov edi, dword [rsp + 0x37c]
sub edx, edi
sub ecx, edx
cmp eax, ecx
je 0x140052df1
lea rax, [rsp + 0x4c0]
lea rcx, str.OperationCode
mov rdi, rax
mov rsi, rcx
mov ecx, 0xe
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x4c0]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov word [rsp + 0x54], ax
movzx eax, byte [rsp + 0x42]
movzx eax, al
mov qword [rsp + 0x20], 0xd3
mov r9d, eax
xor r8d, r8d
xor edx, edx
mov ecx, 0xac
call fcn.1400389f0
mov word [0x1401772d0], ax
movzx eax, word [0x1401772d0]
cwde
test eax, eax
jg 0x140052cbe
mov dword [rsp + 0x2ec], 1
jmp 0x140052cc9
mov dword [rsp + 0x2ec], 0
movzx eax, word [0x1401772d0]
cwde
cmp eax, 0x2a
jg 0x140052ce3
mov dword [rsp + 0x2e8], 1
jmp 0x140052cee
mov dword [rsp + 0x2e8], 0
mov eax, dword [rsp + 0x2e8]
cmp dword [rsp + 0x2ec], eax
jl 0x140052d44
movzx eax, byte [str.ORtlGetDeviceFamily]
test eax, eax
je 0x140052d3f
mov eax, dword [rsp + 0x7c]
sub eax, 0x2a4c8828
mov word [0x1401772b8], ax
movzx eax, word [rsp + 0x54]
cwde
xor eax, 0xc8
cdqe
mov qword [0x1401772c0], rax
movsx eax, byte [0x1401771a3]
add eax, 0x8319006a
mov dword [0x140177268], eax
jmp 0x140052dd9
movsx eax, word [rsp + 0x5c]
cmp eax, 0x2224
jl 0x140052d5d
mov dword [rsp + 0x2f0], 1
jmp 0x140052d68
mov dword [rsp + 0x2f0], 0
mov eax, dword [rsp + 0x2f0]
add eax, 0x64b09baa
test eax, eax
je 0x140052dd9
jmp 0x14004fe71
movzx eax, byte [rsp + 0x42]
movzx eax, al
add eax, 0x66
test eax, eax
jne 0x140052e0f
mov byte [rsp + 0x95], 1
jmp 0x140052e17
mov byte [rsp + 0x95], 0
movzx eax, byte [rsp + 0x95]
mov byte [0x1401771ff], al
movabs rax, 0xf25f1caad427
mov rcx, qword [rsp + 0x88]
xor rcx, rax
mov rax, rcx
mov word [0x14017722c], ax
movzx eax, byte [0x1401771a7]
movsx eax, al
sub eax, 0x146c06a2
mov word [rsp + 0x54], ax
xor eax, eax
add rsp, 0x578
pop rdi
pop rsi
ret