Function at 0x140013350
Capabilities:
Get disk information
Query environment variable

Disassembly:
mov dword [rsp + 0x10], edx
mov dword [rsp + 8], ecx
sub rsp, 0x258
mov dword [rsp + 0x54], 0x34f
mov dword [rsp + 0x40], 0x35
mov byte [rsp + 0x22], 0xee
mov dword [rsp + 0x3c], 0x1ef
mov dword [rsp + 0x44], 0x3af
mov dword [rsp + 0x38], 0x7f
mov dword [rsp + 0x28], 0x39
mov dword [rsp + 0x30], 0x238
mov dword [rsp + 0x60], 0x242
mov byte [rsp + 0x23], 0x19
mov dword [rsp + 0x4c], 0x204
mov dword [rsp + 0x50], 0x108
mov byte [rsp + 0x20], 0xa7
mov dword [rsp + 0x34], 0x1a9
mov dword [rsp + 0x2c], 0x1dc
mov byte [rsp + 0x24], 0xa1
mov dword [rsp + 0x48], 0x1c4
mov byte [rsp + 0x25], 0x22
mov byte [rsp + 0x21], 0x68
imul eax, dword [0x14007d234], 7
mov ecx, dword [rsp + 0x50]
add ecx, eax
mov eax, ecx
xor edx, edx
mov ecx, 9
div ecx
mov eax, edx
mov dword [rsp + 0x20c], eax
mov eax, dword [rsp + 0x20c]
mov dword [rsp + 0x68], eax
cmp dword [rsp + 0x68], 0
je 0x14001343e
cmp dword [rsp + 0x68], 1
je 0x1400134bc
cmp dword [rsp + 0x68], 2
je 0x1400134dc
cmp dword [rsp + 0x68], 3
je 0x14001350a
jmp 0x140013596
mov eax, dword [rsp + 0x38]
movzx ecx, al
mov eax, dword [0x14007d210]
shl eax, cl
movzx ecx, byte [0x14007d202]
sub ecx, eax
mov eax, ecx
mov byte [0x14007d202], al
movsx eax, byte [0x14007d25c]
test eax, eax
je 0x140013498
movzx eax, byte [rsp + 0x23]
movzx ecx, byte [0x14007d21e]
mov edx, dword [rsp + 0x30]
sub edx, ecx
mov ecx, edx
mov edx, dword [rsp + 0x40]
shr edx, cl
mov ecx, edx
xor eax, ecx
test eax, eax
je 0x140013498
mov dword [rsp + 0xa8], 1
jmp 0x1400134a3
mov dword [rsp + 0xa8], 0
movsx eax, byte [0x14007d21c]
xor eax, dword [rsp + 0xa8]
mov byte [0x14007d21c], al
jmp 0x140013596
movzx eax, byte [0x14007d22c]
imul eax, dword [rsp + 0x48]
xor edx, edx
mov ecx, 3
div ecx
mov eax, edx
mov dword [rsp + 0x28], eax
jmp 0x140013596
movzx eax, byte [0x14007d22c]
mov ecx, dword [rsp + 0x3c]
sar eax, cl
mov ecx, dword [rsp + 0x30]
sar eax, cl
mov ecx, dword [0x14007d228]
mov edx, dword [rsp + 0x4c]
shl edx, cl
mov ecx, edx
and eax, ecx
mov dword [0x14007d250], eax
jmp 0x140013596
movzx eax, byte [rsp + 0x21]
cmp dword [rsp + 0x44], eax
je 0x14001352b
movzx eax, byte [rsp + 0x23]
test eax, eax
jne 0x14001352b
mov dword [rsp + 0xac], 0
jmp 0x140013536
mov dword [rsp + 0xac], 1
mov eax, dword [rsp + 0xac]
mov ecx, dword [0x14007d240]
sub ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d20c]
or ecx, eax
mov eax, ecx
mov dword [0x14007d20c], eax
movsx eax, byte [0x14007d25c]
mov ecx, dword [rsp + 0x28]
shl eax, cl
test eax, eax
je 0x14001357e
movzx eax, byte [rsp + 0x23]
test eax, eax
je 0x14001357e
mov dword [rsp + 0xb0], 1
jmp 0x140013589
mov dword [rsp + 0xb0], 0
mov eax, dword [rsp + 0xb0]
mov dword [0x14007d250], eax
movsx eax, byte [rsp + 0x20]
mov ecx, dword [0x14007d24c]
add ecx, eax
mov eax, ecx
test eax, eax
je 0x1400135cd
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x2c]
add ecx, eax
mov eax, ecx
movsx ecx, byte [0x14007d201]
cmp eax, ecx
jne 0x1400135cd
mov dword [rsp + 0xb4], 1
jmp 0x1400135d8
mov dword [rsp + 0xb4], 0
mov eax, dword [rsp + 0xb4]
mov ecx, dword [0x14007d240]
or ecx, eax
mov eax, ecx
mov dword [0x14007d240], eax
movsx eax, byte [0x14007d22f]
test eax, eax
jne 0x14001362f
mov eax, dword [0x14007d258]
cmp dword [rsp + 0x2c], eax
jae 0x140013613
mov dword [rsp + 0xb8], 1
jmp 0x14001361e
mov dword [rsp + 0xb8], 0
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0x3c], eax
jge 0x1400136d0
movsx eax, byte [rsp + 0x22]
cmp dword [rsp + 0x54], eax
jne 0x140013647
mov dword [rsp + 0xbc], 1
jmp 0x140013652
mov dword [rsp + 0xbc], 0
mov eax, dword [rsp + 0xbc]
mov ecx, dword [0x14007d224]
xor ecx, eax
mov eax, ecx
movzx ecx, byte [0x14007d21f]
sub ecx, eax
mov eax, ecx
mov byte [0x14007d21f], al
movzx eax, byte [rsp + 0x23]
cmp dword [rsp + 0x34], eax
jne 0x14001368c
mov dword [rsp + 0xc0], 1
jmp 0x140013697
mov dword [rsp + 0xc0], 0
mov eax, dword [rsp + 0x38]
cmp dword [rsp + 0xc0], eax
jne 0x1400136b1
mov dword [rsp + 0xc4], 1
jmp 0x1400136bc
mov dword [rsp + 0xc4], 0
movzx eax, byte [0x14007d21f]
or eax, dword [rsp + 0xc4]
mov dword [0x14007d204], eax
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
call qword [sym.imp.KERNEL32.dll_FreeConsole]
movsx eax, byte [rsp + 0x22]
cmp dword [rsp + 0x44], eax
je 0x140013742
movzx eax, byte [0x14007d202]
test eax, eax
je 0x140013742
movsx eax, byte [0x14007d21d]
movsx ecx, byte [rsp + 0x20]
mov edx, dword [rsp + 0x28]
and edx, ecx
mov ecx, edx
xor eax, ecx
test eax, eax
jne 0x14001372a
movsx eax, byte [rsp + 0x24]
mov ecx, dword [0x14007d20c]
sar eax, cl
test eax, eax
jne 0x14001372a
mov dword [rsp + 0xc8], 0
jmp 0x140013735
mov dword [rsp + 0xc8], 1
mov eax, dword [rsp + 0xc8]
mov dword [0x14007d254], eax
mov eax, dword [rsp + 0x60]
cmp dword [0x14007d210], eax
jne 0x14001375b
mov dword [rsp + 0xcc], 1
jmp 0x140013766
mov dword [rsp + 0xcc], 0
movsx eax, byte [rsp + 0x24]
mov ecx, dword [rsp + 0xcc]
and ecx, eax
mov eax, ecx
mov byte [0x14007d22d], al
movsx eax, byte [rsp + 0x24]
mov ecx, dword [0x14007d1fc]
add ecx, eax
mov eax, ecx
test eax, eax
jne 0x1400137a5
movsx eax, byte [rsp + 0x22]
test eax, eax
jne 0x1400137a5
mov dword [rsp + 0xd0], 0
jmp 0x1400137b0
mov dword [rsp + 0xd0], 1
mov eax, dword [rsp + 0xd0]
mov ecx, dword [0x14007d204]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d204], eax
movsx eax, byte [rsp + 0x20]
mov ecx, dword [rsp + 0x28]
or ecx, eax
mov eax, ecx
test eax, eax
je 0x1400137ee
movzx eax, byte [rsp + 0x21]
test eax, eax
je 0x1400137ee
mov dword [rsp + 0xd4], 1
jmp 0x1400137f9
mov dword [rsp + 0xd4], 0
mov eax, dword [rsp + 0xd4]
mov ecx, dword [0x14007d224]
sub ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d23c]
or ecx, eax
mov eax, ecx
mov dword [0x14007d23c], eax
cmp dword [rsp + 0x50], 0
jne 0x140013828
cmp dword [rsp + 0x4c], 0
je 0x140013856
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x28]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x3c]
or ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d230]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d258]
and ecx, eax
mov eax, ecx
mov dword [0x14007d258], eax
mov eax, dword [rsp + 0x28]
mov ecx, dword [0x14007d23c]
or ecx, eax
mov eax, ecx
test eax, eax
je 0x14001387c
cmp dword [rsp + 0x54], 0
je 0x14001387c
mov dword [rsp + 0xd8], 1
jmp 0x140013887
mov dword [rsp + 0xd8], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [0x14007d20c]
xor ecx, eax
mov eax, ecx
mov dword [0x14007d20c], eax
mov eax, dword [rsp + 0x40]
movzx ecx, al
mov eax, dword [rsp + 0x48]
shl eax, cl
cmp eax, dword [0x14007d24c]
jne 0x1400138c0
mov dword [rsp + 0xdc], 1
jmp 0x1400138cb
mov dword [rsp + 0xdc], 0
mov eax, dword [rsp + 0x30]
mov ecx, dword [0x14007d250]
add ecx, eax
mov eax, ecx
or eax, dword [rsp + 0xdc]
mov dword [0x14007d228], eax
mov eax, dword [rsp + 0x38]
movzx ecx, al
mov eax, dword [rsp + 0x34]
shr eax, cl
mov ecx, dword [0x14007d224]
and ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d24c]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d24c], eax
mov eax, dword [rsp + 0x48]
mov ecx, dword [0x14007d24c]
and ecx, eax
mov eax, ecx
movzx ecx, byte [0x14007d202]
sub ecx, eax
mov eax, ecx
mov byte [0x14007d202], al
movzx eax, byte [rsp + 0x21]
mov ecx, dword [0x14007d218]
sub ecx, eax
mov eax, ecx
sub eax, dword [rsp + 0x34]
mov ecx, dword [0x14007d218]
mov edx, dword [rsp + 0x4c]
sub edx, ecx
mov ecx, edx
or eax, ecx
mov ecx, dword [0x14007d250]
and ecx, eax
mov eax, ecx
mov dword [0x14007d250], eax
mov eax, dword [rsp + 0x30]
mov ecx, dword [0x14007d234]
xor ecx, eax
mov eax, ecx
movsx ecx, byte [0x14007d25c]
and ecx, eax
mov eax, ecx
mov byte [0x14007d25c], al
mov eax, dword [rsp + 0x44]
mov ecx, dword [0x14007d244]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x3c]
shr eax, cl
mov ecx, dword [0x14007d228]
mov edx, dword [rsp + 0x28]
sub edx, ecx
mov ecx, edx
shr eax, cl
mov ecx, dword [0x14007d254]
or ecx, eax
mov eax, ecx
mov dword [0x14007d254], eax
cmp dword [rsp + 0x4c], 0
je 0x1400139d0
mov eax, dword [rsp + 0x54]
cmp dword [rsp + 0x2c], eax
jne 0x1400139d0
mov dword [rsp + 0xe0], 1
jmp 0x1400139db
mov dword [rsp + 0xe0], 0
movzx eax, byte [0x14007d22c]
mov ecx, dword [rsp + 0xe0]
shl eax, cl
movsx ecx, byte [0x14007d21d]
add ecx, eax
mov eax, ecx
mov byte [0x14007d21d], al
movsx eax, byte [0x14007d22e]
test eax, eax
jne 0x140013a39
movzx eax, byte [0x14007d22c]
cmp dword [rsp + 0x28], eax
jne 0x140013a21
mov dword [rsp + 0xe4], 1
jmp 0x140013a2c
mov dword [rsp + 0xe4], 0
mov eax, dword [rsp + 0xe4]
cmp dword [rsp + 0x4c], eax
je 0x140013a58
movzx eax, byte [0x14007d22c]
xor eax, dword [rsp + 0x40]
or eax, dword [rsp + 0x60]
mov ecx, dword [0x14007d254]
add ecx, eax
mov eax, ecx
mov dword [0x14007d254], eax
mov eax, dword [rsp + 0x28]
movzx ecx, al
mov eax, dword [0x14007d24c]
shr eax, cl
test eax, eax
jne 0x140013a79
cmp dword [rsp + 0x50], 0
jne 0x140013a79
mov byte [rsp + 0x58], 0
jmp 0x140013a7e
mov byte [rsp + 0x58], 1
movzx eax, byte [rsp + 0x58]
mov byte [0x14007d201], al
mov eax, dword [rsp + 0x44]
mov ecx, dword [0x14007d208]
and ecx, eax
mov eax, ecx
test eax, eax
jne 0x140013aaf
cmp dword [rsp + 0x50], 0
jne 0x140013aaf
mov dword [rsp + 0xe8], 0
jmp 0x140013aba
mov dword [rsp + 0xe8], 1
movzx eax, byte [0x14007d21f]
and eax, dword [rsp + 0xe8]
mov byte [0x14007d21f], al
movsx eax, byte [0x14007d203]
mov dword [rsp + 0x210], eax
movzx ecx, byte [rsp + 0x23]
mov eax, ecx
cdq
and edx, 3
add eax, edx
and eax, 3
sub eax, edx
mov ecx, dword [rsp + 0x210]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c], eax
movzx eax, byte [rsp + 0x21]
mov ecx, dword [0x14007d228]
imul ecx, eax
mov eax, ecx
xor edx, edx
mov ecx, 3
div ecx
mov dword [rsp + 0x54], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessorNumber]
movzx eax, byte [rsp + 0x23]
mov ecx, dword [rsp + 0x38]
add ecx, eax
mov eax, ecx
xor eax, dword [rsp + 0x4c]
movzx ecx, al
mov eax, dword [0x14007d234]
sar eax, cl
mov ecx, dword [0x14007d214]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d214], eax
movsx eax, byte [rsp + 0x22]
mov ecx, dword [0x14007d224]
add ecx, eax
mov eax, ecx
sub eax, dword [rsp + 0x44]
mov ecx, dword [0x14007d248]
mov edx, dword [rsp + 0x28]
shr edx, cl
mov ecx, edx
cmp eax, ecx
jne 0x140013b7e
mov dword [rsp + 0xec], 1
jmp 0x140013b89
mov dword [rsp + 0xec], 0
mov eax, dword [rsp + 0xec]
mov ecx, dword [0x14007d220]
add ecx, eax
mov eax, ecx
mov dword [0x14007d220], eax
movsx eax, byte [0x14007d21d]
movzx ecx, byte [rsp + 0x21]
add ecx, dword [0x14007d250]
add ecx, eax
mov eax, ecx
mov dword [0x14007d250], eax
mov dword [rsp + 0x98], 0x21
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x214], eax
mov eax, dword [rsp + 0x98]
dec eax
mov dword [rsp + 0x98], eax
cmp dword [rsp + 0x214], 0
je 0x140013c20
movzx eax, byte [rsp + 0x21]
movzx ecx, al
mov eax, dword [rsp + 0x30]
shl eax, cl
movsx ecx, byte [rsp + 0x25]
or eax, ecx
mov ecx, dword [0x14007d20c]
sub ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d218]
and ecx, eax
mov eax, ecx
mov dword [0x14007d218], eax
jmp 0x140013bc7
mov eax, dword [rsp + 0x54]
cmp dword [0x14007d244], eax
jne 0x140013c42
movzx eax, byte [rsp + 0x21]
test eax, eax
je 0x140013c42
mov dword [rsp + 0xf0], 1
jmp 0x140013c4d
mov dword [rsp + 0xf0], 0
mov eax, dword [rsp + 0xf0]
mov dword [0x14007d220], eax
movsx eax, byte [0x14007d21c]
xor eax, dword [rsp + 0x44]
test eax, eax
je 0x140013c8f
movzx eax, byte [rsp + 0x21]
mov ecx, dword [rsp + 0x34]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d220]
shl eax, cl
test eax, eax
je 0x140013c8f
mov dword [rsp + 0xf4], 1
jmp 0x140013c9a
mov dword [rsp + 0xf4], 0
mov eax, dword [rsp + 0xf4]
mov ecx, dword [0x14007d210]
and ecx, eax
mov eax, ecx
mov dword [0x14007d210], eax
cmp dword [rsp + 0x44], 0
jne 0x140013cd2
movsx eax, byte [rsp + 0x25]
and eax, dword [rsp + 0x34]
test eax, eax
jne 0x140013cd2
mov dword [rsp + 0xf8], 0
jmp 0x140013cdd
mov dword [rsp + 0xf8], 1
movzx eax, byte [0x14007d22c]
and eax, dword [rsp + 0xf8]
movzx ecx, byte [0x14007d21f]
add ecx, eax
mov eax, ecx
mov byte [0x14007d21f], al
mov eax, dword [0x14007d24c]
imul eax, dword [rsp + 0x2c]
xor edx, edx
mov ecx, 3
div ecx
mov eax, edx
mov dword [rsp + 0x40], eax
movsx eax, byte [0x14007d21c]
cmp eax, dword [rsp + 0x40]
jne 0x140013d30
mov dword [rsp + 0xfc], 1
jmp 0x140013d3b
mov dword [rsp + 0xfc], 0
mov eax, dword [rsp + 0x44]
mov ecx, dword [rsp + 0x44]
add ecx, eax
mov eax, ecx
cmp dword [rsp + 0xfc], eax
jne 0x140013d66
cmp dword [0x14007d228], 0
je 0x140013d66
mov dword [rsp + 0x100], 1
jmp 0x140013d71
mov dword [rsp + 0x100], 0
mov eax, dword [rsp + 0x100]
mov ecx, dword [0x14007d218]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d218], eax
mov eax, dword [0x14007d220]
imul eax, dword [rsp + 0x28]
xor edx, edx
mov ecx, 4
div ecx
mov byte [rsp + 0x24], al
cmp dword [rsp + 0x3c], 0
jne 0x140013dc2
cmp dword [rsp + 0x28], 0
jne 0x140013dc2
cmp dword [rsp + 0x34], 0
jne 0x140013dc2
mov dword [rsp + 0x104], 0
jmp 0x140013dcd
mov dword [rsp + 0x104], 1
mov eax, dword [rsp + 0x104]
mov ecx, dword [0x14007d1fc]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d254]
and ecx, eax
mov eax, ecx
mov dword [0x14007d254], eax
mov dword [rsp + 0x6c], 0xbf
mov dword [rsp + 0x6c], 1
jmp 0x140013e0a
mov eax, dword [rsp + 0x6c]
inc eax
mov dword [rsp + 0x6c], eax
cmp dword [rsp + 0x6c], 0x50b
jge 0x140013fc4
movsx eax, byte [0x14007d22f]
cmp eax, dword [rsp + 0x3c]
je 0x140013e5a
mov eax, dword [0x14007d234]
cmp dword [rsp + 0x54], eax
jne 0x140013e3e
mov dword [rsp + 0x108], 1
jmp 0x140013e49
mov dword [rsp + 0x108], 0
mov eax, dword [rsp + 0x2c]
cmp dword [rsp + 0x108], eax
je 0x140013f19
movsx eax, byte [rsp + 0x22]
movzx ecx, al
mov eax, dword [0x14007d228]
shr eax, cl
movsx ecx, byte [0x14007d201]
xor ecx, eax
mov eax, ecx
mov byte [0x14007d201], al
movsx eax, byte [rsp + 0x25]
mov ecx, dword [0x14007d244]
add ecx, eax
mov eax, ecx
and eax, dword [rsp + 0x2c]
movsx ecx, byte [0x14007d21c]
mov edx, dword [rsp + 0x34]
add edx, ecx
mov ecx, edx
or eax, ecx
mov byte [0x14007d21f], al
movsx eax, byte [0x14007d25c]
test eax, eax
jne 0x140013ed1
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x30]
or ecx, eax
mov eax, ecx
or eax, dword [rsp + 0x4c]
test eax, eax
jne 0x140013ed1
mov dword [rsp + 0x10c], 0
jmp 0x140013edc
mov dword [rsp + 0x10c], 1
mov eax, dword [rsp + 0x10c]
mov ecx, dword [0x14007d210]
or ecx, eax
mov eax, ecx
mov dword [0x14007d210], eax
movsx eax, byte [0x14007d22e]
movsx ecx, byte [rsp + 0x22]
mov edx, dword [rsp + 0x50]
shr edx, cl
mov ecx, edx
xor eax, ecx
mov ecx, dword [0x14007d204]
and ecx, eax
mov eax, ecx
mov dword [0x14007d204], eax
movsx eax, byte [rsp + 0x25]
movzx ecx, al
mov eax, dword [0x14007d230]
shr eax, cl
test eax, eax
je 0x140013f43
movsx eax, byte [rsp + 0x20]
test eax, eax
je 0x140013f43
mov dword [rsp + 0x110], 1
jmp 0x140013f4e
mov dword [rsp + 0x110], 0
mov eax, dword [rsp + 0x110]
mov ecx, dword [0x14007d208]
add ecx, eax
mov eax, ecx
mov dword [0x14007d208], eax
movsx eax, byte [0x14007d200]
mov ecx, dword [rsp + 0x44]
sar eax, cl
movsx ecx, byte [0x14007d22f]
xor ecx, eax
mov eax, ecx
mov byte [0x14007d22f], al
movzx eax, byte [0x14007d21f]
cmp eax, dword [rsp + 0x50]
jne 0x140013f9d
mov dword [rsp + 0x114], 1
jmp 0x140013fa8
mov dword [rsp + 0x114], 0
mov eax, dword [rsp + 0x114]
mov ecx, dword [0x14007d248]
and ecx, eax
mov eax, ecx
mov dword [0x14007d248], eax
jmp 0x140013e00
movsx eax, byte [0x14007d25c]
movsx ecx, byte [rsp + 0x20]
imul eax, ecx
cdq
mov ecx, 5
idiv ecx
mov eax, edx
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x9c], 0xffffff76
mov eax, dword [rsp + 0x9c]
mov dword [rsp + 0x218], eax
mov eax, dword [rsp + 0x9c]
inc eax
mov dword [rsp + 0x9c], eax
cmp dword [rsp + 0x218], 0
je 0x14001403b
movsx eax, byte [0x14007d21c]
movzx ecx, byte [rsp + 0x21]
mov edx, dword [rsp + 0x3c]
mov r8d, dword [rsp + 0x48]
add r8d, edx
mov edx, r8d
and ecx, edx
sar eax, cl
mov dword [0x14007d228], eax
jmp 0x140013fec
cmp dword [rsp + 0x2c], 0
je 0x14001405f
mov eax, dword [rsp + 0x54]
mov ecx, dword [rsp + 0x50]
and ecx, eax
mov eax, ecx
test eax, eax
je 0x14001405f
mov dword [rsp + 0x118], 1
jmp 0x14001406a
mov dword [rsp + 0x118], 0
movsx eax, byte [0x14007d203]
mov ecx, dword [rsp + 0x118]
shl eax, cl
mov ecx, dword [0x14007d238]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d238], eax
movsx eax, byte [0x14007d22e]
mov ecx, dword [rsp + 0x40]
shl eax, cl
movsx ecx, byte [rsp + 0x25]
cmp eax, ecx
jne 0x1400140ad
mov dword [rsp + 0x11c], 1
jmp 0x1400140b8
mov dword [rsp + 0x11c], 0
mov eax, dword [rsp + 0x11c]
mov ecx, dword [0x14007d20c]
or ecx, eax
mov eax, ecx
mov dword [0x14007d20c], eax
movzx eax, byte [0x14007d22c]
test eax, eax
jne 0x140014107
movzx eax, byte [rsp + 0x21]
test eax, eax
je 0x1400140fa
movsx eax, byte [rsp + 0x25]
mov ecx, dword [0x14007d210]
mov edx, dword [rsp + 0x30]
sub edx, ecx
mov ecx, edx
cmp eax, ecx
je 0x140014107
mov dword [rsp + 0x120], 0
jmp 0x140014112
mov dword [rsp + 0x120], 1
movzx eax, byte [0x14007d21f]
add eax, dword [rsp + 0x120]
mov byte [0x14007d21f], al
movsx eax, byte [rsp + 0x25]
mov ecx, dword [0x14007d244]
imul ecx, eax
mov eax, ecx
xor edx, edx
mov ecx, 4
div ecx
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x48]
cmp dword [0x14007d218], eax
jbe 0x14001415c
mov dword [rsp + 0x128], 1
jmp 0x140014167
mov dword [rsp + 0x128], 0
movsx eax, byte [rsp + 0x22]
test eax, eax
jne 0x140014186
cmp dword [0x14007d24c], 0
jne 0x140014186
mov dword [rsp + 0x124], 0
jmp 0x140014191
mov dword [rsp + 0x124], 1
mov eax, dword [rsp + 0x124]
cmp dword [rsp + 0x128], eax
jle 0x1400141ae
mov dword [rsp + 0x12c], 1
jmp 0x1400141b9
mov dword [rsp + 0x12c], 0
mov eax, dword [rsp + 0x30]
cmp dword [rsp + 0x12c], eax
jne 0x14001432b
cmp dword [rsp + 0x38], 0
je 0x1400141da
movsx eax, byte [rsp + 0x24]
test eax, eax
jne 0x1400141f0
movsx eax, byte [rsp + 0x20]
test eax, eax
jne 0x1400141f0
mov dword [rsp + 0x130], 0
jmp 0x1400141fb
mov dword [rsp + 0x130], 1
movzx eax, byte [0x14007d202]
add eax, dword [rsp + 0x130]
movsx ecx, byte [0x14007d22d]
xor ecx, eax
mov eax, ecx
mov byte [0x14007d22d], al
cmp dword [0x14007d220], 0
je 0x140014237
cmp dword [rsp + 0x3c], 0
je 0x140014237
mov dword [rsp + 0x134], 1
jmp 0x140014242
mov dword [rsp + 0x134], 0
mov eax, dword [rsp + 0x134]
mov ecx, dword [0x14007d220]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d220], eax
movzx eax, byte [0x14007d22c]
test eax, eax
jne 0x140014283
cmp dword [rsp + 0x44], 0
jne 0x140014283
movsx eax, byte [rsp + 0x22]
cmp dword [rsp + 0x34], eax
je 0x140014283
mov dword [rsp + 0x138], 0
jmp 0x14001428e
mov dword [rsp + 0x138], 1
movsx eax, byte [0x14007d21c]
sub eax, dword [rsp + 0x138]
mov byte [0x14007d21c], al
movsx eax, byte [rsp + 0x20]
mov ecx, dword [rsp + 0x38]
mov edx, dword [rsp + 0x40]
add edx, ecx
mov ecx, edx
cmp eax, ecx
jne 0x1400142c4
mov dword [rsp + 0x13c], 1
jmp 0x1400142cf
mov dword [rsp + 0x13c], 0
mov eax, dword [rsp + 0x13c]
cmp dword [0x14007d214], eax
jne 0x1400142eb
mov dword [rsp + 0x140], 1
jmp 0x1400142f6
mov dword [rsp + 0x140], 0
mov eax, dword [rsp + 0x140]
mov ecx, dword [0x14007d208]
add ecx, eax
mov eax, ecx
mov dword [0x14007d208], eax
mov eax, dword [rsp + 0x60]
mov ecx, dword [0x14007d254]
sub ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d230]
or ecx, eax
mov eax, ecx
mov dword [0x14007d230], eax
imul eax, dword [0x14007d248], 7
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
xor edx, edx
mov ecx, 8
div ecx
mov eax, edx
mov dword [rsp + 0x21c], eax
mov eax, dword [rsp + 0x21c]
mov dword [rsp + 0x70], eax
cmp dword [rsp + 0x70], 0
je 0x140014380
cmp dword [rsp + 0x70], 1
je 0x1400143df
cmp dword [rsp + 0x70], 2
je 0x14001443f
cmp dword [rsp + 0x70], 3
je 0x14001445d
jmp 0x1400144b4
mov eax, dword [rsp + 0x4c]
mov ecx, dword [0x14007d1fc]
add ecx, eax
mov eax, ecx
test eax, eax
je 0x1400143b2
mov eax, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x2c]
add ecx, eax
mov eax, ecx
movsx ecx, byte [0x14007d25c]
or eax, ecx
test eax, eax
je 0x1400143b2
mov byte [rsp + 0x59], 1
jmp 0x1400143b7
mov byte [rsp + 0x59], 0
movzx eax, byte [rsp + 0x59]
mov byte [0x14007d22c], al
mov eax, dword [0x14007d228]
imul eax, dword [rsp + 0x54]
xor edx, edx
mov ecx, 5
div ecx
mov byte [rsp + 0x22], al
jmp 0x1400144b4
movsx eax, byte [rsp + 0x20]
mov ecx, dword [0x14007d214]
sub ecx, eax
mov eax, ecx
and eax, dword [rsp + 0x3c]
mov ecx, dword [0x14007d220]
xor ecx, eax
mov eax, ecx
mov dword [0x14007d220], eax
mov eax, dword [rsp + 0x54]
cmp dword [0x14007d1fc], eax
jne 0x14001441b
mov dword [rsp + 0x144], 1
jmp 0x140014426
mov dword [rsp + 0x144], 0
mov eax, dword [rsp + 0x144]
mov ecx, dword [0x14007d204]
add ecx, eax
mov eax, ecx
mov dword [0x14007d204], eax
jmp 0x1400144b4
movzx eax, byte [rsp + 0x21]
cdq
and edx, 3
add eax, edx
sar eax, 2
mov ecx, dword [0x14007d228]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
jmp 0x1400144b4
movsx eax, byte [0x14007d25c]
movsx ecx, byte [rsp + 0x20]
movsx edx, byte [rsp + 0x24]
and edx, dword [rsp + 0x30]
or ecx, edx
cmp eax, ecx
jne 0x14001447f
mov byte [rsp + 0x5a], 1
jmp 0x140014484
mov byte [rsp + 0x5a], 0
movzx eax, byte [rsp + 0x5a]
mov byte [0x14007d22f], al
movsx eax, byte [rsp + 0x20]
mov ecx, dword [rsp + 0x30]
sar eax, cl
mov ecx, dword [0x14007d218]
or ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d258]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d258], eax
call qword [sym.imp.KERNEL32.dll_AreFileApisANSI]
movsx eax, byte [rsp + 0x20]
mov ecx, dword [0x14007d244]
lea eax, [rax + rcx*2]
xor edx, edx
mov ecx, 4
div ecx
mov eax, edx
mov dword [rsp + 0x220], eax
mov eax, dword [rsp + 0x220]
mov dword [rsp + 0x74], eax
cmp dword [rsp + 0x74], 0
je 0x140014512
cmp dword [rsp + 0x74], 1
je 0x140014590
cmp dword [rsp + 0x74], 2
je 0x1400145b0
cmp dword [rsp + 0x74], 3
je 0x140014643
jmp 0x14001469f
movsx eax, byte [0x14007d25c]
movzx ecx, byte [rsp + 0x23]
xor eax, ecx
test eax, eax
jne 0x140014569
movzx eax, byte [0x14007d21f]
cmp dword [rsp + 0x40], eax
jne 0x14001453e
mov dword [rsp + 0x148], 1
jmp 0x140014549
mov dword [rsp + 0x148], 0
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
test eax, eax
jne 0x140014569
mov dword [rsp + 0x14c], 0
jmp 0x140014574
mov dword [rsp + 0x14c], 1
mov eax, dword [rsp + 0x14c]
mov ecx, dword [0x14007d254]
or ecx, eax
mov eax, ecx
mov dword [0x14007d254], eax
jmp 0x140014710
movsx eax, byte [0x14007d25c]
add eax, dword [rsp + 0x28]
mov ecx, dword [0x14007d23c]
or ecx, eax
mov eax, ecx
mov dword [0x14007d23c], eax
jmp 0x140014710
movsx eax, byte [0x14007d22f]
cmp eax, dword [rsp + 0x4c]
jne 0x1400145ca
mov dword [rsp + 0x150], 1
jmp 0x1400145d5
mov dword [rsp + 0x150], 0
movsx eax, byte [rsp + 0x24]
mov ecx, dword [rsp + 0x150]
or ecx, eax
mov eax, ecx
mov dword [0x14007d224], eax
mov eax, dword [rsp + 0x3c]
mov ecx, dword [0x14007d230]
xor ecx, eax
mov eax, ecx
test eax, eax
jne 0x140014626
mov eax, dword [rsp + 0x30]
movzx ecx, al
mov eax, dword [rsp + 0x4c]
sar eax, cl
test eax, eax
je 0x140014619
movsx eax, byte [0x14007d200]
test eax, eax
jne 0x140014626
mov dword [rsp + 0x154], 0
jmp 0x140014631
mov dword [rsp + 0x154], 1
mov eax, dword [rsp + 0x154]
mov dword [0x14007d214], eax
jmp 0x140014710
movsx eax, byte [0x14007d22d]
movzx ecx, byte [rsp + 0x23]
or eax, ecx
test eax, eax
jne 0x140014670
movzx eax, byte [rsp + 0x23]
cmp dword [rsp + 0x30], eax
jne 0x140014669
cmp dword [0x14007d240], 0
jne 0x140014670
mov byte [rsp + 0x5b], 0
jmp 0x140014675
mov byte [rsp + 0x5b], 1
movzx eax, byte [rsp + 0x5b]
mov byte [0x14007d201], al
movsx eax, byte [rsp + 0x24]
mov ecx, dword [0x14007d20c]
imul ecx, eax
mov eax, ecx
xor edx, edx
mov ecx, 3
div ecx
mov dword [rsp + 0x60], eax
jmp 0x140014710
mov eax, dword [rsp + 0x44]
cmp dword [0x14007d250], eax
jne 0x1400146b8
mov dword [rsp + 0x158], 1
jmp 0x1400146c3
mov dword [rsp + 0x158], 0
movsx eax, byte [0x14007d22e]
add eax, dword [rsp + 0x158]
mov byte [0x14007d22e], al
movzx eax, byte [rsp + 0x21]
sub eax, dword [rsp + 0x2c]
movzx ecx, al
mov eax, dword [0x14007d218]
shl eax, cl
mov dword [0x14007d258], eax
movzx eax, byte [rsp + 0x23]
mov ecx, dword [0x14007d218]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d24c]
and ecx, eax
mov eax, ecx
mov dword [0x14007d24c], eax
movsx eax, byte [rsp + 0x24]
test eax, eax
je 0x140014736
mov eax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x60]
or ecx, eax
mov eax, ecx
test eax, eax
je 0x140014736
mov dword [rsp + 0x15c], 1
jmp 0x140014741
mov dword [rsp + 0x15c], 0
movsx eax, byte [0x14007d21d]
cmp eax, dword [rsp + 0x15c]
jne 0x14001475e
mov dword [rsp + 0x160], 1
jmp 0x140014769
mov dword [rsp + 0x160], 0
mov eax, dword [rsp + 0x160]
mov ecx, dword [0x14007d23c]
add ecx, eax
mov eax, ecx
mov dword [0x14007d23c], eax
cmp dword [0x14007d244], 0
jne 0x1400147ae
mov eax, dword [rsp + 0x2c]
movzx ecx, al
mov eax, dword [rsp + 0x40]
shr eax, cl
test eax, eax
jne 0x1400147ae
cmp dword [rsp + 0x54], 0
jne 0x1400147ae
mov dword [rsp + 0x164], 0
jmp 0x1400147b9
mov dword [rsp + 0x164], 1
mov eax, dword [rsp + 0x164]
mov ecx, dword [0x14007d254]
or ecx, eax
mov eax, ecx
mov dword [0x14007d254], eax
movsx eax, byte [0x14007d22f]
or eax, dword [rsp + 0x28]
mov ecx, dword [0x14007d234]
or ecx, eax
mov eax, ecx
mov dword [0x14007d234], eax
mov dword [rsp + 0x78], 0x8f
mov dword [rsp + 0x78], 0x11
jmp 0x140014807
mov eax, dword [rsp + 0x78]
inc eax
mov dword [rsp + 0x78], eax
cmp dword [rsp + 0x78], 0x10d
jae 0x14001482c
movsx eax, byte [0x14007d22f]
imul eax, dword [rsp + 0x34]
xor edx, edx
mov ecx, 5
div ecx
mov dword [rsp + 0x38], eax
jmp 0x1400147fd
movzx eax, byte [rsp + 0x21]
test eax, eax
jne 0x140014853
movzx eax, byte [rsp + 0x21]
mov ecx, dword [rsp + 0x34]
sub ecx, eax
mov eax, ecx
test eax, eax
jne 0x140014853
mov dword [rsp + 0x168], 0
jmp 0x14001485e
mov dword [rsp + 0x168], 1
movzx eax, byte [0x14007d21e]
mov ecx, dword [rsp + 0x168]
sar eax, cl
movsx ecx, byte [0x14007d22d]
xor ecx, eax
mov eax, ecx
mov byte [0x14007d22d], al
mov eax, dword [rsp + 0x4c]
mov ecx, dword [0x14007d24c]
xor ecx, eax
mov eax, ecx
or eax, dword [rsp + 0x60]
mov ecx, dword [0x14007d228]
or ecx, eax
mov eax, ecx
mov dword [0x14007d228], eax
movsx eax, byte [0x14007d201]
movsx ecx, byte [rsp + 0x24]
sub eax, ecx
movzx ecx, byte [0x14007d22c]
or ecx, eax
mov eax, ecx
mov byte [0x14007d22c], al
mov eax, dword [rsp + 0x34]
movzx ecx, al
mov eax, dword [rsp + 0x48]
shl eax, cl
test eax, eax
je 0x1400148e7
movsx eax, byte [rsp + 0x20]
test eax, eax
je 0x1400148e7
mov dword [rsp + 0x16c], 1
jmp 0x1400148f2
mov dword [rsp + 0x16c], 0
movzx eax, byte [0x14007d202]
add eax, dword [rsp + 0x16c]
movsx ecx, byte [0x14007d201]
add ecx, eax
mov eax, ecx
mov byte [0x14007d201], al
mov eax, 0xfffffd2f
mov word [rsp + 0x64], ax
movsx eax, word [rsp + 0x64]
mov dword [rsp + 0x224], eax
movzx eax, word [rsp + 0x64]
inc ax
mov word [rsp + 0x64], ax
cmp dword [rsp + 0x224], 0
je 0x140014b59
mov eax, dword [rsp + 0x34]
cmp dword [0x14007d240], eax
jne 0x140014a57
mov eax, dword [0x14007d210]
cmp dword [rsp + 0x28], eax
jae 0x140014a57
mov eax, dword [rsp + 0x30]
movzx ecx, al
mov eax, dword [rsp + 0x60]
shl eax, cl
and eax, dword [rsp + 0x28]
mov ecx, dword [0x14007d244]
or ecx, eax
mov eax, ecx
movzx ecx, byte [0x14007d21f]
and ecx, eax
mov eax, ecx
mov byte [0x14007d21f], al
movsx eax, byte [0x14007d22d]
cmp eax, dword [rsp + 0x2c]
jne 0x1400149a8
mov dword [rsp + 0x170], 1
jmp 0x1400149b3
mov dword [rsp + 0x170], 0
mov eax, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x170]
xor ecx, eax
mov eax, ecx
mov dword [0x14007d218], eax
cmp dword [0x14007d210], 0
je 0x1400149fa
movsx eax, byte [rsp + 0x25]
mov ecx, dword [rsp + 0x2c]
sub ecx, eax
mov eax, ecx
movzx ecx, byte [rsp + 0x21]
add eax, ecx
cmp eax, dword [0x14007d234]
jne 0x1400149fa
mov dword [rsp + 0x174], 1
jmp 0x140014a05
mov dword [rsp + 0x174], 0
mov eax, dword [rsp + 0x174]
mov ecx, dword [0x14007d230]
and ecx, eax
mov eax, ecx
mov dword [0x14007d230], eax
movzx eax, byte [0x14007d21e]
mov ecx, dword [rsp + 0x2c]
sar eax, cl
mov ecx, dword [rsp + 0x34]
sar eax, cl
mov ecx, dword [0x14007d248]
xor ecx, eax
mov eax, ecx
mov dword [0x14007d248], eax
mov eax, dword [0x14007d244]
imul eax, dword [rsp + 0x44]
xor edx, edx
mov ecx, 5
div ecx
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x4c]
add ecx, eax
mov eax, ecx
test eax, eax
je 0x140014a7b
cmp dword [rsp + 0x50], 0
je 0x140014a7b
mov dword [rsp + 0x178], 1
jmp 0x140014a86
mov dword [rsp + 0x178], 0
movsx eax, byte [0x14007d201]
xor eax, dword [rsp + 0x178]
mov dword [0x14007d1fc], eax
movsx eax, byte [rsp + 0x22]
mov ecx, dword [0x14007d228]
imul ecx, eax
mov eax, ecx
xor edx, edx
mov ecx, 4
div ecx
mov dword [rsp + 0x28], eax
movsx eax, byte [0x14007d21c]
movsx ecx, byte [rsp + 0x20]
mov edx, dword [rsp + 0x2c]
shr edx, cl
mov ecx, edx
mov edx, dword [rsp + 0x28]
xor edx, ecx
mov ecx, edx
cmp eax, ecx
jne 0x140014ae4
mov dword [rsp + 0x17c], 1
jmp 0x140014aef
mov dword [rsp + 0x17c], 0
mov eax, dword [rsp + 0x17c]
mov ecx, dword [0x14007d1fc]
xor ecx, eax
mov eax, ecx
mov dword [0x14007d1fc], eax
movsx eax, byte [0x14007d21c]
mov dword [rsp + 0x228], eax
mov eax, dword [rsp + 0x4c]
cdq
mov ecx, 5
idiv ecx
mov eax, edx
mov ecx, dword [rsp + 0x228]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x48]
movzx ecx, al
mov eax, dword [0x14007d248]
shl eax, cl
xor eax, dword [rsp + 0x44]
mov ecx, dword [0x14007d24c]
add ecx, eax
mov eax, ecx
mov dword [0x14007d24c], eax
jmp 0x14001491b
call qword [sym.imp.KERNEL32.dll_GetLogicalDrives]
imul eax, dword [0x14007d20c], 7
mov ecx, dword [rsp + 0x2c]
add ecx, eax
mov eax, ecx
xor edx, edx
mov ecx, 5
div ecx
mov eax, edx
mov word [rsp + 0x90], ax
movsx eax, word [rsp + 0x90]
mov dword [rsp + 0x7c], eax
cmp dword [rsp + 0x7c], 0
je 0x140014bb6
cmp dword [rsp + 0x7c], 1
je 0x140014bd9
cmp dword [rsp + 0x7c], 2
je 0x140014c39
cmp dword [rsp + 0x7c], 3
je 0x140014cd2
jmp 0x140014d49
movsx eax, byte [rsp + 0x24]
cdq
and edx, 3
add eax, edx
and eax, 3
sub eax, edx
mov ecx, dword [0x14007d230]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x28], eax
jmp 0x140014d49
mov eax, dword [rsp + 0x2c]
mov ecx, dword [0x14007d248]
xor ecx, eax
mov eax, ecx
test eax, eax
je 0x140014c01
movsx eax, byte [rsp + 0x24]
test eax, eax
je 0x140014c01
mov dword [rsp + 0x180], 1
jmp 0x140014c0c
mov dword [rsp + 0x180], 0
mov eax, dword [rsp + 0x180]
mov dword [0x14007d20c], eax
movzx eax, byte [rsp + 0x21]
cdq
mov ecx, 5
idiv ecx
mov ecx, dword [0x14007d24c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x38], eax
jmp 0x140014d49
cmp dword [0x14007d250], 0
je 0x140014c58
movzx eax, byte [rsp + 0x23]
test eax, eax
je 0x140014c58
mov dword [rsp + 0x184], 1
jmp 0x140014c63
mov dword [rsp + 0x184], 0
movzx eax, byte [0x14007d21e]
and eax, dword [rsp + 0x184]
mov byte [0x14007d21e], al
movzx eax, byte [0x14007d22c]
test eax, eax
je 0x140014c98
mov eax, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x50]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x60]
shl eax, cl
test eax, eax
jne 0x140014cae
cmp dword [0x14007d210], 0
jne 0x140014cae
mov dword [rsp + 0x188], 0
jmp 0x140014cb9
mov dword [rsp + 0x188], 1
mov eax, dword [rsp + 0x188]
mov ecx, dword [0x14007d220]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d220], eax
jmp 0x140014d49
movsx eax, byte [rsp + 0x25]
mov ecx, dword [0x14007d258]
imul ecx, eax
mov eax, ecx
xor edx, edx
mov ecx, 3
div ecx
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x3c]
mov ecx, dword [0x14007d248]
sub ecx, eax
mov eax, ecx
test eax, eax
jne 0x140014d27
mov eax, dword [rsp + 0x38]
movzx ecx, al
mov eax, dword [rsp + 0x3c]
shl eax, cl
mov ecx, dword [0x14007d240]
shl eax, cl
test eax, eax
jne 0x140014d27
mov dword [rsp + 0x18c], 0
jmp 0x140014d32
mov dword [rsp + 0x18c], 1
mov eax, dword [rsp + 0x18c]
mov ecx, dword [0x14007d214]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d214], eax
mov eax, dword [rsp + 0x40]
cmp dword [rsp + 0x30], eax
jne 0x140014d60
mov dword [rsp + 0x190], 1
jmp 0x140014d6b
mov dword [rsp + 0x190], 0
mov eax, dword [rsp + 0x2c]
mov ecx, dword [0x14007d240]
sub ecx, eax
mov eax, ecx
and eax, dword [rsp + 0x190]
test eax, eax
je 0x140014d96
movzx eax, byte [0x14007d202]
test eax, eax
je 0x140014d96
mov byte [rsp + 0x5c], 1
jmp 0x140014d9b
mov byte [rsp + 0x5c], 0
movzx eax, byte [rsp + 0x5c]
mov byte [0x14007d22d], al
movsx eax, byte [0x14007d200]
movsx ecx, byte [rsp + 0x20]
add ecx, dword [rsp + 0x50]
cmp eax, ecx
jne 0x140014dc7
mov dword [rsp + 0x194], 1
jmp 0x140014dd2
mov dword [rsp + 0x194], 0
mov eax, dword [rsp + 0x194]
mov ecx, dword [0x14007d214]
or ecx, eax
mov eax, ecx
mov dword [0x14007d214], eax
movsx eax, byte [0x14007d22d]
sub eax, dword [rsp + 0x4c]
mov ecx, dword [rsp + 0x50]
mov edx, dword [rsp + 0x34]
sub edx, ecx
mov ecx, edx
shl eax, cl
test eax, eax
je 0x140014e16
cmp dword [0x14007d1fc], 0
je 0x140014e16
mov byte [rsp + 0x5d], 1
jmp 0x140014e1b
mov byte [rsp + 0x5d], 0
movzx eax, byte [rsp + 0x5d]
mov byte [0x14007d202], al
movzx eax, byte [0x14007d202]
mov dword [rsp + 0x22c], eax
xor edx, edx
mov eax, dword [rsp + 0x2c]
mov ecx, 3
div ecx
mov eax, edx
mov ecx, dword [rsp + 0x22c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x34], eax
cmp dword [0x14007d1fc], 0
je 0x140014e75
movsx eax, byte [rsp + 0x20]
and eax, dword [rsp + 0x44]
test eax, eax
je 0x140014e75
mov dword [rsp + 0x198], 1
jmp 0x140014e80
mov dword [rsp + 0x198], 0
mov eax, dword [rsp + 0x198]
mov ecx, dword [0x14007d250]
or ecx, eax
mov eax, ecx
mov dword [0x14007d250], eax
mov eax, dword [rsp + 0x34]
mov ecx, dword [0x14007d228]
add ecx, eax
mov eax, ecx
movzx ecx, byte [0x14007d22c]
sub ecx, eax
mov eax, ecx
mov byte [0x14007d22c], al
movzx eax, byte [0x14007d22c]
movsx ecx, byte [rsp + 0x20]
sub ecx, dword [rsp + 0x28]
sub ecx, dword [rsp + 0x3c]
or eax, ecx
mov byte [0x14007d22c], al
movzx eax, byte [rsp + 0x23]
movzx ecx, byte [0x14007d21e]
imul ecx, ecx, 5
add eax, ecx
cdq
mov ecx, 6
idiv ecx
mov eax, edx
mov word [rsp + 0x94], ax
movsx eax, word [rsp + 0x94]
mov dword [rsp + 0x80], eax
cmp dword [rsp + 0x80], 0
je 0x140014f35
cmp dword [rsp + 0x80], 1
je 0x140014f7b
cmp dword [rsp + 0x80], 2
je 0x140014f9a
cmp dword [rsp + 0x80], 3
je 0x14001500b
jmp 0x140015070
cmp dword [0x14007d1fc], 0
je 0x140014f54
movzx eax, byte [rsp + 0x21]
test eax, eax
je 0x140014f54
mov dword [rsp + 0x19c], 1
jmp 0x140014f5f
mov dword [rsp + 0x19c], 0
mov eax, dword [rsp + 0x19c]
mov ecx, dword [0x14007d238]
xor ecx, eax
mov eax, ecx
mov dword [0x14007d238], eax
jmp 0x140015070
mov eax, dword [rsp + 0x3c]
cdq
mov ecx, 5
idiv ecx
mov ecx, dword [0x14007d238]
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x20], al
jmp 0x140015070
movsx eax, byte [rsp + 0x22]
cmp dword [0x14007d240], eax
jne 0x140014fb4
mov dword [rsp + 0x1a0], 1
jmp 0x140014fbf
mov dword [rsp + 0x1a0], 0
mov eax, dword [rsp + 0x1a0]
mov dword [0x14007d218], eax
movzx eax, byte [0x14007d21f]
movsx ecx, byte [rsp + 0x20]
cmp eax, ecx
jne 0x140014fe9
mov dword [rsp + 0x1a4], 1
jmp 0x140014ff4
mov dword [rsp + 0x1a4], 0
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x1a4]
and ecx, eax
mov eax, ecx
mov byte [0x14007d201], al
jmp 0x140015070
cmp dword [0x14007d20c], 0
je 0x140015035
movsx eax, byte [rsp + 0x25]
movzx ecx, al
mov eax, dword [rsp + 0x38]
shr eax, cl
cmp eax, dword [rsp + 0x30]
jne 0x140015035
mov dword [rsp + 0x1a8], 1
jmp 0x140015040
mov dword [rsp + 0x1a8], 0
movsx eax, byte [0x14007d25c]
and eax, dword [rsp + 0x1a8]
mov byte [0x14007d25c], al
movsx eax, byte [0x14007d22d]
add eax, dword [rsp + 0x28]
movsx ecx, byte [0x14007d22e]
xor ecx, eax
mov eax, ecx
mov byte [0x14007d22e], al
movzx eax, byte [rsp + 0x21]
cmp eax, dword [rsp + 0x28]
jne 0x1400150c3
mov eax, dword [0x14007d248]
imul eax, dword [rsp + 0x30]
xor edx, edx
mov ecx, 4
div ecx
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x21]
mov ecx, dword [rsp + 0x3c]
sub ecx, eax
mov eax, ecx
movzx ecx, al
mov eax, dword [rsp + 0x28]
shr eax, cl
mov ecx, dword [0x14007d220]
or ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d244]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d244], eax
cmp dword [0x14007d24c], 0
je 0x1400150f2
movsx eax, byte [rsp + 0x25]
mov ecx, dword [rsp + 0x40]
xor ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x3c]
or ecx, eax
mov eax, ecx
test eax, eax
je 0x1400150f2
mov dword [rsp + 0x1ac], 1
jmp 0x1400150fd
mov dword [rsp + 0x1ac], 0
mov eax, dword [rsp + 0x1ac]
mov ecx, dword [0x14007d248]
xor ecx, eax
mov eax, ecx
mov dword [0x14007d248], eax
mov eax, dword [rsp + 0x34]
movzx ecx, al
mov eax, dword [0x14007d224]
shr eax, cl
mov ecx, dword [0x14007d228]
xor ecx, eax
mov eax, ecx
mov dword [0x14007d228], eax
cmp dword [0x14007d220], 0
jne 0x140015159
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x30]
xor ecx, eax
mov eax, ecx
test eax, eax
jne 0x140015159
mov dword [rsp + 0x1b0], 0
jmp 0x140015164
mov dword [rsp + 0x1b0], 1
mov eax, dword [rsp + 0x1b0]
mov ecx, dword [0x14007d208]
add ecx, eax
mov eax, ecx
mov dword [0x14007d208], eax
mov dword [rsp + 0xa0], 0xc8
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x230], eax
mov eax, dword [rsp + 0xa0]
dec eax
mov dword [rsp + 0xa0], eax
cmp dword [rsp + 0x230], 0
je 0x14001531e
movsx eax, byte [0x14007d201]
movzx ecx, byte [rsp + 0x23]
movsx edx, byte [rsp + 0x22]
sub ecx, edx
sar eax, cl
movzx ecx, byte [0x14007d21e]
and ecx, eax
mov eax, ecx
mov byte [0x14007d21e], al
mov eax, dword [rsp + 0x44]
movzx ecx, al
mov eax, dword [0x14007d218]
sar eax, cl
movzx ecx, byte [rsp + 0x23]
shl eax, cl
mov dword [0x14007d254], eax
mov eax, dword [rsp + 0x34]
cmp dword [0x14007d234], eax
jbe 0x14001520d
mov dword [rsp + 0x1b8], 1
jmp 0x140015218
mov dword [rsp + 0x1b8], 0
cmp dword [rsp + 0x50], 0
je 0x140015235
cmp dword [0x14007d23c], 0
je 0x140015235
mov dword [rsp + 0x1b4], 1
jmp 0x140015240
mov dword [rsp + 0x1b4], 0
mov eax, dword [rsp + 0x1b4]
cmp dword [rsp + 0x1b8], eax
jge 0x14001525d
mov dword [rsp + 0x1bc], 1
jmp 0x140015268
mov dword [rsp + 0x1bc], 0
movsx eax, byte [rsp + 0x25]
cmp dword [rsp + 0x1bc], eax
jle 0x1400152d4
movsx eax, byte [0x14007d22e]
test eax, eax
je 0x1400152b2
movsx eax, byte [rsp + 0x20]
test eax, eax
je 0x1400152b2
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x2c]
xor ecx, eax
mov eax, ecx
test eax, eax
je 0x1400152b2
movsx eax, byte [0x14007d22e]
test eax, eax
je 0x1400152b2
mov dword [rsp + 0x1c0], 1
jmp 0x1400152bd
mov dword [rsp + 0x1c0], 0
mov eax, dword [rsp + 0x1c0]
mov ecx, dword [0x14007d1fc]
and ecx, eax
mov eax, ecx
mov dword [0x14007d1fc], eax
movsx eax, byte [rsp + 0x20]
movzx ecx, al
mov eax, dword [0x14007d234]
sar eax, cl
cmp eax, dword [rsp + 0x38]
jne 0x1400152f7
mov dword [rsp + 0x1c4], 1
jmp 0x140015302
mov dword [rsp + 0x1c4], 0
mov eax, dword [rsp + 0x1c4]
mov ecx, dword [0x14007d208]
xor ecx, eax
mov eax, ecx
mov dword [0x14007d208], eax
jmp 0x140015186
mov dword [rsp + 0xa4], 0x112
mov eax, dword [rsp + 0xa4]
mov dword [rsp + 0x234], eax
mov eax, dword [rsp + 0xa4]
dec eax
mov dword [rsp + 0xa4], eax
cmp dword [rsp + 0x234], 0
je 0x140015364
movsx eax, byte [0x14007d21d]
add eax, dword [rsp + 0x40]
mov dword [0x14007d234], eax
jmp 0x140015329
movzx eax, byte [rsp + 0x23]
cmp dword [rsp + 0x28], eax
jne 0x14001537c
mov dword [rsp + 0x1c8], 1
jmp 0x140015387
mov dword [rsp + 0x1c8], 0
mov eax, dword [rsp + 0x1c8]
mov ecx, dword [0x14007d234]
xor ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d220]
and ecx, eax
mov eax, ecx
mov dword [0x14007d220], eax
movsx eax, byte [0x14007d200]
test eax, eax
je 0x1400153ba
cmp dword [rsp + 0x50], 0
jne 0x1400153ce
cmp dword [rsp + 0x28], 0
jne 0x1400153ce
mov dword [rsp + 0x1cc], 0
jmp 0x1400153d9
mov dword [rsp + 0x1cc], 1
movzx eax, byte [0x14007d21f]
sub eax, dword [rsp + 0x1cc]
mov byte [0x14007d21f], al
movsx eax, byte [0x14007d21d]
imul eax, eax, 3
mov ecx, dword [rsp + 0x30]
add ecx, eax
mov eax, ecx
cdq
mov ecx, 9
idiv ecx
mov eax, edx
mov dword [rsp + 0x238], eax
mov eax, dword [rsp + 0x238]
mov dword [rsp + 0x84], eax
cmp dword [rsp + 0x84], 0
je 0x140015457
cmp dword [rsp + 0x84], 1
je 0x1400154b7
cmp dword [rsp + 0x84], 2
je 0x140015525
cmp dword [rsp + 0x84], 3
je 0x1400155c9
jmp 0x14001563f
mov eax, dword [rsp + 0x28]
mov ecx, dword [0x14007d244]
and ecx, eax
mov eax, ecx
mov byte [0x14007d21d], al
movzx eax, byte [rsp + 0x21]
test eax, eax
je 0x140015491
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x38]
and ecx, eax
mov eax, ecx
test eax, eax
je 0x140015491
mov dword [rsp + 0x1d0], 1
jmp 0x14001549c
mov dword [rsp + 0x1d0], 0
movsx eax, byte [0x14007d22e]
mov ecx, dword [rsp + 0x1d0]
shl eax, cl
mov byte [0x14007d203], al
jmp 0x14001563f
movsx eax, byte [0x14007d25c]
cmp eax, dword [rsp + 0x48]
jne 0x1400154d1
mov dword [rsp + 0x1d4], 1
jmp 0x1400154dc
mov dword [rsp + 0x1d4], 0
movzx eax, byte [rsp + 0x21]
mov ecx, dword [rsp + 0x1d4]
or ecx, eax
mov eax, ecx
movsx ecx, byte [0x14007d203]
xor ecx, eax
mov eax, ecx
mov byte [0x14007d203], al
movsx eax, byte [0x14007d22d]
sub eax, dword [rsp + 0x54]
movzx ecx, byte [rsp + 0x23]
shr eax, cl
movsx ecx, byte [0x14007d200]
sub ecx, eax
mov eax, ecx
mov byte [0x14007d200], al
jmp 0x14001563f
movsx eax, byte [0x14007d22d]
test eax, eax
jne 0x140015553
movsx eax, byte [rsp + 0x22]
xor eax, dword [rsp + 0x4c]
test eax, eax
je 0x140015546
movzx eax, byte [rsp + 0x23]
test eax, eax
jne 0x140015553
mov dword [rsp + 0x1d8], 0
jmp 0x14001555e
mov dword [rsp + 0x1d8], 1
mov eax, dword [rsp + 0x1d8]
mov ecx, dword [0x14007d228]
add ecx, eax
mov eax, ecx
mov dword [0x14007d228], eax
movsx eax, byte [0x14007d21c]
movsx ecx, byte [rsp + 0x24]
sub eax, ecx
movsx ecx, byte [rsp + 0x22]
and eax, ecx
test eax, eax
jne 0x1400155a8
movsx eax, byte [0x14007d22e]
cmp dword [rsp + 0x48], eax
je 0x1400155a8
mov dword [rsp + 0x1dc], 0
jmp 0x1400155b3
mov dword [rsp + 0x1dc], 1
movsx eax, byte [0x14007d22e]
sub eax, dword [rsp + 0x1dc]
mov byte [0x14007d22e], al
jmp 0x14001563f
movsx eax, byte [rsp + 0x22]
cmp eax, dword [rsp + 0x60]
jne 0x1400155e1
mov dword [rsp + 0x1e0], 1
jmp 0x1400155ec
mov dword [rsp + 0x1e0], 0
mov eax, dword [rsp + 0x1e0]
mov ecx, dword [0x14007d224]
xor ecx, eax
mov eax, ecx
or eax, dword [rsp + 0x3c]
test eax, eax
je 0x14001561d
movzx eax, byte [0x14007d21e]
test eax, eax
je 0x14001561d
mov dword [rsp + 0x1e4], 1
jmp 0x140015628
mov dword [rsp + 0x1e4], 0
mov eax, dword [rsp + 0x1e4]
mov ecx, dword [0x14007d250]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d250], eax
movsx eax, byte [rsp + 0x24]
movsx ecx, byte [0x14007d22d]
add eax, ecx
cdq
mov ecx, 9
idiv ecx
mov eax, edx
mov dword [rsp + 0x23c], eax
mov eax, dword [rsp + 0x23c]
mov dword [rsp + 0x88], eax
cmp dword [rsp + 0x88], 0
je 0x1400156a5
cmp dword [rsp + 0x88], 1
je 0x14001575f
cmp dword [rsp + 0x88], 2
je 0x140015797
cmp dword [rsp + 0x88], 3
je 0x1400157f2
jmp 0x14001584d
movsx eax, byte [rsp + 0x25]
cmp dword [0x14007d208], eax
jne 0x1400156bf
mov dword [rsp + 0x1e8], 1
jmp 0x1400156ca
mov dword [rsp + 0x1e8], 0
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x1e8]
xor ecx, eax
mov eax, ecx
movsx ecx, byte [0x14007d200]
xor ecx, eax
mov eax, ecx
mov byte [0x14007d200], al
movsx eax, byte [rsp + 0x22]
test eax, eax
je 0x140015711
movzx eax, byte [rsp + 0x21]
mov ecx, dword [rsp + 0x54]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140015711
mov dword [rsp + 0x1ec], 1
jmp 0x14001571c
mov dword [rsp + 0x1ec], 0
mov eax, dword [rsp + 0x1ec]
cmp dword [0x14007d208], eax
jne 0x140015738
mov dword [rsp + 0x1f0], 1
jmp 0x140015743
mov dword [rsp + 0x1f0], 0
mov eax, dword [rsp + 0x1f0]
mov ecx, dword [0x14007d220]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d220], eax
jmp 0x14001584d
movsx eax, byte [0x14007d22e]
test eax, eax
jne 0x140015782
mov eax, dword [rsp + 0x28]
movzx ecx, al
mov eax, dword [rsp + 0x40]
shl eax, cl
test eax, eax
jne 0x140015782
mov byte [rsp + 0x5e], 0
jmp 0x140015787
mov byte [rsp + 0x5e], 1
movzx eax, byte [rsp + 0x5e]
mov byte [0x14007d22f], al
jmp 0x14001584d
movzx eax, byte [0x14007d202]
xor eax, dword [rsp + 0x44]
mov dword [0x14007d214], eax
cmp dword [0x14007d244], 0
je 0x1400157ce
cmp dword [rsp + 0x3c], 0
je 0x1400157ce
movsx eax, byte [rsp + 0x24]
test eax, eax
je 0x1400157ce
mov dword [rsp + 0x1f4], 1
jmp 0x1400157d9
mov dword [rsp + 0x1f4], 0
mov eax, dword [rsp + 0x1f4]
mov ecx, dword [0x14007d23c]
xor ecx, eax
mov eax, ecx
mov dword [0x14007d23c], eax
jmp 0x14001584d
movsx eax, byte [0x14007d25c]
test eax, eax
je 0x140015811
cmp dword [rsp + 0x2c], 0
je 0x140015811
mov dword [rsp + 0x1f8], 1
jmp 0x14001581c
mov dword [rsp + 0x1f8], 0
movsx eax, byte [0x14007d25c]
or eax, dword [rsp + 0x1f8]
mov byte [0x14007d25c], al
movsx eax, byte [rsp + 0x22]
cdq
mov ecx, 5
idiv ecx
mov eax, edx
mov ecx, dword [0x14007d1fc]
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x25], al
movzx eax, byte [rsp + 0x21]
mov ecx, dword [0x14007d230]
sub ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d24c]
add ecx, eax
mov eax, ecx
mov dword [0x14007d24c], eax
movzx eax, byte [0x14007d21f]
and eax, dword [rsp + 0x60]
xor eax, dword [rsp + 0x48]
mov ecx, dword [0x14007d240]
sub ecx, eax
mov eax, ecx
mov dword [0x14007d240], eax
movsx eax, byte [rsp + 0x24]
sub eax, dword [rsp + 0x60]
xor eax, dword [rsp + 0x48]
mov ecx, dword [0x14007d258]
and ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d20c]
add ecx, eax
mov eax, ecx
mov dword [0x14007d20c], eax
mov eax, dword [rsp + 0x48]
movzx ecx, al
mov eax, dword [0x14007d20c]
shl eax, cl
test eax, eax
je 0x1400158db
movsx eax, byte [rsp + 0x24]
test eax, eax
je 0x1400158db
mov dword [rsp + 0x1fc], 1
jmp 0x1400158e6
mov dword [rsp + 0x1fc], 0
movzx eax, byte [0x14007d21e]
xor eax, dword [rsp + 0x1fc]
mov byte [0x14007d21e], al
cmp dword [rsp + 0x40], 0
je 0x14001591e
movsx eax, byte [rsp + 0x22]
movsx ecx, byte [rsp + 0x20]
sar eax, cl
test eax, eax
je 0x14001591e
mov dword [rsp + 0x200], 1
jmp 0x140015929
mov dword [rsp + 0x200], 0
mov eax, dword [rsp + 0x200]
mov ecx, dword [0x14007d224]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x14007d218]
add ecx, eax
mov eax, ecx
mov dword [0x14007d218], eax
imul eax, dword [0x14007d234], 6
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
xor edx, edx
mov ecx, 3
div ecx
mov eax, edx
mov dword [rsp + 0x240], eax
mov eax, dword [rsp + 0x240]
mov dword [rsp + 0x8c], eax
cmp dword [rsp + 0x8c], 0
je 0x1400159ae
cmp dword [rsp + 0x8c], 1
je 0x1400159d0
cmp dword [rsp + 0x8c], 2
je 0x140015a4e
cmp dword [rsp + 0x8c], 3
je 0x140015a7c
jmp 0x140015ac9
xor edx, edx
mov eax, dword [rsp + 0x38]
mov ecx, 3
div ecx
mov eax, edx
mov ecx, dword [0x14007d20c]
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x20], al
jmp 0x140015ae1
mov eax, dword [rsp + 0x44]
mov ecx, dword [0x14007d220]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x1400159f8
movsx eax, byte [rsp + 0x20]
test eax, eax
jne 0x1400159f8
mov dword [rsp + 0x204], 0
jmp 0x140015a03
mov dword [rsp + 0x204], 1
movsx eax, byte [0x14007d200]
and eax, dword [rsp + 0x204]
mov byte [0x14007d200], al
movsx eax, byte [0x14007d22d]
sub eax, dword [rsp + 0x2c]
movsx ecx, byte [rsp + 0x20]
movzx edx, byte [rsp + 0x21]
sub ecx, edx
shl eax, cl
movsx ecx, byte [0x14007d21c]
shl eax, cl
mov ecx, dword [0x14007d214]
or ecx, eax
mov eax, ecx
mov dword [0x14007d214], eax
jmp 0x140015ae1
mov eax, dword [0x14007d210]
imul eax, dword [rsp + 0x30]
cdq
mov ecx, 3
idiv ecx
mov eax, edx
mov dword [rsp + 0x34], eax
movsx eax, byte [0x14007d203]
mov ecx, dword [rsp + 0x40]
shl eax, cl
mov dword [0x14007d238], eax
jmp 0x140015ae1
cmp dword [0x14007d258], 0
je 0x140015aa8
movsx eax, byte [rsp + 0x22]
movzx ecx, al
mov eax, dword [rsp + 0x50]
shl eax, cl
or eax, dword [rsp + 0x34]
test eax, eax
je 0x140015aa8
mov dword [rsp + 0x208], 1
jmp 0x140015ab3
mov dword [rsp + 0x208], 0
movsx eax, byte [0x14007d203]
xor eax, dword [rsp + 0x208]
mov byte [0x14007d203], al
jmp 0x140015ae1
mov eax, dword [0x14007d250]
imul eax, dword [rsp + 0x40]
xor edx, edx
mov ecx, 4
div ecx
mov dword [rsp + 0x34], eax
mov eax, dword [0x14007d204]
imul eax, dword [rsp + 0x38]
xor edx, edx
mov ecx, 4
div ecx
mov dword [rsp + 0x30], eax
call fcn.140015b10
xor eax, eax
add rsp, 0x258
ret