Function at 0x7ff554b2
Capabilities:
Set current directory
Set environment variable

Disassembly:
mov eax, 0x7ff930c0
call fcn.7ff890d8
sub esp, 0x498
push 0x21
push 0x7ffa5e10
call fcn.7ff87bbe
pop ecx
pop ecx
mov dword [ebp - 0x28c], eax
push 0x40
lea eax, [ebp - 0x288]
push eax
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax]
mov eax, dword [ebp - 0x24c]
add eax, 0x18
push eax
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax + 8]
push 0xe0
lea eax, [ebp - 0x138]
push eax
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax]
push dword [ebp - 0xe0]
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax + 8]
push 0x40
push 0x7ffa5b00
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax]
and dword [ebp - 0x314], 0
jmp 0x7ff5556a
mov eax, dword [ebp - 0x314]
inc eax
mov dword [ebp - 0x314], eax
cmp dword [ebp - 0x314], 0x38
jae 0x7ff5559c
mov eax, dword [ebp - 0x314]
and eax, 7
mov ecx, dword [ebp - 0x314]
mov cl, byte [ecx + 0x7ffa5b00]
xor cl, byte [eax + 0x7ffa5b38]
mov eax, dword [ebp - 0x314]
mov byte [eax + 0x7ffa5b00], cl
jmp 0x7ff5555d
mov eax, dword [0x7ffa5b10]
mov dword [ebp - 0x20], eax
mov eax, dword [0x7ffa5b14]
mov dword [ebp - 0x58], eax
mov eax, dword [0x7ffa5b0c]
mov dword [0x7ffa5b44], eax
mov eax, dword [0x7ffa5b08]
mov dword [0x7ffa5b40], eax
cmp dword [0x7ffa5b00], 0x82d0b188
je 0x7ff55613
mov eax, dword [0x7ffa5e10]
mov dword [ebp - 0x318], eax
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax + 0xc]
push eax
push dword [0x7ffa5b00]
push dword [ebp - 0x58]
push dword [ebp - 0x20]
push dword [ebp - 0x318]
push str.bad_sig_in_file__s_nt_files_d__dir_start_d__sig_x__file_size_d
push 0x51
push str.X:_thinstall_stub_ts_hook.cc
call fcn.7ff85958
pop ecx
pop ecx
call eax
add esp, 0x18
cmp dword [ebp - 0x20], 0x9c40
jbe 0x7ff5563a
lea eax, [ebp - 0x240]
push eax
push str.Too_many_files_in__s
push 0x55
push str.X:_thinstall_stub_ts_hook.cc
call fcn.7ff85958
pop ecx
pop ecx
call eax
pop ecx
pop ecx
mov ecx, 0x7ffa5bc4
call fcn.7ff5642f
push dword [ebp - 0x58]
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax + 8]
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax + 0xc]
sub eax, dword [0x7ffa5b14]
mov dword [ebp - 0x244], eax
and byte [ebp - 0x2e0], 0
lea eax, [ebp - 0x2dc]
push eax
lea eax, [ebp - 0x2e0]
push eax
push dword [0x7ffa5b18]
lea ecx, [ebp - 0x1c]
call fcn.7ff5d607
and dword [ebp - 4], 0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x334], eax
push dword [0x7ffa5b18]
push dword [ebp - 0x334]
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax]
and dword [ebp - 0x54], 0
jmp 0x7ff556ce
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [0x7ffa5b18]
jae 0x7ff5570f
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x338], eax
mov eax, dword [ebp - 0x338]
add eax, dword [ebp - 0x54]
mov dword [ebp - 0x458], eax
mov eax, dword [ebp - 0x54]
and eax, 7
mov ecx, dword [ebp - 0x458]
mov cl, byte [ecx]
xor cl, byte [eax + 0x7ffa5b38]
mov eax, dword [ebp - 0x458]
mov byte [eax], cl
jmp 0x7ff556c7
and byte [ebp - 0x2e8], 0
lea eax, [ebp - 0x2e4]
push eax
lea eax, [ebp - 0x2e8]
push eax
push dword [0x7ffa5b1c]
lea ecx, [ebp - 0x50]
call fcn.7ff5d607
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x348], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x34c], eax
push dword [0x7ffa5b1c]
push dword [ebp - 0x348]
push dword [0x7ffa5b18]
push dword [ebp - 0x34c]
call fcn.7ff83529
add esp, 0x10
mov eax, dword [ebp - 0x28c]
mov dword [ebp - 0x2f0], eax
mov eax, dword [ebp - 0x2f0]
mov dword [ebp - 0x2ec], eax
cmp dword [ebp - 0x2ec], 0
je 0x7ff557a4
push 1
mov eax, dword [ebp - 0x2ec]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x2ec]
call dword [eax + 0x20]
mov dword [ebp - 0x45c], eax
jmp 0x7ff557ab
and dword [ebp - 0x45c], 0
mov dword [ebp - 0x40], 0x7ff96498
lea eax, [ebp - 0x50]
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x354], eax
mov al, byte [ebp - 0x350]
mov ecx, dword [ebp - 0x354]
mov byte [ecx], al
mov eax, dword [ebp - 0x354]
and dword [eax + 4], 0
mov eax, dword [ebp - 0x354]
and dword [eax + 8], 0
mov eax, dword [ebp - 0x354]
and dword [eax + 0xc], 0
and dword [ebp - 0x28], 0
mov dword [ebp - 0x40], 0x7ff96c30
mov byte [ebp - 4], 2
lea eax, [ebp - 0x40]
mov dword [ebp - 0x28c], eax
mov eax, dword [0x7ffa59d4]
mov dword [ebp - 0x358], eax
mov eax, dword [0x7ffa59d0]
mov dword [ebp - 0x35c], eax
push dword [ebp - 0x358]
push dword [ebp - 0x35c]
mov ecx, 0x7ffa59cc
call fcn.7ff5728b
mov eax, dword [0x7ffa59e8]
mov dword [ebp - 0x36c], eax
mov eax, dword [0x7ffa59e4]
mov dword [ebp - 0x370], eax
push dword [ebp - 0x36c]
push dword [ebp - 0x370]
mov ecx, 0x7ffa59e0
call fcn.7ff57338
mov eax, dword [0x7ffa59f8]
mov dword [ebp - 0x380], eax
mov eax, dword [0x7ffa59f4]
mov dword [ebp - 0x384], eax
push dword [ebp - 0x380]
push dword [ebp - 0x384]
mov ecx, 0x7ffa59f0
call fcn.7ff573e5
mov eax, dword [0x7ffa5a08]
mov dword [ebp - 0x394], eax
mov eax, dword [0x7ffa5a04]
mov dword [ebp - 0x398], eax
push dword [ebp - 0x394]
push dword [ebp - 0x398]
mov ecx, 0x7ffa5a00
call fcn.7ff573e5
push dword [ebp - 0x28c]
mov ecx, 0x7ffa5998
call fcn.7ff565da
cmp dword [0x7ffa59c8], 0
je 0x7ff55907
mov eax, dword [0x7ffa59c8]
movsx eax, byte [eax]
test eax, eax
je 0x7ff55907
push 0
push dword [ebp + 8]
push 0x7ffa59c8
call fcn.7ff5c94f
add esp, 0xc
push 0
push dword [0x7ffa59c8]
call fcn.7ff7cfdc
pop ecx
pop ecx
push dword [0x7ffa59c8]
call dword [0x7ff960bc]
push dword [ebp - 0x28c]
call fcn.7ff83701
pop ecx
push 0
push dword [ebp + 8]
push 0x7ffa59c0
call fcn.7ff5c94f
add esp, 0xc
and dword [ebp - 0x248], 0
mov byte [ebp - 4], 3
push 0
lea eax, [ebp - 0x248]
push eax
push 0x7ffa5e2c
call fcn.7ff884fe
add esp, 0xc
mov eax, dword [ebp - 0x248]
mov dword [ebp - 0x24], eax
jmp 0x7ff55958
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
movsx eax, byte [eax]
test eax, eax
je 0x7ff55975
mov eax, dword [ebp - 0x24]
movsx eax, byte [eax]
cmp eax, 0x5c
jne 0x7ff55973
mov eax, dword [ebp - 0x24]
mov byte [eax], 0x2f
jmp 0x7ff55951
push 0x7ff96c28
call fcn.7ff865bd
pop ecx
mov dword [ebp - 0x2f4], eax
mov byte [ebp - 4], 4
lea eax, [ebp - 0x2f4]
push eax
lea ecx, [ebp - 0x248]
call fcn.7ff85edf
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2f4]
call fcn.7ff86114
and dword [ebp - 0x13c], 0
and dword [ebp - 0x54], 0
jmp 0x7ff559bf
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x20]
jae 0x7ff55ed1
mov ecx, 0x7ffa5bc4
call fcn.7ff56482
mov dword [ebp - 0x290], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x28], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x2c], eax
push dword [ebp - 0x28c]
lea ecx, [ebp - 0x2f8]
call fcn.7ff85e11
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x460]
mov dword [ebp - 0x464], eax
mov byte [ebp - 4], 5
push dword [ebp - 0x464]
mov ecx, dword [ebp - 0x290]
add ecx, 0x30
call fcn.7ff8603d
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2f8]
call fcn.7ff86114
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x28]
shr eax, 0xf
and eax, 3
test eax, eax
je 0x7ff55b94
push dword [ebp - 0x28c]
lea ecx, [ebp - 0x2fc]
call fcn.7ff85e11
mov dword [ebp - 0x468], eax
mov eax, dword [ebp - 0x468]
mov dword [ebp - 0x46c], eax
mov byte [ebp - 4], 6
push dword [ebp - 0x46c]
mov ecx, dword [ebp - 0x290]
add ecx, 8
call fcn.7ff8603d
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2fc]
call fcn.7ff86114
mov eax, dword [ebp - 0x290]
add eax, 8
mov dword [ebp - 0x3c4], eax
mov eax, dword [ebp - 0x3c4]
cmp dword [eax], 0
je 0x7ff55ae0
mov eax, dword [ebp - 0x3c4]
mov eax, dword [eax]
movsx eax, byte [eax]
test eax, eax
je 0x7ff55ae0
and dword [ebp - 0x470], 0
jmp 0x7ff55aea
mov dword [ebp - 0x470], 1
movzx eax, byte [ebp - 0x470]
test eax, eax
je 0x7ff55b94
and dword [ebp - 0x304], 0
lea eax, [ebp - 0x304]
mov dword [ebp - 0x474], eax
mov byte [ebp - 4], 7
push 0
push dword [ebp - 0x474]
mov eax, dword [ebp - 0x290]
add eax, 0x30
push eax
call fcn.7ff884fe
add esp, 0xc
mov eax, dword [eax]
mov dword [ebp - 0x3c8], eax
push dword [ebp - 0x3c8]
push str._s.thzip
lea eax, [ebp - 0x300]
push eax
call fcn.7ff85dd0
add esp, 0xc
mov dword [ebp - 0x478], eax
mov eax, dword [ebp - 0x478]
mov dword [ebp - 0x47c], eax
mov byte [ebp - 4], 8
push dword [ebp - 0x47c]
mov ecx, dword [ebp - 0x290]
add ecx, 8
call fcn.7ff8603d
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x300]
call fcn.7ff86114
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x304]
call fcn.7ff86114
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x34], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x24], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x20], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x1c], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x18], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x14], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x10], eax
push 8
mov eax, dword [ebp - 0x290]
add eax, 0x38
push eax
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax]
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x28]
shr eax, 0xc
and eax, 1
cmp eax, 1
je 0x7ff55cfb
mov ecx, dword [ebp - 0x28c]
call fcn.7ff8669c
movzx eax, ax
mov dword [ebp - 0x294], eax
and dword [ebp - 0x298], 0
jmp 0x7ff55c92
mov eax, dword [ebp - 0x298]
inc eax
mov dword [ebp - 0x298], eax
mov eax, dword [ebp - 0x298]
cmp eax, dword [ebp - 0x294]
jge 0x7ff55cfb
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov dword [ebp - 0x2a8], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov dword [ebp - 0x2a4], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov dword [ebp - 0x2a0], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ff866f4
mov dword [ebp - 0x29c], eax
lea eax, [ebp - 0x2a8]
push eax
mov ecx, dword [ebp - 0x290]
add ecx, 0x4c
call fcn.7ff57137
jmp 0x7ff55c85
cmp dword [0x7ffa5b48], 0
je 0x7ff55d58
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x2c]
and eax, 1
test eax, eax
je 0x7ff55d58
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x28]
and eax, 0xff9fffff
or eax, 0x200000
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x28], eax
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x28]
and al, 0x1f
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x28], eax
mov eax, dword [ebp - 0x290]
add eax, 0x30
push eax
mov ecx, 0x7ffa59f0
call fcn.7ff57247
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x28]
shr eax, 0x1d
and eax, 7
cmp eax, 1
jne 0x7ff55ecc
push 0x7ffa5e10
mov ecx, dword [ebp - 0x290]
add ecx, 0x30
call fcn.7ff8603d
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x2ac], eax
jmp 0x7ff55da1
mov eax, dword [ebp - 0x2ac]
inc eax
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2ac]
movsx eax, byte [eax]
test eax, eax
je 0x7ff55dc7
mov eax, dword [ebp - 0x2ac]
movsx eax, byte [eax]
cmp eax, 0x5c
jne 0x7ff55dc5
mov eax, dword [ebp - 0x2ac]
mov byte [eax], 0x2f
jmp 0x7ff55d94
mov eax, dword [0x7ffa59a4]
and eax, 0x8000000
test eax, eax
je 0x7ff55dea
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x2c]
or ah, 1
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x2c], eax
mov ecx, 0x7ffa5bc4
call fcn.7ff56482
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x2b0]
and dword [eax + 0x28], 0
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x410], eax
push dword [ebp - 0x410]
push str._s.th_raw
lea eax, [ebp - 0x308]
push eax
call fcn.7ff85dd0
add esp, 0xc
mov dword [ebp - 0x480], eax
mov eax, dword [ebp - 0x480]
mov dword [ebp - 0x484], eax
mov byte [ebp - 4], 9
push dword [ebp - 0x484]
mov ecx, dword [ebp - 0x2b0]
add ecx, 0x30
call fcn.7ff8603d
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x308]
call fcn.7ff86114
mov eax, dword [ebp - 0x2b0]
and dword [eax + 0x34], 0
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x2b0]
mov dword [ecx + 0xc], eax
mov eax, dword [ebp - 0x2b0]
mov eax, dword [eax + 0x28]
and eax, 0xff9fffff
or eax, 0x400000
mov ecx, dword [ebp - 0x2b0]
mov dword [ecx + 0x28], eax
mov eax, dword [ebp - 0x2b0]
mov eax, dword [eax + 0x28]
and eax, 0x1fffffff
or eax, 0x60000000
mov ecx, dword [ebp - 0x2b0]
mov dword [ecx + 0x28], eax
mov dword [ebp - 0x13c], 1
jmp 0x7ff559b8
and dword [ebp - 0x54], 0
jmp 0x7ff55ede
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [0x7ffa5bc4], 0
je 0x7ff55f30
mov eax, dword [0x7ffa5bc4]
mov dword [ebp - 0x414], eax
mov eax, dword [ebp - 0x414]
cmp dword [eax + 4], 0
jne 0x7ff55f07
and dword [ebp - 0x488], 0
jmp 0x7ff55f22
mov eax, dword [ebp - 0x414]
mov ecx, dword [ebp - 0x414]
mov eax, dword [eax + 8]
sub eax, dword [ecx + 4]
sar eax, 2
mov dword [ebp - 0x488], eax
mov eax, dword [ebp - 0x488]
mov dword [ebp - 0x48c], eax
jmp 0x7ff55f37
and dword [ebp - 0x48c], 0
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x48c]
jge 0x7ff55fc6
mov eax, dword [0x7ffa5bc4]
mov eax, dword [eax + 4]
mov dword [ebp - 0x418], eax
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x418]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0x2b8], eax
push 0
push dword [ebp + 8]
mov eax, dword [ebp - 0x2b8]
add eax, 0x30
push eax
call fcn.7ff5c94f
add esp, 0xc
mov eax, dword [ebp - 0x2b8]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x2b4], eax
jmp 0x7ff55f9b
mov eax, dword [ebp - 0x2b4]
inc eax
mov dword [ebp - 0x2b4], eax
mov eax, dword [ebp - 0x2b4]
movsx eax, byte [eax]
test eax, eax
je 0x7ff55fc1
mov eax, dword [ebp - 0x2b4]
movsx eax, byte [eax]
cmp eax, 0x5c
jne 0x7ff55fbf
mov eax, dword [ebp - 0x2b4]
mov byte [eax], 0x2f
jmp 0x7ff55f8e
jmp 0x7ff55ed7
and dword [ebp - 0x54], 0
jmp 0x7ff55fd3
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [0x7ffa59f4], 0
jne 0x7ff55fe5
and dword [ebp - 0x490], 0
jmp 0x7ff55ff9
mov eax, dword [0x7ffa59f8]
sub eax, dword [0x7ffa59f4]
sar eax, 2
mov dword [ebp - 0x490], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x490]
jae 0x7ff5602b
mov eax, dword [0x7ffa59f4]
mov dword [ebp - 0x41c], eax
push 0
push dword [ebp + 8]
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x41c]
lea eax, [ecx + eax*4]
push eax
call fcn.7ff5c94f
add esp, 0xc
jmp 0x7ff55fcc
and dword [ebp - 0x54], 0
jmp 0x7ff56038
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [0x7ffa5a04], 0
jne 0x7ff5604a
and dword [ebp - 0x494], 0
jmp 0x7ff5605e
mov eax, dword [0x7ffa5a08]
sub eax, dword [0x7ffa5a04]
sar eax, 2
mov dword [ebp - 0x494], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x494]
jae 0x7ff56090
mov eax, dword [0x7ffa5a04]
mov dword [ebp - 0x420], eax
push 0
push dword [ebp + 8]
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x420]
lea eax, [ecx + eax*4]
push eax
call fcn.7ff5c94f
add esp, 0xc
jmp 0x7ff56031
mov eax, dword [0x7ffa2154]
cmp dword [eax], 0
jne 0x7ff560a8
mov eax, dword [0x7ffa2158]
cmp dword [eax], 0
je 0x7ff562e7
push 0
push dword [ebp + 8]
push 0x7ffa59b4
call fcn.7ff5c94f
add esp, 0xc
and dword [ebp - 0x2c0], 0
mov byte [ebp - 4], 0xa
cmp dword [ebp + 8], 0
jne 0x7ff56143
push 0x7ffa5e18
mov ecx, 0x7ffa5e10
call fcn.7ff860eb
movzx eax, al
test eax, eax
je 0x7ff56143
and dword [ebp - 0x30c], 0
lea eax, [ebp - 0x30c]
mov dword [ebp - 0x498], eax
mov byte [ebp - 4], 0xb
push dword [ebp - 0x498]
push 0x7ffa5e2c
call fcn.7ff883fa
pop ecx
pop ecx
mov eax, dword [eax]
mov dword [ebp - 0x424], eax
push dword [ebp - 0x424]
push dword [0x7ffa59b4]
push str._s._s
lea eax, [ebp - 0x2c0]
push eax
call fcn.7ff863ab
add esp, 0x10
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x30c]
call fcn.7ff86114
jmp 0x7ff56153
push 0x7ffa59b4
lea ecx, [ebp - 0x2c0]
call fcn.7ff8603d
lea eax, [ebp - 0x2c0]
push eax
lea ecx, [ebp - 0x2c8]
call fcn.7ff86007
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x2c8]
mov dword [ebp - 0x2bc], eax
jmp 0x7ff56184
mov eax, dword [ebp - 0x2bc]
inc eax
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2bc]
movsx eax, byte [eax]
test eax, eax
je 0x7ff561b8
mov eax, dword [ebp - 0x2bc]
movsx eax, byte [eax]
cmp eax, 0x5c
je 0x7ff561ad
mov eax, dword [ebp - 0x2bc]
movsx eax, byte [eax]
cmp eax, 0x2f
jne 0x7ff561b6
mov eax, dword [ebp - 0x2bc]
mov byte [eax], 0x2d
jmp 0x7ff56177
push dword [ebp - 0x2c8]
push 0
push 0xf001f
call dword [0x7ff96068]
mov dword [ebp - 0x2c4], eax
cmp dword [ebp - 0x2c4], 0
je 0x7ff56272
push 0
push 0
push 0
push 0xf001f
push dword [ebp - 0x2c4]
call dword [0x7ff960a0]
mov dword [ebp - 0x2cc], eax
mov eax, dword [ebp - 0x2cc]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x2cc]
mov dword [ecx], eax
mov eax, dword [ebp - 0x2cc]
push dword [eax]
push dword [ebp - 0x2c0]
push str._s._d
lea eax, [ebp - 0x310]
push eax
call fcn.7ff85dd0
add esp, 0x10
mov dword [ebp - 0x49c], eax
mov eax, dword [ebp - 0x49c]
mov dword [ebp - 0x4a0], eax
mov byte [ebp - 4], 0xd
push dword [ebp - 0x4a0]
lea ecx, [ebp - 0x2c0]
call fcn.7ff8603d
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x310]
call fcn.7ff86114
push dword [ebp - 0x2c4]
call dword [0x7ff960b8]
jmp 0x7ff562bd
push dword [ebp - 0x2c8]
push 4
push 0
push 4
push 0
push 0
call dword [0x7ff9605c]
mov dword [ebp - 0x2c4], eax
cmp dword [ebp - 0x2c4], 0
je 0x7ff562bd
push 0
push 0
push 0
push 0xf001f
push dword [ebp - 0x2c4]
call dword [0x7ff960a0]
mov dword [ebp - 0x2d0], eax
mov eax, dword [ebp - 0x2d0]
and dword [eax], 0
push dword [ebp - 0x2c0]
call fcn.7ff53d18
pop ecx
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x2c8]
call fcn.7ff86114
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c0]
call fcn.7ff86114
call fcn.7ff7f9fa
mov eax, dword [0x7ffa59a4]
and eax, 2
test eax, eax
jne 0x7ff56334
and dword [ebp - 0x2d8], 0
and dword [ebp - 0x2d4], 0
lea eax, [ebp - 0x2d8]
push eax
mov ecx, 0x7ffa5e20
call fcn.7ff6eaba
mov dword [ebp - 0x2d8], 1
push 1
lea eax, [ebp - 0x2d8]
push eax
mov ecx, 0x7ffa5e20
call fcn.7ff6e98a
and dword [ebp - 0x54], 0
jmp 0x7ff56341
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [0x7ffa59e4], 0
jne 0x7ff56353
and dword [ebp - 0x4a4], 0
jmp 0x7ff56367
mov eax, dword [0x7ffa59e8]
sub eax, dword [0x7ffa59e4]
sar eax, 3
mov dword [ebp - 0x4a4], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x4a4]
jae 0x7ff563c7
mov eax, dword [0x7ffa59e4]
mov dword [ebp - 0x428], eax
mov eax, dword [0x7ffa59e4]
mov dword [ebp - 0x42c], eax
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x42c]
mov eax, dword [ecx + eax*8]
mov dword [ebp - 0x430], eax
push 0
push dword [ebp + 8]
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x428]
lea eax, [ecx + eax*8 + 4]
push eax
call fcn.7ff5c94f
add esp, 0xc
push eax
push dword [ebp - 0x430]
call dword [0x7ff96070]
jmp 0x7ff5633a
mov eax, dword [0x7ffa59a4]
and eax, 0x200
test eax, eax
je 0x7ff563e5
push str.2.501
push str.TS_VERSION
call dword [0x7ff96070]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x248]
call fcn.7ff86114
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x38]
call fcn.7ff54455
mov byte [ebp - 4], 1
mov dword [ebp - 0x40], 0x7ff96498
and byte [ebp - 4], 0
lea ecx, [ebp - 0x50]
call fcn.7ff54455
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1c]
call fcn.7ff54455
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
leave
ret