Function at 0x1400fe600
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x528
movzx eax, word [0x140177fa8]
movsx rax, ax
mov qword [rsp + 0x478], rax
mov eax, dword [0x140177fac]
mov word [rsp + 0x4c], ax
mov dword [rsp + 0x70], 0xae
mov eax, 0x5902
mov word [rsp + 0x48], ax
movzx eax, byte [0x141720c44]
mov byte [rsp + 0x45], al
mov byte [rsp + 0x42], 0x3b
mov byte [rsp + 0x46], 0xaa
movzx eax, word [0x140177fc8]
mov word [rsp + 0x54], ax
mov eax, 0xa3
mov word [rsp + 0x58], ax
movzx eax, word [0x140177fd0]
mov byte [rsp + 0x44], al
movsx rax, word [0x140177fc0]
mov qword [rsp + 0x80], rax
movzx eax, byte [0x140177f1b]
mov dword [rsp + 0x64], eax
movzx eax, byte [0x140177f02]
movsx eax, al
mov dword [rsp + 0x6c], eax
mov byte [rsp + 0x43], 0xdf
mov eax, 0xc00e
mov word [rsp + 0x5c], ax
mov dword [rsp + 0x78], 0xee2feb6d
mov eax, dword [0x140177fd4]
mov dword [rsp + 0x60], eax
movzx eax, byte [0x140177f03]
mov byte [rsp + 0x40], al
movzx eax, byte [0x140177edf]
mov byte [rsp + 0x41], al
mov dword [rsp + 0x68], 0x16
mov qword [rsp + 0x88], 0x3fa8
mov qword [rsp + 0xa0], 0x1b78c087
mov eax, dword [0x140177fac]
cdqe
mov qword [rsp + 0x90], rax
movzx eax, word [0x140177f64]
mov word [rsp + 0x50], ax
mov rax, qword [0x140177fb0]
mov word [rsp + 0x354], ax
movzx eax, word [0x140177f1c]
mov word [rsp + 0x334], ax
mov byte [rsp + 0x149], pe_nt_image_headers64
mov dword [rsp + 0x468], 0xc2ca9336
movabs rax, 0xb7653d63c0329
mov qword [rsp + 0x470], rax
mov byte [rsp + 0x148], 0x2b
mov rax, qword [0x140177f40]
mov byte [rsp + 0x108], al
mov byte [rsp + 0x14b], 0xa8
mov eax, dword [0x140177fc8]
mov dword [rsp + 0x448], eax
mov eax, dword [0x140177f6c]
mov byte [rsp + 0x14a], al
mov dword [rsp + 0x44c], 0x707a
mov eax, dword [0x140177fc8]
mov dword [rsp + 0x444], eax
imul rax, qword [0x140177f38], 0xecb9
mov byte [0x140177eb7], al
movzx eax, byte [0x141720c44]
movzx eax, al
add eax, 0x3587
mov word [rsp + 0x58], ax
mov eax, dword [0x141720c40]
mov dword [rsp + 0x10c], eax
mov eax, dword [0x140177f04]
not eax
imul eax, dword [rsp + 0x64]
test eax, eax
jne 0x1400fe803
mov qword [rsp + 0x368], 1
jmp 0x1400fe80f
mov qword [rsp + 0x368], 0
movzx eax, word [0x140177f74]
movzx eax, ax
mov rcx, qword [rsp + 0x88]
imul rax, rcx
not rax
mov rcx, qword [rsp + 0x368]
sub rcx, rax
mov rax, rcx
test rax, rax
jne 0x1400fe848
mov dword [rsp + 0x300], 1
jmp 0x1400fe853
mov dword [rsp + 0x300], 0
movzx eax, byte [rsp + 0x40]
movzx eax, al
not eax
mov ecx, dword [rsp + 0x300]
sub ecx, eax
mov eax, ecx
cdqe
mov qword [0x140177f40], rax
mov eax, 0x411f
mov word [rsp + 0x4c], ax
mov eax, dword [rsp + 0x10c]
add eax, 0x107
mov dword [rsp + 0x358], eax
cmp qword [rsp + 0xa0], 0
je 0x1400fe8b2
movzx eax, byte [rsp + 0x40]
movzx eax, al
test eax, eax
je 0x1400fe8b2
mov dword [rsp + 0x304], 1
jmp 0x1400fe8bd
mov dword [rsp + 0x304], 0
imul eax, dword [rsp + 0x304], 0x3cb2
test eax, eax
je 0x1400fe9eb
movzx ecx, byte [0x140177f1c]
call fcn.1400fbfb0
movzx eax, al
mov qword [0x140177f50], rax
mov rax, qword [0x140177f50]
test rax, rax
je 0x1400fe93b
movzx eax, byte [0x140177f02]
movsx eax, al
imul eax, eax, 0x16c7054c
mov byte [0x140177e8e], al
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x88]
sub rax, rcx
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0xa0]
add rax, 0x7f
mov qword [0x140177fa0], rax
jmp 0x1400fe9eb
xor eax, eax
test eax, eax
je 0x1400fe9a1
mov rax, qword [0x140177f98]
add rax, 0x516e
movsxd rcx, dword [0x140177f04]
sub rcx, rax
mov rax, rcx
mov dword [0x140177f04], eax
movzx eax, word [0x140177f60]
movabs rcx, 0xc71ba6da41fdc
add rax, rcx
mov rcx, qword [0x140177f98]
sub rcx, rax
mov rax, rcx
mov qword [0x140177f98], rax
movzx eax, byte [0x140177ede]
movsx eax, al
sub eax, 0x83
mov word [0x140177fc0], ax
jmp 0x1400fe9eb
movzx eax, byte [rsp + 0x42]
movsx eax, al
test eax, eax
je 0x1400fe9eb
cmp qword [rsp + 0xa0], 0
je 0x1400fe9eb
movzx eax, word [rsp + 0x50]
movsx rax, ax
mov rcx, qword [0x140177f90]
imul rcx, rax
mov rax, rcx
mov qword [0x140177f90], rax
mov eax, dword [0x140177fac]
add eax, 0x61a4
cdqe
mov qword [rsp + 0x80], rax
mov eax, dword [rsp + 0x10c]
add eax, 0x20f
mov dword [rsp + 0xc4], eax
cmp qword [rsp + 0xa0], 0
je 0x1400febaa
movsxd rax, dword [rsp + 0x64]
cmp rax, qword [0x140177fc8]
jle 0x1400fea28
mov dword [rsp + 0x30c], 1
jmp 0x1400fea33
mov dword [rsp + 0x30c], 0
cmp dword [rsp + 0x64], 0x1d
jle 0x1400fea47
mov dword [rsp + 0x308], 1
jmp 0x1400fea52
mov dword [rsp + 0x308], 0
mov eax, dword [rsp + 0x308]
cmp dword [rsp + 0x30c], eax
jne 0x1400feb14
movzx eax, word [rsp + 0x58]
test eax, eax
je 0x1400fea80
movzx eax, word [0x140177fd0]
cwde
mov dword [rsp + 0x310], eax
jmp 0x1400fea91
movzx eax, byte [0x140177f02]
movsx eax, al
mov dword [rsp + 0x310], eax
mov eax, dword [rsp + 0x310]
mov dword [0x140177f1c], eax
cmp dword [0x140177fd4], 0
jne 0x1400feab5
mov qword [rsp + 0x360], 1
jmp 0x1400feac1
mov qword [rsp + 0x360], 0
mov eax, dword [rsp + 0x68]
movzx ecx, byte [rsp + 0x42]
movsx rcx, cl
mov rdx, qword [0x140177f38]
add rdx, rcx
mov rcx, rdx
xor rax, rcx
not rax
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x360]
add rdx, rcx
mov rcx, rdx
movzx edx, byte [rsp + 0x43]
movsx rdx, dl
xor rcx, rdx
xor rax, rcx
mov dword [rsp + 0x68], eax
mov byte [rsp + 0x40], 0x78
jmp 0x1400feba8
movzx eax, byte [0x140177e8e]
movzx eax, al
test eax, eax
je 0x1400feb5e
movzx eax, word [0x140177f60]
test eax, eax
je 0x1400feb3e
mov rax, qword [0x140177f40]
mov qword [rsp + 0x370], rax
jmp 0x1400feb4f
movzx eax, byte [rsp + 0x43]
movsx rax, al
mov qword [rsp + 0x370], rax
mov eax, dword [rsp + 0x370]
mov dword [0x140177f68], eax
jmp 0x1400feba8
mov rax, qword [rsp + 0x88]
not rax
test rax, rax
je 0x1400feba8
movzx eax, word [0x140177f60]
mov ecx, dword [rsp + 0x60]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x60]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x6c]
add rax, qword [rsp + 0xa0]
mov byte [rsp + 0x42], al
mov eax, dword [0x140177f7c]
add eax, 0x78182de7
mov dword [rsp + 0x70], eax
jmp 0x1400febcf
movzx eax, word [rsp + 0x58]
sub eax, dword [0x140177f5c]
test eax, eax
je 0x1400febcf
mov eax, 0xe557
mov word [0x140177f74], ax
mov eax, 0xd1
mov word [rsp + 0x5c], ax
mov eax, dword [rsp + 0x10c]
add eax, 0x303
mov dword [rsp + 0x1ec], eax
mov eax, dword [0x141720c40]
mov dword [rsp + 0x110], eax
mov eax, dword [rsp + 0x78]
add eax, 0x14ed66b3
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0x64]
imul eax, dword [rsp + 0x64]
mov byte [rsp + 0x41], al
mov eax, dword [rsp + 0x110]
add eax, 0x3af
mov dword [rsp + 0x35c], eax
movzx eax, byte [rsp + 0x40]
movzx eax, al
add eax, dword [0x140177f68]
movzx ecx, byte [rsp + 0x40]
movzx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x40], al
movzx eax, byte [0x140177f02]
movsx eax, al
test eax, eax
je 0x1400fec59
movzx eax, byte [rsp + 0x42]
movsx eax, al
mov dword [rsp + 0x314], eax
jmp 0x1400fec68
movzx eax, byte [rsp + 0x45]
movzx eax, al
mov dword [rsp + 0x314], eax
mov eax, dword [rsp + 0x314]
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x110]
add eax, 0x305
mov dword [rsp + 0x20c], eax
mov eax, dword [0x140177f1c]
mov ecx, dword [rsp + 0x64]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x64], eax
mov eax, dword [0x141720c40]
mov dword [0x140177f70], eax
mov eax, dword [rsp + 0x110]
add eax, 0x124
mov dword [rsp + 0x124], eax
movzx eax, word [0x140177f58]
cwde
imul eax, eax, 0xe29c
mov word [rsp + 0x48], ax
mov eax, 4
imul rax, rax, 0x552c
lea rcx, [0x14192ea50]
mov eax, dword [rcx + rax]
mov qword [0x140177fb0], rax
mov eax, dword [0x141720c40]
mov dword [rsp + 0x114], eax
movzx eax, byte [0x140177ede]
movsx eax, al
cmp dword [rsp + 0x70], eax
jne 0x1400fed11
mov dword [rsp + 0x164], 1
jmp 0x1400fed1c
mov dword [rsp + 0x164], 0
cmp dword [rsp + 0x70], 0x56
jne 0x1400fed30
mov dword [rsp + 0x160], 1
jmp 0x1400fed3b
mov dword [rsp + 0x160], 0
mov eax, dword [rsp + 0x160]
cmp dword [rsp + 0x164], eax
jg 0x1400fed9c
movzx eax, byte [rsp + 0x45]
movzx eax, al
movabs rcx, 0xbd8eb552a162
add rax, rcx
mov qword [rsp + 0xa0], rax
movzx eax, word [0x141720c40]
mov word [rsp + 0x54], ax
movzx eax, byte [rsp + 0x41]
mov rcx, qword [0x140177f50]
add rcx, rax
mov rax, rcx
mov rcx, qword [0x140177f50]
sub rcx, rax
mov rax, rcx
mov qword [0x140177f50], rax
jmp 0x1400fede0
movzx eax, word [rsp + 0x5c]
not eax
test eax, eax
jne 0x1400fedb8
movabs rax, 0x8298ea0a6ae19
xor ecx, ecx
cmp rcx, rax
je 0x1400fede0
movzx eax, byte [rsp + 0x43]
movsx eax, al
movzx ecx, byte [rsp + 0x42]
movsx ecx, cl
lea eax, [rcx + rax - 0x6a2a16e9]
mov byte [rsp + 0x42], al
movzx eax, word [0x140177f64]
mov dword [0x140177f70], eax
mov eax, dword [rsp + 0x114]
add eax, 0x101
mov dword [rsp + 0x450], eax
mov eax, dword [0x140177e64]
mov eax, eax
mov rcx, qword [0x140177f98]
imul rcx, rax
mov rax, rcx
mov rcx, qword [0x140177f98]
xor rcx, rax
mov rax, rcx
mov qword [0x140177f98], rax
mov eax, dword [0x140177fac]
cdqe
mov rcx, qword [0x140177f48]
sub rcx, rax
mov rax, rcx
mov qword [0x140177f48], rax
movzx eax, word [rsp + 0x58]
sub eax, 0x76
cdqe
mov rcx, qword [0x140177f80]
add rcx, rax
mov rax, rcx
mov qword [0x140177f80], rax
mov eax, dword [rsp + 0x114]
add eax, 0x35a
mov dword [rsp + 0x234], eax
mov rax, qword [0x140177f90]
test rax, rax
je 0x1400fee87
mov rax, qword [0x140177f40]
mov qword [rsp + 0x378], rax
jmp 0x1400fee96
mov rax, qword [0x140177f50]
mov qword [rsp + 0x378], rax
mov rax, qword [rsp + 0x378]
mov qword [0x140177f38], rax
mov eax, dword [rsp + 0x70]
sub eax, 0xa0
mov byte [0x140177e8f], al
movzx eax, word [0x140177fd0]
cwde
add eax, 0xdb6a4105
mov byte [0x140177f02], al
mov eax, dword [rsp + 0x114]
add eax, 0x3a7
mov dword [rsp + 0x12c], eax
movsx rax, word [0x140177fc0]
movzx ecx, byte [0x140177f02]
movsx rcx, cl
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, rcx
xor edx, edx
xor ecx, ecx
call fcn.1400fc2b0
mov qword [0x140177fc8], rax
movzx eax, byte [0x140177f1b]
test eax, eax
je 0x1400fef39
cmp dword [rsp + 0x64], 0
je 0x1400fef39
mov dword [rsp + 0x168], 1
jmp 0x1400fef44
mov dword [rsp + 0x168], 0
mov eax, dword [0x140177f04]
cmp dword [rsp + 0x168], eax
jge 0x1400fef60
mov dword [rsp + 0x178], 1
jmp 0x1400fef6b
mov dword [rsp + 0x178], 0
movzx eax, word [rsp + 0x4c]
movzx eax, ax
test eax, eax
jne 0x1400fef84
mov dword [rsp + 0x16c], 1
jmp 0x1400fef8f
mov dword [rsp + 0x16c], 0
movzx eax, word [rsp + 0x50]
cwde
cmp eax, dword [rsp + 0x16c]
jne 0x1400fefab
mov dword [rsp + 0x170], 1
jmp 0x1400fefb6
mov dword [rsp + 0x170], 0
cmp dword [rsp + 0x170], 0x1549
je 0x1400fefd0
mov dword [rsp + 0x174], 1
jmp 0x1400fefdb
mov dword [rsp + 0x174], 0
mov eax, dword [rsp + 0x174]
cmp dword [rsp + 0x178], eax
jg 0x1400ff048
movzx eax, byte [rsp + 0x41]
cmp dword [0x140177fd4], eax
jne 0x1400ff018
mov dword [rsp + 0x60], 0xfad838d3
mov eax, dword [0x140177fac]
sub eax, 0x4042
mov dword [rsp + 0x68], eax
mov byte [0x140177eb7], 1
jmp 0x1400ff043
mov eax, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
movzx eax, byte [0x140177f1b]
xor eax, 0x8d
mov word [rsp + 0x5c], ax
jmp 0x1400ff1f4
cmp dword [rsp + 0x60], 0
jne 0x1400ff05c
mov dword [rsp + 0x17c], 1
jmp 0x1400ff067
mov dword [rsp + 0x17c], 0
mov eax, dword [0x140177fac]
test eax, eax
jne 0x1400ff07e
mov dword [rsp + 0x180], 1
jmp 0x1400ff089
mov dword [rsp + 0x180], 0
movzx eax, word [rsp + 0x48]
cwde
mov ecx, dword [rsp + 0x17c]
add ecx, eax
mov eax, ecx
cmp eax, dword [rsp + 0x180]
jge 0x1400ff0d2
movzx eax, word [rsp + 0x5c]
add eax, 0xd6
mov dword [rsp + 0x64], eax
movzx eax, word [0x140177f60]
movabs rcx, 0x9130fc4b202f6
add rax, rcx
mov qword [rsp + 0x88], rax
jmp 0x1400ff1f4
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
jne 0x1400ff1c1
cmp dword [rsp + 0x60], 0
je 0x1400ff0f8
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov dword [rsp + 0x184], eax
jmp 0x1400ff106
movzx eax, word [0x140177f60]
mov dword [rsp + 0x184], eax
movzx eax, word [rsp + 0x184]
mov word [0x140177f60], ax
movsx eax, byte [rsp + 0x44]
xor eax, dword [0x140177fd4]
not eax
mov word [0x140177fa8], ax
cmp dword [rsp + 0x6c], 0
jne 0x1400ff13d
mov dword [rsp + 0x188], 1
jmp 0x1400ff148
mov dword [rsp + 0x188], 0
movzx eax, byte [rsp + 0x41]
imul eax, dword [rsp + 0x188]
cdqe
mov rcx, qword [rsp + 0x80]
not rcx
mov edx, 0xfd05410b
sub rcx, rdx
sub rax, rcx
test rax, rax
jne 0x1400ff180
mov qword [rsp + 0x380], 1
jmp 0x1400ff18c
mov qword [rsp + 0x380], 0
movzx eax, byte [rsp + 0x45]
movzx eax, al
and eax, dword [0x140177f70]
cdqe
movzx ecx, word [rsp + 0x48]
movsx rcx, cx
add rcx, qword [rsp + 0xa0]
sub rax, rcx
sub rax, qword [rsp + 0x380]
not rax
mov byte [rsp + 0x46], al
jmp 0x1400ff1f4
cmp qword [0x140177f38], 0
jne 0x1400ff1f4
mov eax, dword [0x140177e64]
mov eax, eax
mov rcx, qword [0x140177f40]
imul rcx, rax
mov rax, rcx
mov qword [0x140177f40], rax
movzx eax, byte [rsp + 0x42]
movsx eax, al
mov dword [rsp + 0x60], eax
mov eax, dword [0x141720c40]
mov dword [rsp + 0x118], eax
movzx eax, byte [0x140177ede]
movsx eax, al
movzx ecx, byte [0x140177e8e]
movzx ecx, cl
add eax, ecx
mov byte [0x140177ede], al
movzx eax, byte [0x140177f02]
movsx rax, al
mov rcx, qword [0x140177f38]
not rcx
add rax, rcx
test rax, rax
jne 0x1400ff247
mov dword [rsp + 0x18c], 1
jmp 0x1400ff252
mov dword [rsp + 0x18c], 0
mov eax, dword [rsp + 0x18c]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x118]
add eax, 0x221
mov dword [rsp + 0x288], eax
movzx eax, byte [rsp + 0x46]
movsx eax, al
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
movzx edx, word [0x140177f64]
imul ecx, edx
add eax, ecx
cdqe
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x90]
imul rcx, rdx
xor rax, rcx
mov dword [rsp + 0x64], eax
movzx eax, byte [0x140177edf]
mov byte [rsp + 0x44], al
movzx eax, word [rsp + 0x54]
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x118]
add eax, 0x2a0
mov dword [rsp + 0x454], eax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
add eax, 0x50bc
mov byte [rsp + 0x45], al
mov rax, qword [0x140177f80]
test rax, rax
je 0x1400ff2fa
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x190], eax
jmp 0x1400ff307
mov eax, dword [0x140177f1c]
mov dword [rsp + 0x190], eax
mov eax, dword [rsp + 0x190]
mov dword [0x140177f1c], eax
mov eax, dword [rsp + 0x118]
add eax, 0x30
mov dword [rsp + 0x458], eax
movzx eax, word [0x140177f60]
test eax, eax
je 0x1400ff35d
movzx eax, word [rsp + 0x4c]
movzx eax, ax
sub eax, 0xc1
mov byte [0x140177f03], al
movsxd rax, dword [0x140177f1c]
movabs rcx, 0x9074b02d5072e
and rax, rcx
mov dword [0x140177f68], eax
mov eax, dword [0x141720c40]
mov dword [rsp + 0x11c], eax
mov eax, dword [rsp + 0x11c]
add eax, 0x3b8
mov dword [rsp + 0x13c], eax
movzx eax, byte [rsp + 0x40]
movzx eax, al
movabs rcx, 0xdf8792cc8827c
add rax, rcx
mov dword [rsp + 0x60], eax
movzx eax, byte [rsp + 0x41]
movzx ecx, byte [rsp + 0x41]
add eax, ecx
mov byte [rsp + 0x41], al
mov eax, dword [rsp + 0x11c]
add eax, 0x221
mov dword [rsp + 0x45c], eax
lea rax, [rsp + 0x4d0]
lea rcx, str.SetProperty_TS_PRO
mov rdi, rax
mov rsi, rcx
mov ecx, 0x26
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x4d0]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov word [0x140177fc0], ax
mov eax, dword [rsp + 0x11c]
add eax, 0x5c
mov dword [rsp + 0x328], eax
movzx eax, word [rsp + 0x54]
movzx ecx, byte [0x140177f02]
movsx ecx, cl
cmp eax, ecx
jne 0x1400ff465
movzx eax, byte [0x140177ede]
movsx rax, al
mov rcx, qword [0x140177f48]
xor rcx, rax
mov rax, rcx
mov qword [0x140177f48], rax
movzx eax, word [0x140177f60]
test eax, eax
je 0x1400ff446
movsx eax, byte [rsp + 0x44]
mov dword [rsp + 0x194], eax
jmp 0x1400ff454
movsx eax, word [0x140177fc0]
mov dword [rsp + 0x194], eax
movsxd rax, dword [rsp + 0x194]
mov qword [0x140177f80], rax
jmp 0x1400ff490
movzx eax, word [rsp + 0x48]
cwde
add eax, 0x4715
mov word [0x140177f64], ax
mov rax, qword [0x140177fb0]
movabs rcx, 0xc955ccf04c7f3
sub rax, rcx
mov word [rsp + 0x4c], ax
movzx eax, word [rsp + 0x48]
cwde
cmp dword [rsp + 0x68], eax
jae 0x1400ff4a9
mov dword [rsp + 0x19c], 1
jmp 0x1400ff4b4
mov dword [rsp + 0x19c], 0
cmp dword [rsp + 0x68], 0x1d
jae 0x1400ff4c8
mov dword [rsp + 0x198], 1
jmp 0x1400ff4d3
mov dword [rsp + 0x198], 0
mov eax, dword [rsp + 0x198]
cmp dword [rsp + 0x19c], eax
jg 0x1400ff515
lea rax, [rsp + 0x4f8]
lea rcx, str.UserRealmResponse:
mov rdi, rax
mov rsi, rcx
mov ecx, 0x26
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x4f8]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [0x140177fd4], eax
jmp 0x1400ff564
movzx eax, byte [0x140177f02]
movsx eax, al
sub eax, 0x5eec
mov byte [rsp + 0x45], al
mov eax, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x64]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x64], eax
movzx eax, word [0x140177fd0]
cwde
not eax
add eax, dword [rsp + 0x78]
mov eax, eax
movzx ecx, byte [rsp + 0x41]
mov rdx, qword [rsp + 0x80]
sub rcx, rdx
not rcx
sub rax, rcx
mov dword [0x140177f04], eax
movzx eax, word [0x140177f64]
test eax, eax
je 0x1400ff571
jmp 0x1400ff5dd
movzx eax, byte [0x140177f02]
movsx eax, al
add eax, dword [rsp + 0x78]
movzx ecx, byte [0x140177f02]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [0x140177f02], al
mov rax, qword [0x140177fa0]
shl rax, 6
mov qword [rsp + 0x88], rax
cmp qword [0x140177f88], 0
je 0x1400ff5c0
movzx eax, byte [0x140177ede]
mov byte [rsp + 0x98], al
jmp 0x1400ff5cc
movzx eax, byte [rsp + 0x43]
mov byte [rsp + 0x98], al
movsx rax, byte [rsp + 0x98]
mov qword [rsp + 0x90], rax
movzx eax, word [rsp + 0x58]
mov r9d, dword [0x140177fac]
xor r8d, r8d
mov edx, 0x7c
mov ecx, eax
call fcn.1400fc690
mov word [0x140177f78], ax
movzx eax, word [0x140177f78]
test eax, eax
je 0x1400ff716
mov rax, qword [0x140177fa0]
xor r9d, r9d
movzx r8d, ax
mov dx, 0x1d
xor ecx, ecx
call fcn.1400fdcf0
cwde
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0
je 0x1400ff642
mov eax, 0xc22d
mov word [rsp + 0x54], ax
jmp 0x1400ff711
movzx eax, byte [0x140177eb6]
test eax, eax
je 0x1400ff711
cmp dword [0x140177fd8], 0
jne 0x1400ff667
mov dword [rsp + 0x1a0], 1
jmp 0x1400ff672
mov dword [rsp + 0x1a0], 0
mov eax, dword [0x140177f6c]
mov ecx, dword [rsp + 0x1a0]
add ecx, eax
mov eax, ecx
test eax, eax
jne 0x1400ff694
mov dword [rsp + 0x1a4], 1
jmp 0x1400ff69f
mov dword [rsp + 0x1a4], 0
movzx eax, byte [0x140177e8f]
movzx eax, al
movzx ecx, word [0x140177fa8]
movsx ecx, cx
add eax, ecx
not eax
movzx ecx, word [rsp + 0x54]
sub ecx, dword [0x140177f68]
add eax, ecx
movzx ecx, byte [0x140177eb6]
add ecx, dword [0x140177fd8]
mov edx, dword [rsp + 0x1a4]
add edx, ecx
mov ecx, edx
sub eax, ecx
mov word [rsp + 0x50], ax
movzx eax, word [rsp + 0x50]
cwde
sar eax, 6
mov byte [rsp + 0x40], al
movzx eax, byte [rsp + 0x46]
movsx eax, al
movzx ecx, word [0x140177f60]
add eax, ecx
movzx ecx, byte [rsp + 0x46]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x46], al
jmp 0x1400ff836
movzx eax, word [0x140177fa8]
cwde
test eax, eax
je 0x1400ff80a
mov eax, dword [0x140177f7c]
mov ecx, dword [rsp + 0x64]
add ecx, eax
mov eax, ecx
test eax, eax
jne 0x1400ff746
mov qword [rsp + 0x388], 1
jmp 0x1400ff752
mov qword [rsp + 0x388], 0
movzx eax, byte [rsp + 0x43]
movsx eax, al
not eax
cdqe
mov rcx, qword [rsp + 0x90]
add rcx, rax
mov rax, rcx
xor rax, qword [rsp + 0x388]
test rax, rax
jne 0x1400ff787
mov qword [rsp + 0x390], 1
jmp 0x1400ff793
mov qword [rsp + 0x390], 0
mov eax, dword [0x140177f5c]
sub eax, 0xbcc71ac5
mov eax, eax
movzx ecx, word [0x140177fa8]
movsx rcx, cx
mov rdx, qword [rsp + 0x88]
add rcx, rdx
add rax, rcx
imul rax, qword [rsp + 0x390]
mov word [rsp + 0x5c], ax
movzx eax, word [0x140177f64]
movzx ecx, word [0x140177fa8]
movsx ecx, cx
imul eax, ecx
movzx ecx, word [0x140177f64]
sub ecx, eax
mov eax, ecx
mov word [0x140177f64], ax
mov eax, 4
imul rax, rax, 4
lea rcx, [0x14192ea18]
mov eax, dword [rcx + rax]
mov qword [rsp + 0x90], rax
jmp 0x1400ff836
mov rax, qword [rsp + 0x80]
test rax, rax
jne 0x1400ff836
movzx eax, byte [rsp + 0x41]
dec al
mov byte [rsp + 0x41], al
mov eax, dword [rsp + 0x64]
mov ecx, dword [0x140177fd4]
add ecx, eax
mov eax, ecx
mov dword [0x140177fd4], eax
mov qword [rsp + 0x3d0], 0
movzx r9d, word [rsp + 0x60]
mov r8w, 0x89
xor edx, edx
xor ecx, ecx
call fcn.1400fdcf0
mov byte [rsp + 0x43], al
movzx eax, word [rsp + 0x50]
movsx rax, ax
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
mov rdx, qword [rsp + 0xa0]
add rdx, rcx
mov rcx, rdx
cmp rax, rcx
je 0x1400ff88b
mov dword [rsp + 0x1b4], 1
jmp 0x1400ff896
mov dword [rsp + 0x1b4], 0
mov eax, dword [0x140177e64]
mov eax, eax
cmp rax, qword [rsp + 0xa0]
jbe 0x1400ff8b5
mov dword [rsp + 0x1ac], 1
jmp 0x1400ff8c0
mov dword [rsp + 0x1ac], 0
mov rax, qword [0x140177f80]
test rax, rax
je 0x1400ff8e3
mov eax, dword [rsp + 0x78]
not eax
test eax, eax
je 0x1400ff8e3
mov dword [rsp + 0x1a8], 1
jmp 0x1400ff8ee
mov dword [rsp + 0x1a8], 0
mov eax, dword [rsp + 0x1a8]
cmp dword [rsp + 0x1ac], eax
jl 0x1400ff90b
mov dword [rsp + 0x1b0], 1
jmp 0x1400ff916
mov dword [rsp + 0x1b0], 0
mov eax, dword [rsp + 0x1b0]
cmp dword [rsp + 0x1b4], eax
jle 0x1400ff946
mov eax, dword [rsp + 0x64]
xor eax, 0x1cc72f39
mov byte [rsp + 0x40], al
movzx eax, word [rsp + 0x58]
sub eax, 0x626
cdqe
mov qword [0x140177f98], rax
mov qword [rsp + 0x318], 8
movzx eax, word [0x140177f58]
cwde
cmp eax, dword [rsp + 0x78]
je 0x1400ff9bb
mov byte [rsp + 0x41], 0x44
mov eax, 0xe6349c40
mov rcx, qword [rsp + 0xa0]
add rcx, rax
mov rax, rcx
mov dword [rsp + 0x6c], eax
movzx eax, byte [rsp + 0x40]
movzx eax, al
test eax, eax
je 0x1400ff99c
movzx eax, byte [0x140177eb7]
movzx eax, al
mov qword [rsp + 0x398], rax
jmp 0x1400ff9ac
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x398], rax
mov eax, dword [rsp + 0x398]
mov dword [0x140177f70], eax
jmp 0x1400ff9d6
mov eax, dword [0x141720c40]
mov dword [0x140177fd8], eax
mov eax, dword [0x140177f1c]
add eax, 0x91c9
mov byte [rsp + 0x41], al
mov dword [rsp + 0x140], 0
mov eax, dword [rsp + 0x60]
mov qword [rsp + 0x80], rax
mov rax, qword [0x140177f98]
sub rax, 0x4b59
mov dword [rsp + 0x64], eax
movzx eax, word [rsp + 0x50]
cwde
not eax
cdqe
mov rcx, qword [0x140177f80]
cmp rax, rcx
je 0x1400ffa72
movsx eax, byte [rsp + 0x44]
sub eax, 0xa758
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x4c], ax
movzx eax, word [0x140177fa8]
movsx rax, ax
mov rcx, qword [0x140177fa0]
sub rax, rcx
movzx ecx, word [rsp + 0x50]
movsx rcx, cx
mov rdx, qword [rsp + 0x90]
imul rdx, rcx
mov rcx, rdx
sub rax, rcx
mov byte [0x140177ede], al
mov eax, dword [rsp + 0x6c]
shr eax, 6
mov dword [rsp + 0x70], eax
jmp 0x1400ffab6
mov byte [rsp + 0x41], 4
mov rax, qword [rsp + 0x80]
add rax, qword [0x140177fc8]
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
sub rax, rcx
mov qword [rsp + 0x88], rax
mov eax, dword [0x140177e64]
mov eax, eax
mov rcx, qword [0x140177fa0]
imul rcx, rax
mov rax, rcx
mov qword [0x140177fa0], rax
movzx eax, byte [0x141720c44]
movzx eax, al
cmp eax, dword [0x140177f1c]
jge 0x1400ffad5
mov dword [rsp + 0x1bc], 1
jmp 0x1400ffae0
mov dword [rsp + 0x1bc], 0
movzx eax, byte [rsp + 0x43]
movsx eax, al
cmp eax, 0x22
jne 0x1400ffafa
mov dword [rsp + 0x1b8], 1
jmp 0x1400ffb05
mov dword [rsp + 0x1b8], 0
mov eax, dword [rsp + 0x1b8]
cmp dword [rsp + 0x1bc], eax
jl 0x1400ffb22
mov dword [rsp + 0x1cc], 1
jmp 0x1400ffb2d
mov dword [rsp + 0x1cc], 0
movzx eax, word [rsp + 0x54]
test eax, eax
jne 0x1400ffb43
mov dword [rsp + 0x1c0], 1
jmp 0x1400ffb4e
mov dword [rsp + 0x1c0], 0
mov eax, dword [0x140177f70]
cmp dword [rsp + 0x1c0], eax
jge 0x1400ffb6a
mov dword [rsp + 0x1c4], 1
jmp 0x1400ffb75
mov dword [rsp + 0x1c4], 0
mov eax, dword [rsp + 0x1c4]
not eax
cmp eax, 0x23
jl 0x1400ffb90
mov dword [rsp + 0x1c8], 1
jmp 0x1400ffb9b
mov dword [rsp + 0x1c8], 0
mov eax, dword [rsp + 0x1c8]
not eax
cmp dword [rsp + 0x1cc], eax
jge 0x1400ffbeb
movzx eax, word [rsp + 0x5c]
add eax, 0x12e2
mov ecx, dword [0x140177f1c]
sub ecx, eax
mov eax, ecx
mov dword [0x140177f1c], eax
mov byte [0x140177edf], 0
movsxd rax, dword [0x140177f1c]
mov rcx, qword [0x140177f88]
sub rcx, rax
mov rax, rcx
mov qword [0x140177f88], rax
jmp 0x1400ffc27
movzx eax, byte [rsp + 0x40]
movzx eax, al
mov rcx, qword [0x140177fa0]
cmp rax, rcx
jne 0x1400ffc27
movzx eax, byte [0x141720c40]
mov byte [0x140177f03], al
movzx eax, word [rsp + 0x50]
mov ecx, 1
imul rcx, rcx, 0xf3e
lea rdx, [0x14192bd90]
mov byte [rdx + rcx], al
mov dword [rsp + 0xa8], 0
movzx eax, byte [0x140177edf]
movsx eax, al
cmp dword [rsp + 0x6c], eax
ja 0x1400ffc77
lea rax, [rsp + 0x4b0]
lea rcx, str.invalid_scope
mov rdi, rax
mov rsi, rcx
mov ecx, 0x1c
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x4b0]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
cdqe
mov qword [0x140177fa0], rax
jmp 0x1400ffce1
movzx eax, byte [rsp + 0x40]
movzx eax, al
movzx ecx, byte [0x140177edf]
movsx ecx, cl
cmp eax, ecx
jne 0x1400ffc9a
mov dword [rsp + 0x1d0], 1
jmp 0x1400ffca5
mov dword [rsp + 0x1d0], 0
mov eax, dword [rsp + 0x1d0]
not eax
test eax, eax
je 0x1400ffce1
mov rax, qword [0x140177f38]
inc rax
mov qword [0x140177f38], rax
mov eax, dword [rsp + 0x60]
sub eax, 0x3114ea99
mov byte [0x140177e8e], al
movzx eax, word [rsp + 0x54]
sub eax, 0x69
mov word [0x140177f78], ax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x63
mov ecx, dword [0x140177f88]
call fcn.1400fc690
mov eax, eax
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
test rax, rax
jle 0x1400ffd1b
mov dword [rsp + 0x1d8], 1
jmp 0x1400ffd26
mov dword [rsp + 0x1d8], 0
mov rax, qword [rsp + 0x80]
cmp rax, 0xb
jle 0x1400ffd41
mov dword [rsp + 0x1d4], 1
jmp 0x1400ffd4c
mov dword [rsp + 0x1d4], 0
mov eax, dword [rsp + 0x1d4]
mov dword [rsp + 0x350], 0x40
mov eax, dword [0x140177f6c]
test eax, eax
je 0x1400ffd79
mov rax, qword [0x140177f48]
mov qword [rsp + 0x3a0], rax
jmp 0x1400ffd88
movzx eax, byte [0x140177f03]
mov qword [rsp + 0x3a0], rax
mov eax, dword [rsp + 0x3a0]
mov dword [0x140177f6c], eax
movzx eax, word [rsp + 0x50]
movsx rax, ax
mov rcx, qword [0x140177f48]
sub rcx, rax
mov rax, rcx
mov qword [0x140177f48], rax
mov dword [rsp + 0x33c], 4
mov dword [rsp + 0x32c], 0x20
lea rax, [rsp + 0x480]
lea rcx, str.The_resource_owner
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x480]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov word [rsp + 0x48], ax
mov dword [rsp + 0x330], 0x100
mov rax, qword [0x140177f80]
test rax, rax
jne 0x1400ffe25
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
jne 0x1400ffe25
mov dword [rsp + 0x1dc], 0
jmp 0x1400ffe30
mov dword [rsp + 0x1dc], 1
movsx eax, word [0x140177fc0]
cmp eax, dword [rsp + 0x1dc]
jne 0x1400ffe56
mov eax, dword [0x140177fac]
test eax, eax
jne 0x1400ffe56
cmp dword [0x140177fc4], 0x3823
jle 0x1400ffe7e
movzx eax, word [rsp + 0x58]
mov ecx, 4
imul rcx, rcx, 0x26
lea rdx, [0x14188af10]
mov dword [rdx + rcx], eax
movzx eax, byte [0x141720c40]
mov byte [rsp + 0x40], al
jmp 0x1400fff11
movzx eax, word [0x140177f60]
cmp eax, dword [0x140177fd4]
ja 0x1400ffe9b
mov qword [rsp + 0x3a8], 1
jmp 0x1400ffea7
mov qword [rsp + 0x3a8], 0
mov rax, qword [rsp + 0x90]
xor rax, 0xa5
cmp qword [rsp + 0x3a8], rax
jbe 0x1400fff11
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
je 0x1400ffedc
movzx eax, byte [0x140177edf]
movsx eax, al
mov dword [rsp + 0x1e0], eax
jmp 0x1400ffee9
mov eax, dword [0x140177e64]
mov dword [rsp + 0x1e0], eax
mov eax, dword [rsp + 0x1e0]
mov dword [0x140177fac], eax
mov rax, qword [0x140177fb0]
dec rax
mov qword [0x140177fb0], rax
mov eax, 1
mov word [rsp + 0x50], ax
mov byte [rsp + 0xc8], 0x58
mov byte [rsp + 0xc9], 0x48
mov byte [rsp + 0xca], 0x83
mov byte [rsp + 0xcb], 0xe8
mov byte [rsp + 0xcc], 5
mov byte [rsp + 0xcd], 0x50
mov byte [rsp + 0xce], 0x51
mov byte [rsp + 0xcf], 0x52
mov byte [rsp + 0xd0], 0x41
mov byte [rsp + 0xd1], 0x50
mov byte [rsp + 0xd2], 0x41
mov byte [rsp + 0xd3], 0x51
mov byte [rsp + 0xd4], 0x41
mov byte [rsp + 0xd5], 0x52
mov byte [rsp + 0xd6], 0x41
mov byte [rsp + 0xd7], 0x53
mov byte [rsp + 0xd8], 0x48
mov byte [rsp + 0xd9], 0xb9
mov byte [rsp + 0xda], 0x88
mov byte [rsp + 0xdb], 0x77
mov byte [rsp + 0xdc], 0x66
mov byte [rsp + 0xdd], 0x55
mov byte [rsp + 0xde], 0x44
mov byte [rsp + 0xdf], 0x33
mov byte [rsp + 0xe0], 0x22
mov byte [rsp + 0xe1], 0x11
mov byte [rsp + 0xe2], 0x90
mov byte [rsp + 0xe3], 0x90
mov byte [rsp + 0xe4], 0x48
mov byte [rsp + 0xe5], 0x89
mov byte [rsp + 0xe6], 8
mov byte [rsp + 0xe7], 0x90
mov byte [rsp + 0xe8], 0x90
mov byte [rsp + 0xe9], 0x48
mov byte [rsp + 0xea], 0x83
mov byte [rsp + 0xeb], 0xec
mov byte [rsp + 0xec], 0x40
mov byte [rsp + 0xed], 0x90
mov byte [rsp + 0xee], 0x90
mov byte [rsp + 0xef], 0xe8
mov byte [rsp + 0xf0], 0x11
mov byte [rsp + 0xf1], 0
mov byte [rsp + 0xf2], 0
mov byte [rsp + 0xf3], 0
mov byte [rsp + 0xf4], 0x48
mov byte [rsp + 0xf5], 0x83
mov byte [rsp + 0xf6], 0xc4
mov byte [rsp + 0xf7], 0x40
mov byte [rsp + 0xf8], 0x41
mov byte [rsp + 0xf9], 0x5b
mov byte [rsp + 0xfa], 0x41
mov byte [rsp + 0xfb], 0x5a
mov byte [rsp + 0xfc], 0x41
mov byte [rsp + 0xfd], 0x59
mov byte [rsp + 0xfe], 0x41
mov byte [rsp + 0xff], 0x58
mov byte [rsp + 0x100], 0x5a
mov byte [rsp + 0x101], 0x59
mov byte [rsp + 0x102], 0x58
mov byte [rsp + 0x103], 0xff
mov byte [rsp + 0x104], 0xe0
mov byte [rsp + 0x105], 0x90
mov rcx, qword [rsp + 0x548]
call fcn.1400605c0
mov qword [rsp + 0x3b0], rax
cmp qword [rsp + 0x3b0], 0
jne 0x14010025c
movzx eax, word [0x140177fa8]
cwde
test eax, eax
je 0x140100140
mov eax, dword [0x140177f68]
mov dword [rsp + 0x1e4], eax
jmp 0x14010014b
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x1e4], eax
mov eax, dword [rsp + 0x1e4]
mov dword [0x140177fd8], eax
movzx eax, word [0x140177f60]
dec ax
mov word [0x140177f60], ax
cmp dword [0x140177fd4], 0
je 0x14010018a
movzx eax, byte [0x141720c40]
mov byte [rsp + 0x41], al
mov eax, dword [rsp + 0x6c]
mov dword [rsp + 0x68], eax
jmp 0x140100255
movzx eax, byte [0x140177e8f]
movzx eax, al
cmp dword [0x140177f68], eax
jge 0x1401001b5
movzx eax, byte [rsp + 0x40]
movzx eax, al
test eax, eax
je 0x1401001b5
mov dword [rsp + 0x1e8], 1
jmp 0x1401001c0
mov dword [rsp + 0x1e8], 0
mov eax, dword [rsp + 0x1e8]
not eax
test eax, eax
je 0x140100207
movzx eax, byte [0x140177edf]
movsx eax, al
mov ecx, dword [0x140177f6c]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x140177f6c]
add ecx, eax
mov eax, ecx
mov dword [0x140177f6c], eax
movzx eax, byte [0x140177e8e]
movzx eax, al
add eax, 0x7e3e
mov word [rsp + 0x4c], ax
jmp 0x140100255
xor eax, eax
test eax, eax
je 0x140100255
movzx eax, byte [0x140177ede]
movsx eax, al
mov ecx, 4
imul rcx, rcx, 0x31
lea rdx, [0x141816230]
mov dword [rdx + rcx], eax
mov rax, qword [rsp + 0x88]
add rax, qword [rsp + 0xa0]
mov ecx, dword [0x140177fc4]
mov edx, dword [rsp + 0x64]
xor edx, ecx
mov ecx, edx
movsxd rcx, ecx
imul rax, rcx
mov dword [0x140177f5c], eax
xor eax, eax
jmp 0x1401031e4
mov rdx, qword [rsp + 0x550]
mov rcx, qword [rsp + 0x3b0]
call fcn.140061a50
mov qword [rsp + 0x150], rax
mov eax, dword [rsp + 0x1ec]
xor eax, 0x5a
mov ecx, dword [rsp + 0xc4]
mov edx, dword [rsp + 0x358]
add ecx, edx
or eax, ecx
mov ecx, dword [rsp + 0x1ec]
mov edx, dword [rsp + 0xc4]
sub ecx, edx
mov edx, dword [rsp + 0xc4]
mov edi, dword [rsp + 0xc4]
add edx, edi
add ecx, edx
cmp eax, ecx
je 0x140100974
cmp qword [rsp + 0x150], 0
jne 0x140100974
cmp dword [0x140177f1c], 0
je 0x14010031f
movzx eax, word [rsp + 0x54]
test eax, eax
je 0x14010031f
mov eax, dword [0x140177fac]
sub eax, 0xd
mov dword [0x140177f04], eax
mov eax, dword [rsp + 0x68]
not eax
movzx ecx, byte [0x140177edf]
movsx ecx, cl
xor eax, ecx
mov word [rsp + 0x54], ax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
sub eax, 0x3b39f06b
cdqe
mov qword [rsp + 0x80], rax
jmp 0x140100381
movzx eax, byte [0x140177ede]
movsx eax, al
movzx ecx, word [rsp + 0x5c]
cmp eax, ecx
jne 0x14010033e
movzx eax, byte [rsp + 0x46]
movsx eax, al
test eax, eax
je 0x140100381
mov rax, qword [0x140177f48]
add rax, 0x6917
mov dword [0x140177f70], eax
mov eax, 4
imul rax, rax, 0x1494
lea rcx, [0x141720c50]
mov eax, dword [rcx + rax]
mov ecx, dword [0x140177f5c]
sub ecx, eax
mov eax, ecx
mov dword [0x140177f5c], eax
mov dword [0x140177f7c], 0x64
mov eax, dword [0x141720c40]
mov dword [rsp + 0x120], eax
movzx eax, byte [rsp + 0x40]
movzx eax, al
cmp dword [rsp + 0x60], eax
jne 0x1401003a9
mov dword [rsp + 0x1f4], 1
jmp 0x1401003b4
mov dword [rsp + 0x1f4], 0
cmp dword [rsp + 0x60], 0x42
jne 0x1401003c8
mov dword [rsp + 0x1f0], 1
jmp 0x1401003d3
mov dword [rsp + 0x1f0], 0
mov eax, dword [rsp + 0x1f0]
cmp dword [rsp + 0x1f4], eax
jne 0x14010043a
mov eax, dword [0x140177fac]
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
cmp eax, ecx
jl 0x14010041b
mov eax, dword [0x141720c40]
mov qword [0x140177fb0], rax
mov eax, dword [0x140177fac]
add eax, 0x555a
mov ecx, dword [rsp + 0x6c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x6c], eax
jmp 0x140100438
movzx eax, word [rsp + 0x50]
cwde
sub eax, 0xb6
mov byte [rsp + 0x43], al
mov byte [rsp + 0x42], 0x52
movzx eax, word [rsp + 0x48]
mov byte [rsp + 0x42], al
jmp 0x1401004a4
xor eax, eax
cmp eax, 0xffff67f3
je 0x1401004a4
imul eax, dword [rsp + 0x60], 0x8926
mov eax, eax
mov rcx, qword [0x140177fb8]
add rcx, rax
mov rax, rcx
mov qword [0x140177fb8], rax
mov eax, 1
imul rax, rax, 0x2f
lea rcx, [0x1419dc230]
movzx eax, byte [rcx + rax]
movzx ecx, byte [0x140177ede]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [0x140177ede], al
mov eax, 1
imul rax, rax, 0x1191
lea rcx, [0x14192bd90]
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0x120]
add eax, 0x2a5
mov dword [rsp + 0x420], eax
movzx eax, word [rsp + 0x50]
movsx rax, ax
mov rcx, qword [0x140177f98]
imul rcx, rax
mov rax, rcx
movzx ecx, byte [rsp + 0x46]
movsx rcx, cl
imul rax, rcx
movzx ecx, word [0x140177f58]
movsx rcx, cx
add rax, rcx
test rax, rax
jne 0x1401004fd
mov eax, 1
mov word [rsp + 0xb8], ax
jmp 0x140100507
xor eax, eax
mov word [rsp + 0xb8], ax
movzx eax, word [rsp + 0xb8]
mov word [0x140177f60], ax
movzx eax, word [rsp + 0x5c]
mov ecx, dword [0x140177f7c]
sub ecx, eax
mov eax, ecx
mov dword [0x140177f7c], eax
movabs rax, 0x4cbc4f47ff743
mov rcx, qword [0x140177f98]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x120]
add eax, 0x2c3
mov dword [rsp + 0x424], eax
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
je 0x140100595
mov eax, dword [0x140177f6c]
imul eax, eax, 0xb908
mov eax, eax
mov rcx, qword [0x140177f88]
sub rcx, rax
mov rax, rcx
mov qword [0x140177f88], rax
mov eax, 0xffffcc6c
mov word [rsp + 0x50], ax
jmp 0x1401005e5
mov rax, qword [0x140177fb0]
add rax, qword [0x140177f98]
mov rcx, qword [0x140177fb0]
sub rcx, rax
mov rax, rcx
mov qword [0x140177fb0], rax
movabs rax, 0x765c163f694ce
mov rcx, qword [0x140177f88]
add rcx, rax
mov rax, rcx
mov byte [rsp + 0x42], al
mov rax, qword [0x140177f40]
sub rax, 0x315ef338
mov dword [0x140177f04], eax
mov eax, dword [rsp + 0x120]
add eax, 0x1ff
mov dword [rsp + 0x428], eax
xor eax, eax
cmp eax, 1
je 0x140100974
cmp dword [0x140177fd4], 0
je 0x14010061f
movzx eax, byte [rsp + 0x42]
movsx rax, al
mov qword [rsp + 0x3b8], rax
jmp 0x14010062f
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x3b8], rax
movzx eax, byte [rsp + 0x3b8]
mov byte [0x140177e8e], al
mov byte [0x140177eb6], 4
movzx eax, byte [rsp + 0x43]
movsx eax, al
xor r9d, r9d
mov r8d, 0x6f
xor edx, edx
mov ecx, eax
call fcn.1400fc690
mov word [rsp + 0x54], ax
movzx eax, word [rsp + 0x54]
test eax, eax
je 0x1401008f3
movzx eax, byte [rsp + 0x45]
movzx eax, al
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0x1b
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8d, eax
mov edx, 0xa4
xor ecx, ecx
call fcn.1400fc2b0
mov word [rsp + 0x58], ax
movzx eax, byte [rsp + 0x46]
movsx eax, al
movzx ecx, byte [0x140177eb6]
cmp eax, ecx
je 0x1401006ca
mov dword [rsp + 0x1f8], 1
jmp 0x1401006d5
mov dword [rsp + 0x1f8], 0
cmp dword [rsp + 0x1f8], 0
jge 0x1401006ec
mov dword [rsp + 0x208], 1
jmp 0x1401006f7
mov dword [rsp + 0x208], 0
movzx eax, word [0x140177fd0]
cwde
not eax
cmp eax, 0xcff00f32
ja 0x140100715
mov dword [rsp + 0x1fc], 1
jmp 0x140100720
mov dword [rsp + 0x1fc], 0
movzx eax, byte [0x140177f03]
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
cmp eax, ecx
jge 0x140100740
mov dword [rsp + 0x200], 1
jmp 0x14010074b
mov dword [rsp + 0x200], 0
mov eax, dword [rsp + 0x1fc]
not eax
cmp eax, dword [rsp + 0x200]
jl 0x14010076a
mov dword [rsp + 0x204], 1
jmp 0x140100775
mov dword [rsp + 0x204], 0
mov eax, dword [rsp + 0x204]
cmp dword [rsp + 0x208], eax
jne 0x1401007df
movzx eax, word [rsp + 0x58]
test eax, eax
je 0x1401007c3
movzx eax, word [0x140177f04]
mov word [rsp + 0x5c], ax
movzx eax, word [rsp + 0x48]
movsx rax, ax
mov rcx, qword [0x140177fb8]
sub rax, rcx
movzx ecx, word [rsp + 0x48]
movsx rcx, cx
add rcx, rax
mov rax, rcx
mov word [rsp + 0x48], ax
jmp 0x1401007da
mov eax, dword [rsp + 0x78]
sub eax, 0x5d1
mov eax, eax
mov qword [0x140177fa0], rax
mov byte [rsp + 0x40], 0xc9
jmp 0x1401008f1
movsx eax, word [0x140177fc0]
movzx ecx, word [0x140177f60]
cmp eax, ecx
jle 0x140100835
mov eax, 4
imul rax, rax, 8
lea rcx, [0x14192ea18]
movzx edx, byte [rsp + 0x41]
and edx, dword [rcx + rax]
mov eax, edx
mov byte [rsp + 0x41], al
movsx eax, word [0x140177fc0]
mov ecx, dword [0x140177e64]
xor ecx, eax
mov eax, ecx
mov ecx, dword [0x140177e64]
sub ecx, eax
mov eax, ecx
mov dword [0x140177e64], eax
jmp 0x1401008f1
xor eax, eax
cmp eax, 1
je 0x14010089e
mov rax, qword [rsp + 0x80]
movabs rcx, 0x594bb48a1cb98
add rax, rcx
mov byte [0x140177ede], al
mov eax, dword [rsp + 0x68]
sub rax, qword [0x140177f48]
movzx ecx, word [0x140177f64]
movzx edx, word [rsp + 0x50]
movsx edx, dx
imul ecx, edx
movsxd rcx, ecx
xor rax, rcx
mov dword [0x140177fac], eax
mov eax, 4
imul rax, rax, 0x48
lea rcx, [0x14188af10]
movsxd rax, dword [rcx + rax]
mov qword [rsp + 0x90], rax
jmp 0x1401008f1
movsxd rax, dword [0x140177f7c]
movabs rcx, 0x53d54cf9e5caf
cmp rax, rcx
jle 0x1401008f1
movsxd rax, dword [0x140177f04]
mov rcx, qword [rsp + 0x80]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
movzx eax, byte [0x140177e8e]
movzx eax, al
movabs rcx, 0x5271074b27197
imul rax, rcx
mov qword [rsp + 0x88], rax
jmp 0x14010096d
movzx eax, byte [rsp + 0x40]
movzx eax, al
not eax
test eax, eax
je 0x14010096d
mov eax, dword [0x140177f5c]
mov rcx, qword [0x140177fb8]
sub rax, rcx
mov ecx, dword [0x140177f5c]
sub rcx, rax
mov rax, rcx
mov dword [0x140177f5c], eax
movzx eax, byte [0x140177eb7]
movzx eax, al
mov rcx, qword [rsp + 0x90]
sub rax, rcx
movzx ecx, byte [0x140177eb7]
movzx ecx, cl
add rcx, rax
mov rax, rcx
mov byte [0x140177eb7], al
movzx eax, word [0x140177f74]
movzx eax, ax
movabs rcx, 0x1b21249cc76c5
sub rax, rcx
mov qword [rsp + 0x88], rax
xor eax, eax
jmp 0x1401031e4
mov rax, qword [rsp + 0x560]
add rax, 0x3e
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x150]
mov r8, qword [rsp + 0x540]
mov edx, 3
lea rcx, [0x140103fd0]
call fcn.1400adf10
mov qword [rsp + 0x158], rax
mov eax, dword [rsp + 0x35c]
mov ecx, dword [rsp + 0x124]
add eax, ecx
mov ecx, dword [rsp + 0x20c]
or ecx, 0x28c
sub eax, ecx
mov ecx, dword [rsp + 0x124]
mov edx, dword [rsp + 0x20c]
sub ecx, edx
mov edx, dword [rsp + 0x124]
or edx, ecx
mov ecx, edx
cmp eax, ecx
je 0x140100e59
mov eax, dword [rsp + 0x6c]
shr eax, 7
mov dword [0x140177f70], eax
movzx eax, word [rsp + 0x50]
movsx rax, ax
mov ecx, 8
imul rcx, rcx, 0x4c34
lea rdx, [0x14173aea0]
mov qword [rdx + rcx], rax
mov eax, dword [0x140177e64]
add eax, 0x482b
mov eax, eax
mov rcx, qword [rsp + 0x90]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x90], rax
cmp qword [rsp + 0x158], 0
jne 0x140100e59
movsxd rax, dword [0x140177fc4]
cmp qword [0x140177f48], rax
jg 0x140100a61
jmp 0x140100a7b
mov eax, dword [0x140177f7c]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x88]
imul rax, rax, 0x14
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x68]
movabs rcx, 0xce1be641f89e1
add rax, rcx
mov byte [rsp + 0x44], al
movzx eax, byte [rsp + 0x41]
mov rcx, qword [0x140177fb8]
sub rcx, rax
mov rax, rcx
mov qword [0x140177fb8], rax
movzx eax, byte [0x140177e8f]
movzx eax, al
movabs rcx, 0x7a5a2e3d7f7a4
add rax, rcx
mov dword [rsp + 0x6c], eax
mov eax, dword [0x141720c40]
mov dword [rsp + 0x128], eax
movzx eax, byte [rsp + 0x45]
movzx eax, al
test eax, eax
jne 0x140100aea
mov dword [rsp + 0x210], 1
jmp 0x140100af5
mov dword [rsp + 0x210], 0
mov eax, dword [rsp + 0x6c]
mov rcx, qword [0x140177f80]
imul rax, rcx
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
mov edx, dword [rsp + 0x210]
imul edx, ecx
mov ecx, edx
not ecx
movsxd rcx, ecx
sub rax, rcx
movzx ecx, word [0x140177f58]
movsx rcx, cx
sub rax, rcx
mov word [rsp + 0x5c], ax
mov dword [rsp + 0x64], 0xc709
movzx eax, byte [0x140177edf]
movsx eax, al
movzx ecx, word [rsp + 0x58]
xor eax, ecx
mov byte [0x140177edf], al
mov eax, dword [rsp + 0x128]
add eax, 0x3ec
mov dword [rsp + 0x340], eax
movzx eax, word [0x140177f58]
cwde
test eax, eax
je 0x140100c4c
movsx eax, byte [rsp + 0x44]
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
cmp eax, ecx
jl 0x140100b93
mov dword [rsp + 0x218], 1
jmp 0x140100b9e
mov dword [rsp + 0x218], 0
movsx eax, byte [rsp + 0x44]
cmp eax, 0xb
jl 0x140100bb5
mov dword [rsp + 0x214], 1
jmp 0x140100bc0
mov dword [rsp + 0x214], 0
mov eax, dword [rsp + 0x214]
cmp dword [rsp + 0x218], eax
jg 0x140100bdc
mov dword [0x140177f68], 0x5c
jmp 0x140100c4a
cmp dword [rsp + 0x70], 0
je 0x140100c4a
mov eax, dword [0x140177f5c]
movabs rcx, 0xc2194a260e003
cmp rax, rcx
jle 0x140100c4a
movzx eax, byte [rsp + 0x40]
movzx eax, al
mov ecx, dword [0x140177fc4]
add ecx, eax
mov eax, ecx
mov dword [0x140177fc4], eax
movzx eax, word [rsp + 0x48]
movsx rax, ax
movabs rcx, 0xd6eab0e60fe62
imul rax, rcx
mov rcx, qword [rsp + 0xa0]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x70]
sub eax, 0x26
mov dword [0x140177f5c], eax
jmp 0x140100c7a
movzx eax, word [rsp + 0x54]
movzx ecx, byte [0x140177eb6]
add eax, ecx
mov byte [rsp + 0x41], al
movzx eax, byte [rsp + 0x45]
movzx eax, al
movabs rcx, 0xc21719a550aba
add rax, rcx
mov word [0x140177f60], ax
mov eax, dword [rsp + 0x128]
add eax, 0x1a5
mov dword [rsp + 0x42c], eax
mov rax, qword [0x140177f80]
xor r9d, r9d
xor r8d, r8d
movzx edx, ax
mov cx, 0x87
call fcn.1400fcc90
movzx eax, ax
mov dword [0x140177f7c], eax
movzx eax, word [rsp + 0x5c]
not eax
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
cmp eax, ecx
je 0x140100ccf
mov dword [rsp + 0x220], 1
jmp 0x140100cda
mov dword [rsp + 0x220], 0
mov rax, qword [0x140177f38]
not rax
mov ecx, dword [rsp + 0x68]
cmp rax, rcx
je 0x140100cfa
mov dword [rsp + 0x21c], 1
jmp 0x140100d05
mov dword [rsp + 0x21c], 0
mov eax, dword [rsp + 0x21c]
cmp dword [rsp + 0x220], eax
jle 0x140100d22
mov dword [rsp + 0x68], 0x23
jmp 0x140100db4
movzx eax, byte [0x140177f1b]
test eax, eax
je 0x140100db4
cmp dword [rsp + 0x70], 0
jne 0x140100d46
mov qword [rsp + 0x3c0], 1
jmp 0x140100d52
mov qword [rsp + 0x3c0], 0
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x3c0]
add rcx, rax
mov rax, rcx
test rax, rax
jne 0x140100d7a
mov dword [rsp + 0x224], 1
jmp 0x140100d85
mov dword [rsp + 0x224], 0
mov eax, dword [rsp + 0x224]
mov dword [rsp + 0x60], eax
movsxd rax, dword [0x140177f1c]
mov rcx, qword [0x140177f50]
sub rax, rcx
movsxd rcx, dword [0x140177f1c]
and rcx, rax
mov rax, rcx
mov dword [0x140177f1c], eax
mov eax, dword [rsp + 0x128]
add eax, 0x2eb
mov dword [rsp + 0x430], eax
mov eax, dword [rsp + 0x340]
add eax, 0x104
cmp eax, 0x6093
je 0x140100e59
mov eax, dword [rsp + 0x78]
cmp dword [0x140177f68], eax
jae 0x140100e0f
movsx eax, byte [rsp + 0x44]
not eax
cdqe
imul rax, qword [0x140177f38]
not rax
mov byte [0x140177eb6], al
mov dword [rsp + 0x64], 0x8a1
mov byte [0x140177eb7], 0xd8
mov eax, dword [rsp + 0x60]
add rax, qword [0x140177fc8]
mov word [rsp + 0x58], ax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
movabs rcx, 0xa8ceb1f5f24a4
add rax, rcx
mov byte [rsp + 0x46], al
mov eax, 0xb5ccc16d
mov rcx, qword [0x140177f98]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
xor eax, eax
jmp 0x1401031e4
mov rax, qword [0x140177f80]
sub rax, 0xde
mov dword [0x140177f6c], eax
movzx eax, byte [rsp + 0x43]
movsx rax, al
mov rcx, qword [0x140177f50]
imul rax, rcx
movzx ecx, word [0x140177f64]
and ecx, dword [0x140177f7c]
not ecx
movsxd rcx, ecx
add rax, rcx
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
movzx edx, byte [0x140177eb7]
movzx edx, dl
imul ecx, edx
not ecx
movsxd rcx, ecx
movzx edx, word [rsp + 0x5c]
movabs rdi, 0xa75f683b77723
and rdx, rdi
xor rcx, rdx
sub rax, rcx
mov byte [rsp + 0x45], al
movzx eax, word [rsp + 0x54]
mov ecx, 4
imul rcx, rcx, 0xd
lea rdx, [0x14188af10]
mov dword [rdx + rcx], eax
mov dword [rsp + 0xb0], 0
jmp 0x140100f00
mov eax, dword [rsp + 0xb0]
inc eax
mov dword [rsp + 0xb0], eax
cmp dword [rsp + 0xb0], 8
jge 0x140101206
mov rax, qword [rsp + 0x80]
movzx ecx, al
call fcn.1400fd6b0
movsx eax, al
mov dword [0x140177f68], eax
cmp dword [0x140177f68], 0
jg 0x140101008
movzx eax, word [rsp + 0x4c]
movzx eax, ax
test eax, eax
je 0x140100f9c
mov qword [0x140177fb0], 0x1f86ac15
movzx eax, byte [rsp + 0x43]
movsx rax, al
mov rcx, qword [rsp + 0x80]
sub rax, rcx
movzx ecx, byte [rsp + 0x43]
movsx ecx, cl
mov edx, 0xf2
sub edx, ecx
mov ecx, edx
movsxd rcx, ecx
imul rax, rcx
mov byte [rsp + 0x43], al
movzx eax, word [0x140177fa8]
movsx rax, ax
mov rcx, qword [rsp + 0x88]
sub rcx, rax
mov rax, rcx
mov dword [0x140177f6c], eax
jmp 0x140101003
movzx eax, word [0x140177f74]
movzx eax, ax
movabs rcx, 0x9552c864c59b3
add rax, rcx
mov dword [0x140177fac], eax
movzx eax, byte [rsp + 0x40]
movzx eax, al
movzx ecx, byte [0x140177eb7]
movzx ecx, cl
sub ecx, dword [rsp + 0x70]
movabs rdx, 0xffffffff46be1666
lea rax, [rax + rdx]
lea eax, [rax + rcx]
mov dword [rsp + 0x78], eax
movzx eax, byte [0x141720c44]
movzx eax, al
and eax, 0x9fc92d3a
mov ecx, dword [0x140177f6c]
add ecx, eax
mov eax, ecx
mov dword [0x140177f6c], eax
jmp 0x1401010b1
mov rax, qword [0x140177f90]
cmp rax, 0x36
jl 0x140101023
mov qword [rsp + 0x3c8], 1
jmp 0x14010102f
mov qword [rsp + 0x3c8], 0
movzx eax, byte [0x140177eb7]
movzx eax, al
imul rax, qword [0x140177f88]
cmp rax, qword [rsp + 0x3c8]
jbe 0x1401010b1
movzx eax, word [0x140177f60]
add eax, dword [rsp + 0x6c]
movzx ecx, word [0x140177f60]
sub ecx, eax
mov eax, ecx
mov word [0x140177f60], ax
movzx eax, word [rsp + 0x5c]
movzx ecx, byte [rsp + 0x46]
movsx ecx, cl
movzx edx, byte [0x141720c44]
movzx edx, dl
movzx edi, word [rsp + 0x4c]
movzx edi, di
add edx, edi
add ecx, edx
add eax, ecx
test eax, eax
jne 0x14010109b
mov byte [rsp + 0x99], 1
jmp 0x1401010a3
mov byte [rsp + 0x99], 0
movzx eax, byte [rsp + 0x99]
mov byte [0x140177f1b], al
movzx eax, word [rsp + 0x5c]
cmp eax, 0x6d4d3d6c
je 0x1401010ca
mov dword [rsp + 0x228], 1
jmp 0x1401010d5
mov dword [rsp + 0x228], 0
movzx eax, byte [rsp + 0x42]
movsx eax, al
mov ecx, dword [rsp + 0x228]
add ecx, eax
mov eax, ecx
test eax, eax
je 0x14010119d
movzx eax, byte [0x140177edf]
movsx eax, al
test eax, eax
je 0x140101110
movzx eax, byte [0x141720c40]
mov byte [0x141720c44], al
jmp 0x14010119b
movzx eax, word [0x140177f64]
cmp eax, 0xe39cd5b8
je 0x14010112b
mov dword [rsp + 0x22c], 1
jmp 0x140101136
mov dword [rsp + 0x22c], 0
movzx eax, byte [rsp + 0x43]
movsx eax, al
cmp dword [rsp + 0x22c], eax
je 0x14010119b
movzx eax, word [0x140177fd0]
cwde
test eax, eax
jne 0x140101160
mov dword [rsp + 0x230], 1
jmp 0x14010116b
mov dword [rsp + 0x230], 0
mov eax, 0xcf2ca635
sub eax, dword [0x140177f5c]
mov ecx, dword [rsp + 0x230]
add ecx, eax
mov eax, ecx
mov eax, eax
mov qword [0x140177f90], rax
movabs rax, 0x2cded9754c3d9
mov qword [0x140177fa0], rax
jmp 0x1401011de
movzx eax, word [rsp + 0x4c]
movzx eax, ax
add eax, dword [rsp + 0x60]
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x4c], ax
movzx eax, word [rsp + 0x50]
cwde
not eax
cdqe
mov qword [rsp + 0x80], rax
movsx eax, byte [rsp + 0x44]
movzx ecx, word [0x140177f60]
sub eax, ecx
mov byte [rsp + 0x44], al
movsxd rax, dword [rsp + 0xb0]
movsxd rcx, dword [rsp + 0xb0]
mov rdx, qword [rsp + 0x150]
movzx eax, byte [rdx + rax]
mov byte [rsp + rcx + 0x3d0], al
jmp 0x140100ef0
lea r9, [rsp + 0xc8]
mov r8, qword [rsp + 0x3d0]
mov edx, 2
lea rcx, [0x140103200]
call fcn.1400adf10
movzx eax, word [0x140177fc0]
inc ax
mov word [0x140177fc0], ax
mov eax, dword [0x140177f6c]
sub eax, 0x88b586b9
mov byte [rsp + 0x46], al
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x348], rax
lea rax, [rsp + 0x140]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x350]
lea r8, [rsp + 0x318]
lea rdx, [rsp + 0x348]
mov rcx, qword [rsp + 0x540]
call fcn.1400027c3
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x12c]
mov ecx, dword [rsp + 0x234]
mov edx, dword [rsp + 0x12c]
sub ecx, edx
mov edx, dword [rsp + 0x234]
mov edi, dword [rsp + 0x12c]
add edx, edi
or ecx, edx
cmp eax, ecx
je 0x140101388
lea rax, [rsp + 0x498]
lea rcx, str.NdrMesTypeAlignSiz
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x498]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
cdqe
mov qword [0x140177f98], rax
cmp dword [rsp + 0x74], 0
je 0x140101388
movzx eax, byte [0x140177e8f]
movzx eax, al
mov ecx, dword [rsp + 0x70]
not ecx
cmp eax, ecx
ja 0x140101312
jmp 0x140101327
mov rax, qword [rsp + 0xa0]
sub rax, 0xca
mov qword [0x140177f88], rax
mov eax, 1
imul rax, rax, 0xc2
lea rcx, [0x14187d2d0]
movsx rax, byte [rcx + rax]
mov rcx, qword [0x140177f80]
sub rcx, rax
mov rax, rcx
mov qword [0x140177f80], rax
movzx eax, byte [rsp + 0x42]
movsx eax, al
movsx ecx, byte [rsp + 0x44]
sub eax, ecx
not eax
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
sub eax, ecx
mov byte [rsp + 0x41], al
movzx eax, byte [0x140177e8e]
mov byte [0x140177e8e], al
mov eax, dword [rsp + 0x74]
jmp 0x1401031e4
cmp dword [0x140177fd4], 0
jne 0x14010139e
mov dword [rsp + 0x238], 1
jmp 0x1401013a9
mov dword [rsp + 0x238], 0
movzx eax, word [rsp + 0x48]
cwde
imul eax, dword [0x140177f5c]
sub eax, dword [rsp + 0x238]
mov dword [rsp + 0x6c], eax
imul eax, dword [0x140177fc4], 0xf6efeee7
mov eax, eax
mov qword [0x140177f88], rax
mov rax, qword [rsp + 0x150]
add rax, 5
mov rcx, qword [rsp + 0x158]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x460], rax
mov eax, dword [0x141720c40]
mov dword [rsp + 0x70], eax
mov dword [0x140177f5c], 8
mov byte [rsp + 0xbc], 0xe8
mov byte [rsp + 0xbd], 0
mov byte [rsp + 0xbe], 0
mov byte [rsp + 0xbf], 0
mov byte [rsp + 0xc0], 0
mov rax, qword [rsp + 0x90]
test rax, rax
jne 0x14010149a
movabs rax, 0x58e7b9ddb2e2c
mov qword [rsp + 0xa0], rax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
mov rcx, qword [0x140177fb0]
add rax, rcx
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
sub rcx, rax
mov rax, rcx
mov word [rsp + 0x4c], ax
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov ecx, dword [0x140177f5c]
sub ecx, eax
mov eax, ecx
mov ecx, dword [0x140177f5c]
sub ecx, eax
mov eax, ecx
mov dword [0x140177f5c], eax
jmp 0x1401014c3
movzx eax, byte [rsp + 0x46]
movsx eax, al
add eax, 0xece1
mov dword [rsp + 0x60], eax
mov eax, dword [0x141720c40]
mov dword [rsp + 0x6c], eax
movzx eax, word [rsp + 0x54]
add eax, dword [rsp + 0x60]
mov word [rsp + 0x54], ax
mov dword [rsp + 0xb4], 0
jmp 0x1401014e0
mov eax, dword [rsp + 0xb4]
inc eax
mov dword [rsp + 0xb4], eax
cmp dword [rsp + 0xb4], 4
jge 0x140101cbd
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
jne 0x140101507
mov eax, 1
mov word [rsp + 0xae], ax
jmp 0x140101511
xor eax, eax
mov word [rsp + 0xae], ax
movzx eax, word [rsp + 0xae]
mov word [0x140177f74], ax
movzx eax, word [rsp + 0x50]
cwde
sar eax, 8
mov byte [0x141720c44], al
mov eax, dword [0x141720c40]
mov dword [rsp + 0x130], eax
movzx eax, word [0x140177f64]
cmp eax, 0xc915
jg 0x140101557
mov dword [rsp + 0x240], 1
jmp 0x140101562
mov dword [rsp + 0x240], 0
mov eax, dword [rsp + 0x60]
cmp dword [rsp + 0x64], eax
jb 0x140101579
mov dword [rsp + 0x23c], 1
jmp 0x140101584
mov dword [rsp + 0x23c], 0
mov eax, dword [rsp + 0x23c]
cmp dword [rsp + 0x240], eax
jle 0x1401015a1
mov dword [rsp + 0x248], 1
jmp 0x1401015ac
mov dword [rsp + 0x248], 0
cmp dword [0x140177fd8], 0
jne 0x1401015c9
cmp dword [rsp + 0x68], 0
jne 0x1401015c9
mov dword [rsp + 0x244], 0
jmp 0x1401015d4
mov dword [rsp + 0x244], 1
mov eax, dword [rsp + 0x244]
cmp dword [rsp + 0x248], eax
jl 0x14010169c
mov eax, dword [rsp + 0x60]
cmp dword [rsp + 0x64], eax
je 0x14010165c
cmp qword [0x140177f88], 0
je 0x14010165c
mov eax, dword [0x140177f6c]
test eax, eax
jne 0x140101613
mov dword [rsp + 0x24c], 1
jmp 0x14010161e
mov dword [rsp + 0x24c], 0
mov eax, dword [rsp + 0x24c]
mov ecx, dword [rsp + 0x68]
sub ecx, eax
mov eax, ecx
mov eax, eax
imul rax, qword [rsp + 0xa0]
mov dword [rsp + 0x70], eax
movsxd rax, dword [0x140177fc4]
mov rcx, qword [rsp + 0x90]
imul rcx, rax
mov rax, rcx
mov qword [rsp + 0x90], rax
jmp 0x14010169a
movzx eax, word [rsp + 0x48]
cwde
imul eax, eax, 0x887cd718
mov eax, eax
mov qword [0x140177f90], rax
movzx eax, word [0x140177f74]
movzx eax, ax
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
xor eax, ecx
movzx ecx, word [0x140177f74]
movzx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [0x140177f74], ax
jmp 0x1401016fb
movzx eax, byte [rsp + 0x42]
movsx eax, al
test eax, eax
jne 0x1401016fb
movzx eax, word [0x140177f78]
mov ecx, dword [0x140177fac]
imul eax, ecx
movzx ecx, word [0x140177f78]
add ecx, eax
mov eax, ecx
mov word [0x140177f78], ax
movsx eax, byte [rsp + 0x44]
sub eax, 0x52d97246
cdqe
mov qword [rsp + 0xa0], rax
movzx eax, byte [rsp + 0x46]
movsx rax, al
movabs rcx, 0x59ae420cba7fd
xor rax, rcx
mov qword [0x140177fa0], rax
mov eax, dword [rsp + 0x130]
add eax, 0x1ec
mov dword [rsp + 0x434], eax
cmp dword [0x140177f70], 0
je 0x1401018a4
movzx eax, word [0x140177f64]
mov r9d, 0xd3
mov r8d, 0xf6
mov edx, eax
mov ecx, 0xf6
call fcn.1400fd0e0
mov dword [rsp + 0x6c], eax
cmp dword [rsp + 0x6c], 0
jbe 0x140101875
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov ecx, dword [0x140177fac]
cmp eax, ecx
jl 0x140101768
mov dword [rsp + 0x254], 1
jmp 0x140101773
mov dword [rsp + 0x254], 0
movzx eax, byte [rsp + 0x43]
movsx eax, al
cmp eax, 0x2b
jl 0x14010178d
mov dword [rsp + 0x250], 1
jmp 0x140101798
mov dword [rsp + 0x250], 0
mov eax, dword [rsp + 0x250]
cmp dword [rsp + 0x254], eax
jg 0x1401017fa
movzx eax, byte [0x140177f02]
mov ecx, 1
imul rcx, rcx, 0x47
lea rdx, [0x1419dc230]
mov byte [rdx + rcx], al
mov rax, qword [0x140177f90]
mov rcx, qword [rsp + 0x80]
sub rax, rcx
mov rcx, qword [0x140177f90]
and rcx, rax
mov rax, rcx
mov qword [0x140177f90], rax
mov rax, qword [rsp + 0x80]
sar rax, 3
mov byte [rsp + 0x45], al
jmp 0x140101873
mov rax, qword [0x140177f40]
test rax, rax
je 0x140101873
movzx eax, byte [rsp + 0x42]
movsx eax, al
test eax, eax
jne 0x14010181f
mov dword [rsp + 0x258], 1
jmp 0x14010182a
mov dword [rsp + 0x258], 0
movzx eax, byte [0x141720c44]
movzx eax, al
mov ecx, dword [rsp + 0x258]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
movzx eax, word [rsp + 0x54]
sub eax, 0xae
cdqe
mov qword [0x140177f40], rax
movabs rax, 0x6edb29f87883a
mov rcx, qword [0x140177f48]
add rcx, rax
mov rax, rcx
mov byte [0x140177f1b], al
jmp 0x1401018a2
movzx eax, byte [0x140177edf]
movsx eax, al
sub eax, 0xd09e
mov dword [rsp + 0x60], eax
mov eax, dword [0x140177e64]
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x68]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
jmp 0x14010191d
movzx eax, byte [0x140177eb7]
movzx eax, al
mov rcx, qword [rsp + 0x80]
add rax, rcx
movzx ecx, byte [0x140177eb7]
movzx ecx, cl
add rcx, rax
mov rax, rcx
mov byte [0x140177eb7], al
cmp qword [0x140177fc8], 0
je 0x1401018eb
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x3d8], rax
jmp 0x1401018fa
mov rax, qword [0x140177f90]
mov qword [rsp + 0x3d8], rax
mov rax, qword [rsp + 0x3d8]
mov qword [0x140177f38], rax
movzx eax, byte [rsp + 0x43]
movsx eax, al
imul eax, eax, 0xde
mov dword [0x140177fc4], eax
mov eax, dword [rsp + 0x130]
add eax, 0x176
mov dword [rsp + 0x278], eax
mov eax, 2
imul rax, rax, 0x216
lea rcx, [0x1419e7f90]
movzx eax, word [rcx + rax]
mov dword [0x140177f6c], eax
mov rax, qword [rsp + 0x88]
test rax, rax
je 0x14010196c
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x3e0], rax
jmp 0x14010197b
mov rax, qword [0x140177fc8]
mov qword [rsp + 0x3e0], rax
movzx eax, word [rsp + 0x3e0]
mov word [rsp + 0x4c], ax
mov eax, dword [rsp + 0x130]
add eax, 0x327
mov dword [rsp + 0x27c], eax
movzx eax, word [rsp + 0x50]
cwde
sub eax, 0xdc
cdqe
mov qword [rsp + 0x80], rax
movzx eax, byte [0x140177f02]
movsx eax, al
sub eax, 0x486da2e0
cdqe
mov qword [0x140177fb8], rax
mov eax, dword [0x141720c40]
mov dword [rsp + 0x134], eax
mov eax, 1
imul rax, rax, 0x89fc
lea rcx, [0x1419a3e30]
movzx eax, byte [rcx + rax]
mov word [0x140177f60], ax
movsx eax, byte [rsp + 0x44]
xor eax, 0x8cbf3c12
mov word [0x140177f74], ax
movzx eax, byte [0x141720c40]
mov byte [0x140177f03], al
mov eax, dword [rsp + 0x134]
add eax, 0x1f0
mov dword [rsp + 0x260], eax
imul rax, qword [0x140177fc8], 0
mov byte [rsp + 0x42], al
mov eax, dword [0x140177f6c]
sub eax, 0xacaf
mov byte [rsp + 0x43], al
mov eax, dword [rsp + 0x134]
add eax, 0x175
mov dword [rsp + 0x438], eax
movzx eax, byte [0x140177f03]
cmp eax, dword [rsp + 0x78]
ja 0x140101a6c
mov dword [rsp + 0x25c], 1
jmp 0x140101a77
mov dword [rsp + 0x25c], 0
mov eax, dword [rsp + 0x25c]
not eax
test eax, eax
je 0x140101a86
jmp 0x140101ae3
movzx eax, word [rsp + 0x50]
cwde
cmp eax, dword [rsp + 0x70]
jne 0x140101aa0
mov qword [rsp + 0x3e8], 1
jmp 0x140101aac
mov qword [rsp + 0x3e8], 0
mov rax, qword [0x140177f80]
cmp qword [rsp + 0x3e8], rax
jle 0x140101ae3
movzx eax, byte [0x140177f02]
movsx eax, al
mov ecx, dword [0x140177f04]
imul ecx, eax
mov eax, ecx
mov dword [0x140177f04], eax
movzx eax, byte [rsp + 0x44]
dec al
mov byte [rsp + 0x44], al
mov eax, dword [rsp + 0x134]
add eax, 0x30d
mov dword [rsp + 0x338], eax
mov eax, dword [rsp + 0x260]
mov ecx, 0x1a0
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x260]
mov edx, dword [rsp + 0x338]
imul ecx, edx
cmp eax, ecx
je 0x140101cb8
movzx eax, word [0x140177fa8]
cwde
test eax, eax
jne 0x140101b38
mov dword [rsp + 0x264], 1
jmp 0x140101b43
mov dword [rsp + 0x264], 0
movzx eax, word [0x140177f60]
xor ecx, ecx
sub ecx, dword [rsp + 0x264]
cmp eax, ecx
je 0x140101b64
mov dword [rsp + 0x274], 1
jmp 0x140101b6f
mov dword [rsp + 0x274], 0
movzx eax, byte [0x140177edf]
movsx eax, al
cmp dword [0x140177f5c], eax
ja 0x140101b8e
mov dword [rsp + 0x26c], 1
jmp 0x140101b99
mov dword [rsp + 0x26c], 0
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
jne 0x140101bb0
mov dword [rsp + 0x268], 1
jmp 0x140101bbb
mov dword [rsp + 0x268], 0
mov eax, dword [rsp + 0x268]
cmp dword [rsp + 0x26c], eax
jle 0x140101bd8
mov dword [rsp + 0x270], 1
jmp 0x140101be3
mov dword [rsp + 0x270], 0
mov eax, dword [rsp + 0x270]
cmp dword [rsp + 0x274], eax
je 0x140101c51
movzx eax, byte [rsp + 0x41]
mov ecx, dword [0x140177fac]
sub eax, ecx
movzx ecx, byte [rsp + 0x41]
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x41], al
movzx eax, word [0x140177f58]
cwde
movzx ecx, byte [rsp + 0x40]
movzx ecx, cl
sub eax, ecx
movzx ecx, word [0x140177f58]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [0x140177f58], ax
movsx rax, word [0x140177fc0]
movabs rcx, 0x49562ff0157bf
xor rax, rcx
mov byte [0x140177f03], al
jmp 0x140101c6f
movzx eax, word [0x140177f58]
cwde
test eax, eax
jne 0x140101c6f
mov byte [rsp + 0x44], 0xbe
mov eax, dword [0x141720c40]
mov qword [0x140177f38], rax
movsxd rax, dword [rsp + 0xb4]
movsx eax, byte [rsp + rax + 0x460]
mov ecx, dword [rsp + 0x278]
mov edx, dword [rsp + 0x27c]
imul ecx, edx
mov edx, dword [rsp + 0x278]
mov edi, dword [rsp + 0x27c]
imul edx, edi
sub ecx, edx
add eax, ecx
mov ecx, dword [rsp + 0xb4]
inc ecx
movsxd rcx, ecx
mov byte [rsp + rcx + 0xbc], al
jmp 0x1401014d0
mov rax, qword [rsp + 0x90]
movzx ecx, word [0x140177fd0]
movsx ecx, cx
mov r9d, eax
mov r8d, ecx
mov edx, 0xfc
xor ecx, ecx
call fcn.1400fc690
mov dword [0x140177f1c], eax
movzx eax, word [rsp + 0x5c]
cmp eax, 1
jge 0x140101cfe
mov dword [rsp + 0x280], 1
jmp 0x140101d09
mov dword [rsp + 0x280], 0
cmp dword [rsp + 0x280], 0
jne 0x140101d69
movzx eax, byte [rsp + 0x41]
test eax, eax
je 0x140101d64
mov byte [rsp + 0x44], 0x74
movzx eax, byte [rsp + 0x40]
movzx eax, al
mov rcx, qword [rsp + 0x80]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov eax, dword [rsp + 0x78]
mov rcx, qword [0x140177fb0]
xor rcx, rax
mov rax, rcx
mov rcx, qword [0x140177fb0]
add rcx, rax
mov rax, rcx
mov qword [0x140177fb0], rax
jmp 0x140101df2
imul rax, qword [rsp + 0xa0], 0x811d
test rax, rax
jne 0x140101d88
mov qword [rsp + 0x3f0], 1
jmp 0x140101d94
mov qword [rsp + 0x3f0], 0
movzx eax, word [rsp + 0x58]
test eax, eax
jne 0x140101daa
mov dword [rsp + 0x284], 1
jmp 0x140101db5
mov dword [rsp + 0x284], 0
movzx eax, byte [0x140177eb7]
movzx eax, al
mov rcx, qword [0x140177f80]
add rax, qword [rsp + 0x3f0]
add rax, rcx
mov ecx, 0x63
sub ecx, dword [rsp + 0x284]
mov edx, dword [rsp + 0x78]
imul edx, ecx
mov ecx, edx
mov ecx, ecx
imul rax, rcx
mov dword [0x140177f04], eax
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x348], rax
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x20], rax
mov r9d, 5
lea r8, [rsp + 0xbc]
mov rdx, qword [rsp + 0x348]
mov rcx, qword [rsp + 0x540]
call fcn.140002125
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x288]
mov ecx, dword [rsp + 0x288]
sub ecx, 0x21c
cmp eax, ecx
je 0x1401021c6
movzx eax, word [0x140177fd0]
cwde
sub eax, 0xa3
mov word [0x140177f78], ax
mov dword [rsp + 0x64], 0x24810833
movzx eax, byte [0x140177e8f]
movzx eax, al
mov rcx, qword [0x140177f38]
imul rcx, rax
mov rax, rcx
movzx ecx, word [rsp + 0x48]
movsx rcx, cx
xor rax, rcx
not rax
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x74], 0
jne 0x140101eb1
mov eax, dword [rsp + 0xa8]
cmp rax, 5
je 0x1401021c6
mov rax, qword [rsp + 0x90]
mov rcx, qword [0x140177fb0]
cmp rax, rcx
ja 0x140102157
movzx eax, word [rsp + 0x48]
movsx rax, ax
mov qword [rsp + 0x20], 0x82
mov r9, rax
mov r8, qword [rsp + 0x80]
xor edx, edx
mov rcx, qword [0x140177f98]
call fcn.1400fca10
mov word [rsp + 0x4c], ax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
test eax, eax
je 0x140101fbe
movzx eax, byte [rsp + 0x40]
movzx eax, al
mov ecx, dword [0x140177fac]
cmp eax, ecx
jl 0x140101f28
mov dword [rsp + 0x290], 1
jmp 0x140101f33
mov dword [rsp + 0x290], 0
movzx eax, byte [rsp + 0x40]
movzx eax, al
cmp eax, 0x59
jl 0x140101f4d
mov dword [rsp + 0x28c], 1
jmp 0x140101f58
mov dword [rsp + 0x28c], 0
mov eax, dword [rsp + 0x28c]
cmp dword [rsp + 0x290], eax
jne 0x140101fb9
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
je 0x140101f80
movzx eax, word [rsp + 0x5c]
mov dword [rsp + 0x294], eax
jmp 0x140101f8d
movzx eax, word [rsp + 0x48]
cwde
mov dword [rsp + 0x294], eax
mov eax, dword [rsp + 0x294]
mov dword [0x140177f04], eax
movzx eax, word [0x140177fd0]
cwde
add eax, 0xd5fe6d63
mov byte [0x140177f03], al
mov qword [rsp + 0x88], 0x9c
jmp 0x140102155
mov rax, qword [rsp + 0x80]
test rax, rax
je 0x140102068
mov rax, qword [rsp + 0x88]
test rax, rax
jne 0x140101fe9
mov dword [rsp + 0x298], 1
jmp 0x140101ff4
mov dword [rsp + 0x298], 0
movzx eax, byte [rsp + 0x42]
movsx eax, al
test eax, eax
jne 0x14010200d
mov dword [rsp + 0x29c], 1
jmp 0x140102018
mov dword [rsp + 0x29c], 0
movzx eax, byte [rsp + 0x40]
movzx eax, al
imul eax, dword [rsp + 0x298]
movzx ecx, byte [0x140177f1b]
movzx edx, byte [0x140177eb6]
not edx
add ecx, edx
add eax, ecx
imul ecx, dword [rsp + 0x78], 0xeb02
add ecx, dword [rsp + 0x29c]
sub eax, ecx
mov word [rsp + 0x48], ax
mov rax, qword [0x140177f50]
dec rax
mov qword [0x140177f50], rax
jmp 0x140102155
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
je 0x1401020ae
movzx eax, byte [rsp + 0x42]
movsx eax, al
add eax, dword [0x140177f70]
movzx ecx, byte [rsp + 0x42]
movsx ecx, cl
xor ecx, eax
mov eax, ecx
mov byte [rsp + 0x42], al
mov rax, qword [0x140177f50]
movabs rcx, 0xa67ac1f2497d6
sub rax, rcx
mov word [rsp + 0x48], ax
jmp 0x140102155
movzx eax, byte [rsp + 0x42]
movsx eax, al
test eax, eax
je 0x140102155
cmp dword [rsp + 0x68], 0
jne 0x1401020d2
mov dword [rsp + 0x2a0], 1
jmp 0x1401020dd
mov dword [rsp + 0x2a0], 0
mov eax, dword [0x140177fd4]
not eax
movzx ecx, byte [0x140177edf]
movsx ecx, cl
add eax, ecx
mov eax, eax
add rax, qword [0x140177f48]
test rax, rax
jne 0x14010210c
mov dword [rsp + 0x2a4], 1
jmp 0x140102117
mov dword [rsp + 0x2a4], 0
movzx eax, word [rsp + 0x48]
cwde
movzx ecx, word [rsp + 0x5c]
add eax, ecx
mov ecx, dword [rsp + 0x2a0]
sub ecx, eax
mov eax, ecx
imul eax, dword [rsp + 0x2a4]
mov dword [0x140177f7c], eax
mov rax, qword [rsp + 0x80]
add rax, 0x20
mov word [0x140177fc0], ax
mov byte [rsp + 0x40], 8
jmp 0x14010218e
movzx eax, byte [0x140177eb7]
movzx eax, al
test eax, eax
je 0x14010218e
movzx eax, byte [rsp + 0x46]
movsx eax, al
add eax, 2
mov dword [0x140177f04], eax
movsx eax, byte [rsp + 0x44]
add eax, 0x132ba703
mov dword [rsp + 0x64], eax
mov eax, 0x6739
mov word [rsp + 0x50], ax
movzx eax, word [rsp + 0x58]
sar eax, 3
mov byte [rsp + 0x43], al
mov rax, qword [0x140177fb8]
mov ecx, 0xfd426a43
sub rax, rcx
mov rcx, qword [0x140177fc8]
sub rcx, rax
mov rax, rcx
mov qword [0x140177fc8], rax
mov eax, dword [rsp + 0x74]
jmp 0x1401031e4
movzx eax, byte [rsp + 0x40]
movzx eax, al
cmp dword [rsp + 0x70], eax
je 0x1401021e1
mov dword [rsp + 0x2a8], 1
jmp 0x1401021ec
mov dword [rsp + 0x2a8], 0
movzx eax, word [rsp + 0x48]
cwde
cmp dword [rsp + 0x2a8], eax
jl 0x140102208
mov dword [rsp + 0x2b0], 1
jmp 0x140102213
mov dword [rsp + 0x2b0], 0
mov eax, dword [0x140177e64]
test eax, eax
jne 0x14010223f
movzx eax, word [0x140177f74]
movzx eax, ax
test eax, eax
jne 0x14010223f
cmp dword [rsp + 0x6c], 0
je 0x14010223f
mov dword [rsp + 0x2ac], 1
jmp 0x14010224a
mov dword [rsp + 0x2ac], 0
mov eax, dword [rsp + 0x2ac]
cmp dword [rsp + 0x2b0], eax
jg 0x1401022d6
mov eax, 0x3780f537
sub eax, dword [0x140177f5c]
test eax, eax
jne 0x140102276
mov dword [rsp + 0x2b4], 1
jmp 0x140102281
mov dword [rsp + 0x2b4], 0
movsx eax, byte [rsp + 0x44]
imul eax, eax, 0
mov ecx, dword [rsp + 0x2b4]
add ecx, eax
mov eax, ecx
mov word [0x140177fa8], ax
movsxd rax, dword [0x140177f70]
movabs rcx, 0xb97d25c027740
sub rax, rcx
mov word [rsp + 0x58], ax
mov rax, qword [0x140177f90]
mov ecx, 0xcd53a992
add rax, rcx
movzx ecx, byte [rsp + 0x42]
movsx rcx, cl
sub rcx, rax
mov rax, rcx
mov byte [rsp + 0x42], al
mov rax, qword [rsp + 0x560]
add rax, 0x3e
mov qword [rsp + 0x318], rax
lea rax, [rsp + 0x140]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x33c]
lea r8, [rsp + 0x318]
lea rdx, [rsp + 0x158]
mov rcx, qword [rsp + 0x540]
call fcn.1400027c3
mov dword [rsp + 0x74], eax
cmp dword [rsp + 0x74], 0
je 0x140102674
mov eax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x88]
imul rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
movsxd rax, dword [0x140177f1c]
movabs rcx, 0x391e1c9fd41fe
imul rax, rcx
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0xa0]
sub rax, 0x40
mov byte [rsp + 0x42], al
movsxd rax, dword [0x140177fd8]
mov rcx, qword [rsp + 0x88]
add rax, rcx
mov dword [0x140177fd8], eax
mov rax, qword [0x140177fb8]
mov qword [0x140177f40], rax
mov eax, dword [0x141720c40]
mov dword [rsp + 0x138], eax
mov eax, dword [rsp + 0x64]
sub eax, 0xd6
cdqe
mov qword [rsp + 0x80], rax
movzx eax, byte [0x140177f02]
movsx eax, al
add eax, 0x4762c51a
not eax
movzx ecx, byte [0x140177f03]
imul ecx, dword [0x140177f70]
sub eax, ecx
cdqe
mov qword [rsp + 0x80], rax
mov eax, dword [rsp + 0x138]
add eax, 0x34d
mov dword [rsp + 0x324], eax
mov eax, dword [rsp + 0x138]
add eax, 0x258
mov dword [rsp + 0x320], eax
mov eax, dword [0x140177f7c]
mov ecx, dword [rsp + 0x78]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x64], 1
mov eax, dword [rsp + 0x138]
add eax, 0x1a4
mov dword [rsp + 0x2b8], eax
mov eax, dword [rsp + 0x320]
mov ecx, dword [rsp + 0x2b8]
xor eax, ecx
imul eax, eax, 0x14a
mov ecx, dword [rsp + 0x2b8]
imul ecx, ecx, 0x27
mov edx, dword [rsp + 0x324]
imul edx, edx, 0x25c
sub ecx, edx
cmp eax, ecx
je 0x140102674
mov rax, qword [0x140177fb8]
movzx ecx, word [0x140177f78]
cmp rax, rcx
jae 0x14010248e
mov dword [rsp + 0x2c0], 1
jmp 0x140102499
mov dword [rsp + 0x2c0], 0
mov rax, qword [0x140177fb8]
cmp rax, 0x15
jae 0x1401024b3
mov dword [rsp + 0x2bc], 1
jmp 0x1401024be
mov dword [rsp + 0x2bc], 0
mov eax, dword [rsp + 0x2bc]
cmp dword [rsp + 0x2c0], eax
jl 0x1401025cf
movzx eax, byte [0x140177eb7]
movzx eax, al
cmp dword [rsp + 0x60], eax
jne 0x1401024ef
mov dword [rsp + 0x2c8], 1
jmp 0x1401024fa
mov dword [rsp + 0x2c8], 0
cmp dword [rsp + 0x60], 0x46
jne 0x14010250e
mov dword [rsp + 0x2c4], 1
jmp 0x140102519
mov dword [rsp + 0x2c4], 0
mov eax, dword [rsp + 0x2c4]
cmp dword [rsp + 0x2c8], eax
jle 0x14010258a
movzx eax, word [0x140177f58]
cwde
xor eax, 0x67
test eax, eax
jne 0x140102547
mov eax, 1
mov word [rsp + 0xba], ax
jmp 0x140102551
xor eax, eax
mov word [rsp + 0xba], ax
movzx eax, word [rsp + 0xba]
mov word [rsp + 0x48], ax
mov eax, dword [rsp + 0x6c]
mov ecx, dword [rsp + 0x78]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x78], eax
mov rax, qword [rsp + 0x80]
mov rcx, qword [0x140177fb8]
xor rax, rcx
mov qword [rsp + 0x80], rax
jmp 0x1401025cd
movzx eax, word [0x140177f78]
test eax, eax
je 0x1401025cd
movzx eax, byte [0x140177edf]
movsx eax, al
imul eax, eax, 0x115347db
mov byte [0x140177e8e], al
movzx eax, byte [0x141720c40]
mov byte [rsp + 0x40], al
mov eax, dword [rsp + 0x60]
movabs rcx, 0xe4afd7bb0b69e
sub rax, rcx
mov dword [0x140177f7c], eax
jmp 0x140102632
movzx eax, byte [0x140177eb7]
movzx eax, al
imul eax, eax, 0x6c736f4e
mov byte [0x141720c44], al
movzx eax, byte [rsp + 0x40]
movzx eax, al
mov rcx, qword [0x140177fc8]
sub rcx, rax
mov rax, rcx
mov rcx, qword [0x140177fc8]
add rcx, rax
mov rax, rcx
mov qword [0x140177fc8], rax
movzx eax, word [0x140177f60]
movabs rcx, 0xcaf8a43c0d029
sub rax, rcx
movzx ecx, word [rsp + 0x58]
sub rcx, rax
mov rax, rcx
mov word [rsp + 0x58], ax
movzx eax, byte [rsp + 0x45]
movzx eax, al
mov ecx, dword [0x140177fac]
add eax, ecx
movzx ecx, byte [rsp + 0x45]
movzx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x45], al
movzx eax, word [rsp + 0x58]
mov rcx, qword [0x140177f98]
sub rcx, rax
mov rax, rcx
mov qword [0x140177f98], rax
mov eax, dword [rsp + 0x74]
jmp 0x1401031e4
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x20], rax
mov r9d, 0x3e
lea r8, [rsp + 0xc8]
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x540]
call fcn.140002125
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x13c]
mov ecx, dword [rsp + 0x328]
imul eax, ecx
mov ecx, dword [rsp + 0x13c]
imul ecx, ecx, 0x26e
mov edx, dword [rsp + 0x13c]
imul edx, ecx
mov ecx, edx
cmp eax, ecx
je 0x140102a8a
mov rax, qword [rsp + 0x88]
test rax, rax
jne 0x1401026f5
mov qword [rsp + 0x3f8], 1
jmp 0x140102701
mov qword [rsp + 0x3f8], 0
mov rax, qword [0x140177f80]
cmp rax, qword [rsp + 0x3f8]
jle 0x140102720
mov qword [rsp + 0x400], 1
jmp 0x14010272c
mov qword [rsp + 0x400], 0
mov rax, qword [rsp + 0x400]
cmp qword [0x140177fc8], rax
jg 0x1401028e1
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400fd880
movsx ax, al
mov word [rsp + 0x4c], ax
cmp dword [rsp + 0x68], 0
je 0x140102773
movzx eax, word [rsp + 0x58]
test eax, eax
je 0x140102773
mov dword [rsp + 0x2d0], 1
jmp 0x14010277e
mov dword [rsp + 0x2d0], 0
mov rax, qword [rsp + 0x90]
test rax, rax
ja 0x140102798
mov dword [rsp + 0x2cc], 1
jmp 0x1401027a3
mov dword [rsp + 0x2cc], 0
mov eax, dword [rsp + 0x2cc]
cmp dword [rsp + 0x2d0], eax
jg 0x1401028a0
movzx eax, byte [0x140177e8f]
movzx eax, al
mov rcx, qword [rsp + 0x88]
cmp rax, rcx
ja 0x1401027db
mov dword [rsp + 0x2d8], 1
jmp 0x1401027e6
mov dword [rsp + 0x2d8], 0
movzx eax, byte [0x140177e8f]
movzx eax, al
cmp eax, 0x12
jg 0x140102802
mov dword [rsp + 0x2d4], 1
jmp 0x14010280d
mov dword [rsp + 0x2d4], 0
mov eax, dword [rsp + 0x2d4]
cmp dword [rsp + 0x2d8], eax
jl 0x140102837
movzx eax, byte [0x141720c40]
mov byte [rsp + 0x45], al
mov eax, dword [0x140177f68]
shl eax, 3
mov byte [rsp + 0x45], al
jmp 0x14010289e
movzx eax, word [rsp + 0x5c]
cmp eax, 0x39530205
jle 0x14010289e
movzx eax, word [rsp + 0x5c]
movabs rcx, 0xf277a648ee36a
sub rax, rcx
mov ecx, dword [rsp + 0x60]
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0x60], eax
movzx eax, word [rsp + 0x4c]
movzx eax, ax
movzx ecx, byte [0x140177edf]
movsx ecx, cl
sub eax, ecx
add eax, dword [0x140177f68]
movzx ecx, byte [rsp + 0x41]
movzx edx, byte [rsp + 0x43]
movsx edx, dl
not edx
mov edi, dword [0x140177f7c]
not edi
sub edx, edi
xor ecx, edx
sub eax, ecx
mov byte [rsp + 0x46], al
jmp 0x1401028e1
movzx eax, word [0x140177f58]
cwde
add eax, 0xae
mov dword [0x140177fd8], eax
movzx eax, word [rsp + 0x54]
mov ecx, dword [rsp + 0x68]
and ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x68]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x68]
movabs rcx, 0x70817f74af10b
sub rax, rcx
mov dword [rsp + 0x68], eax
cmp dword [rsp + 0x74], 0
jne 0x1401028f9
mov eax, dword [rsp + 0xa8]
cmp rax, 0x3e
je 0x140102a8a
movzx eax, word [rsp + 0x4c]
movzx eax, ax
test eax, eax
je 0x140102970
movsxd rax, dword [rsp + 0x64]
cmp rax, qword [0x140177f88]
jbe 0x140102935
movzx eax, word [0x140177f58]
cwde
mov ecx, dword [rsp + 0x6c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x6c], eax
movzx eax, word [rsp + 0x54]
mov word [0x140177f78], ax
jmp 0x14010296b
movzx eax, word [0x140177f58]
cwde
imul eax, dword [0x140177f1c]
mov word [0x140177f58], ax
mov byte [rsp + 0x45], 0xe7
mov rax, qword [rsp + 0x80]
mov ecx, 4
imul rcx, rcx, 0x1a
lea rdx, [0x141816230]
mov dword [rdx + rcx], eax
jmp 0x1401029fe
movzx eax, word [0x140177f58]
cwde
test eax, eax
jne 0x140102992
cmp dword [0x140177f1c], 0
je 0x140102992
mov dword [rsp + 0x2dc], 0
jmp 0x14010299d
mov dword [rsp + 0x2dc], 1
mov eax, dword [rsp + 0x2dc]
mov ecx, dword [0x140177f70]
add ecx, eax
mov eax, ecx
test eax, eax
je 0x1401029fe
movzx eax, byte [rsp + 0x46]
movsx eax, al
shl eax, 5
mov word [rsp + 0x58], ax
mov rax, qword [0x140177f80]
test rax, rax
jne 0x1401029d8
mov byte [rsp + 0x9a], 1
jmp 0x1401029e0
mov byte [rsp + 0x9a], 0
movzx eax, byte [rsp + 0x9a]
mov byte [rsp + 0x45], al
movzx eax, word [0x140177f60]
imul eax, eax, 0x7b46e397
mov word [rsp + 0x54], ax
movzx eax, byte [rsp + 0x45]
movzx eax, al
test eax, eax
je 0x140102a77
mov eax, dword [0x140177fac]
sub eax, 0x2241
mov dword [0x140177f1c], eax
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov ecx, dword [0x140177fac]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x140177fac]
add ecx, eax
mov eax, ecx
mov dword [0x140177fac], eax
mov rax, qword [0x140177f90]
test rax, rax
je 0x140102a58
movsxd rax, dword [rsp + 0x64]
mov qword [rsp + 0x408], rax
jmp 0x140102a68
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x408], rax
mov eax, dword [rsp + 0x408]
mov dword [0x140177f04], eax
jmp 0x140102a81
mov byte [rsp + 0x41], 0x91
mov byte [rsp + 0x42], 0x1b
mov eax, dword [rsp + 0x74]
jmp 0x1401031e4
mov rax, qword [rsp + 0x158]
add rax, 0x3e
lea rcx, [rsp + 0xa8]
mov qword [rsp + 0x20], rcx
mov r9, qword [rsp + 0x560]
mov r8, qword [rsp + 0x558]
mov rdx, rax
mov rcx, qword [rsp + 0x540]
call fcn.140002125
mov dword [rsp + 0x74], eax
cmp dword [rsp + 0x74], 0
jne 0x140102ae3
mov eax, dword [rsp + 0xa8]
cmp rax, qword [rsp + 0x560]
je 0x140102c65
mov rax, qword [0x140177f48]
shl rax, 3
mov qword [rsp + 0x88], rax
movzx eax, byte [rsp + 0x43]
movsx rax, al
movabs rcx, 0x9d288b2faa5b6
add rax, rcx
mov rcx, qword [0x140177fa0]
sub rcx, rax
mov rax, rcx
mov qword [0x140177fa0], rax
cmp dword [0x140177f1c], 0
je 0x140102c17
mov eax, dword [0x140177fac]
movzx ecx, byte [0x140177eb7]
movzx ecx, cl
cmp eax, ecx
jge 0x140102b4e
mov dword [rsp + 0x2e4], 1
jmp 0x140102b59
mov dword [rsp + 0x2e4], 0
mov eax, dword [0x140177fac]
cmp eax, 0x3d
jge 0x140102b71
mov dword [rsp + 0x2e0], 1
jmp 0x140102b7c
mov dword [rsp + 0x2e0], 0
mov eax, dword [rsp + 0x2e0]
cmp dword [rsp + 0x2e4], eax
jl 0x140102bd0
mov rax, qword [0x140177fb8]
add rax, 0xe3
mov rcx, qword [0x140177f48]
sub rcx, rax
mov rax, rcx
mov qword [0x140177f48], rax
mov rax, qword [0x140177f88]
add rax, 0xb13d
mov word [rsp + 0x48], ax
movzx eax, byte [rsp + 0x40]
movzx eax, al
shl eax, 8
mov dword [rsp + 0x68], eax
jmp 0x140102c15
xor eax, eax
cmp eax, 0x7c53112
je 0x140102c15
movzx eax, word [rsp + 0x58]
test eax, eax
je 0x140102c15
movzx eax, word [rsp + 0x4c]
movzx eax, ax
movzx ecx, word [rsp + 0x54]
sub eax, ecx
mov word [rsp + 0x4c], ax
movzx eax, byte [rsp + 0x41]
mov ecx, 4
imul rcx, rcx, 0x40
lea rdx, [0x14192bc40]
mov dword [rdx + rcx], eax
mov byte [0x140177e8e], 0xb0
jmp 0x140102c5c
movzx eax, word [rsp + 0x54]
movabs rcx, 0x7925e81bfd5b4
sub rax, rcx
mov word [rsp + 0x48], ax
movzx eax, byte [rsp + 0x40]
movzx eax, al
mov ecx, dword [0x140177f70]
add ecx, eax
mov eax, ecx
movzx ecx, byte [0x140177f1b]
movzx edx, word [rsp + 0x50]
movsx edx, dx
imul ecx, edx
not ecx
and eax, ecx
mov byte [0x140177edf], al
mov eax, dword [rsp + 0x74]
jmp 0x1401031e4
lea rax, [rsp + 0x140]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x32c]
lea r8, [rsp + 0x318]
lea rdx, [rsp + 0x158]
mov rcx, qword [rsp + 0x540]
call fcn.1400027c3
mov dword [rsp + 0x74], eax
cmp dword [rsp + 0x74], 0
je 0x1401030fe
movzx eax, word [rsp + 0x58]
movzx ecx, word [0x140177f60]
cmp eax, ecx
jg 0x140102d00
xor eax, eax
cmp eax, 0xf88458c4
je 0x140102cfe
mov rax, qword [0x140177f98]
add rax, 0xbfd
mov dword [rsp + 0x70], eax
movsxd rax, dword [0x140177f04]
mov rcx, qword [0x140177f88]
imul rcx, rax
mov rax, rcx
movzx ecx, byte [rsp + 0x43]
movsx rcx, cl
sub rcx, qword [0x140177f88]
sub rax, rcx
mov dword [0x140177f68], eax
jmp 0x140102d12
movzx eax, byte [0x140177eb6]
add eax, 0xd9
mov byte [0x140177eb7], al
movzx eax, byte [0x140177eb7]
movzx eax, al
test eax, eax
je 0x140102e38
movzx eax, byte [rsp + 0x40]
movzx eax, al
cmp dword [rsp + 0x68], eax
je 0x140102d51
mov eax, dword [0x141720c40]
mov dword [rsp + 0x70], eax
mov eax, dword [0x140177f1c]
xor eax, 0x9dee06d3
mov word [rsp + 0x54], ax
jmp 0x140102e36
cmp qword [0x140177f88], 0
je 0x140102d92
movzx eax, word [0x140177f64]
mov rcx, qword [rsp + 0x90]
imul rax, rcx
movzx ecx, word [0x140177f64]
add rcx, rax
mov rax, rcx
mov word [0x140177f64], ax
mov eax, dword [0x140177e64]
mov word [rsp + 0x5c], ax
jmp 0x140102e36
mov rax, qword [rsp + 0x90]
test rax, rax
jne 0x140102db9
mov rax, qword [rsp + 0x88]
test rax, rax
jne 0x140102db9
mov dword [rsp + 0x2ec], 0
jmp 0x140102dc4
mov dword [rsp + 0x2ec], 1
movzx eax, word [0x140177fa8]
movsx rax, ax
movabs rcx, 0x597e41202f667
cmp rax, rcx
jle 0x140102deb
mov dword [rsp + 0x2e8], 1
jmp 0x140102df6
mov dword [rsp + 0x2e8], 0
mov eax, dword [rsp + 0x2e8]
cmp dword [rsp + 0x2ec], eax
jl 0x140102e36
movzx eax, byte [rsp + 0x45]
movzx eax, al
movabs rcx, 0x9a33d18a8cd2
sub rax, rcx
mov word [0x140177f78], ax
mov rax, qword [rsp + 0x80]
add rax, 0xf6
mov dword [0x140177fc4], eax
jmp 0x140102e85
mov dword [rsp + 0x70], 0xfc
movsx eax, word [0x140177fc0]
test eax, eax
je 0x140102e5a
movzx eax, word [rsp + 0x48]
mov word [rsp + 0xac], ax
jmp 0x140102e69
movzx eax, word [0x140177fd0]
mov word [rsp + 0xac], ax
movsx rax, word [rsp + 0xac]
mov qword [rsp + 0x88], rax
movzx eax, byte [0x141720c40]
mov byte [rsp + 0x41], al
mov eax, dword [0x141720c40]
mov dword [rsp + 0x144], eax
movzx eax, byte [0x141720c40]
mov byte [0x140177f02], al
movzx eax, byte [rsp + 0x42]
movsx rax, al
mov rcx, qword [0x140177fc8]
sub rcx, rax
mov rax, rcx
mov rcx, qword [0x140177fc8]
xor rcx, rax
mov rax, rcx
mov qword [0x140177fc8], rax
movzx eax, byte [rsp + 0x45]
movzx eax, al
xor eax, dword [0x140177f70]
mov byte [rsp + 0x45], al
mov eax, dword [rsp + 0x144]
add eax, 0x170
mov dword [rsp + 0x43c], eax
movzx eax, byte [0x140177e8e]
movzx eax, al
test eax, eax
je 0x140102f0a
mov eax, dword [rsp + 0x6c]
mov qword [rsp + 0x410], rax
jmp 0x140102f1a
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x410], rax
movzx eax, byte [rsp + 0x410]
mov byte [rsp + 0x40], al
movzx eax, byte [rsp + 0x42]
movsx eax, al
not eax
cdqe
mov rcx, qword [0x140177fb0]
add rax, rcx
mov rcx, qword [0x140177fa0]
sub rcx, rax
mov rax, rcx
movzx ecx, word [0x140177fa8]
movsx ecx, cx
not ecx
mov edx, dword [0x140177fc4]
add edx, ecx
mov ecx, edx
movsxd rcx, ecx
sub rax, rcx
mov byte [0x140177e8e], al
mov rax, qword [0x140177fb0]
not rax
mov qword [0x140177fa0], rax
mov eax, dword [rsp + 0x144]
add eax, 0x311
mov dword [rsp + 0x440], eax
mov eax, dword [rsp + 0x144]
add eax, 0xf2
mov dword [rsp + 0x2f0], eax
mov eax, dword [rsp + 0x2f0]
mov ecx, 0xbc
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x2f0]
imul ecx, ecx, 0x179
cmp eax, ecx
je 0x1401030fe
mov eax, dword [0x140177fac]
movzx ecx, word [0x140177f78]
cmp eax, ecx
jle 0x140102fe5
mov dword [rsp + 0x2f8], 1
jmp 0x140102ff0
mov dword [rsp + 0x2f8], 0
movsxd rax, dword [rsp + 0x64]
cmp rax, qword [0x140177fc8]
je 0x14010300b
mov dword [rsp + 0x2f4], 1
jmp 0x140103016
mov dword [rsp + 0x2f4], 0
mov eax, dword [rsp + 0x2f4]
cmp dword [rsp + 0x2f8], eax
jne 0x140103034
mov qword [rsp + 0x418], 1
jmp 0x140103040
mov qword [rsp + 0x418], 0
movzx eax, word [rsp + 0x48]
movsx rax, ax
mov rcx, qword [0x140177fa0]
not rcx
add rax, rcx
not rax
mov ecx, dword [0x140177fd4]
imul rax, rcx
cmp rax, qword [rsp + 0x418]
je 0x14010306f
jmp 0x1401030d1
movzx eax, byte [rsp + 0x43]
movsx eax, al
mov ecx, dword [0x140177fd8]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x140177fd8]
add ecx, eax
mov eax, ecx
mov dword [0x140177fd8], eax
movzx eax, byte [0x140177f03]
add eax, 0x1ed4
mov byte [rsp + 0x45], al
movzx eax, byte [rsp + 0x41]
test eax, eax
je 0x1401030b9
mov eax, dword [0x140177fd8]
mov dword [rsp + 0x2fc], eax
jmp 0x1401030c5
movzx eax, byte [rsp + 0x41]
mov dword [rsp + 0x2fc], eax
movzx eax, byte [rsp + 0x2fc]
mov byte [rsp + 0x41], al
movzx eax, word [0x140177fd0]
cwde
sub eax, 0x1b
mov dword [rsp + 0x6c], eax
mov rax, qword [rsp + 0x80]
imul rax, rax, 0x69f8
mov dword [0x140177f04], eax
mov eax, dword [rsp + 0x74]
jmp 0x1401031e4
mov rax, qword [0x140177f98]
add rax, 0x6045c4a3
mov word [0x140177f74], ax
mov rax, qword [0x140177f50]
mov rcx, qword [0x140177f38]
sub rcx, rax
mov rax, rcx
mov rcx, qword [0x140177f38]
add rcx, rax
mov rax, rcx
mov qword [0x140177f38], rax
movzx eax, byte [0x141720c44]
movzx eax, al
mov ecx, dword [0x140177e64]
imul ecx, eax
mov eax, ecx
movzx ecx, byte [rsp + 0x42]
movsx ecx, cl
lea eax, [rax + rcx - 0xff]
mov ecx, dword [0x140177f6c]
add eax, ecx
mov word [rsp + 0x58], ax
mov edx, dword [rsp + 0x330]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetConsoleTitleA]
movzx eax, byte [rsp + 0x43]
movsx rax, al
movabs rcx, 0x2e42fb8e281f0
sub rax, rcx
mov byte [rsp + 0x44], al
movsx eax, byte [rsp + 0x44]
movzx ecx, word [0x140177f74]
movzx ecx, cx
xor eax, ecx
movsx ecx, byte [rsp + 0x44]
movzx edx, word [0x140177fa8]
movsx edx, dx
imul ecx, edx
imul eax, ecx
mov word [rsp + 0x48], ax
movzx eax, byte [rsp + 0x41]
mov ecx, dword [rsp + 0x70]
not ecx
sub eax, ecx
movsx ecx, byte [rsp + 0x44]
sub ecx, dword [rsp + 0x64]
sub eax, ecx
mov eax, eax
mov qword [0x140177f50], rax
mov eax, dword [rsp + 0x74]
add rsp, 0x528
pop rdi
pop rsi
ret