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

Disassembly:
mov eax, 0x7ef930c0
call fcn.7ef890d8
sub esp, 0x498
push 0x21
push 0x7efa5e10
call fcn.7ef87bbe
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 0x7efa5b00
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
call dword [eax]
and dword [ebp - 0x314], 0
jmp 0x7ef5556a
mov eax, dword [ebp - 0x314]
inc eax
mov dword [ebp - 0x314], eax
cmp dword [ebp - 0x314], 0x38
jae 0x7ef5559c
mov eax, dword [ebp - 0x314]
and eax, 7
mov ecx, dword [ebp - 0x314]
mov cl, byte [ecx + 0x7efa5b00]
xor cl, byte [eax + 0x7efa5b38]
mov eax, dword [ebp - 0x314]
mov byte [eax + 0x7efa5b00], cl
jmp 0x7ef5555d
mov eax, dword [0x7efa5b10]
mov dword [ebp - 0x20], eax
mov eax, dword [0x7efa5b14]
mov dword [ebp - 0x58], eax
mov eax, dword [0x7efa5b0c]
mov dword [0x7efa5b44], eax
mov eax, dword [0x7efa5b08]
mov dword [0x7efa5b40], eax
cmp dword [0x7efa5b00], 0x82d0b188
je 0x7ef55613
mov eax, dword [0x7efa5e10]
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 [0x7efa5b00]
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.7ef85958
pop ecx
pop ecx
call eax
add esp, 0x18
cmp dword [ebp - 0x20], 0x9c40
jbe 0x7ef5563a
lea eax, [ebp - 0x240]
push eax
push 0x7ef96c54
push 0x55
push str.X:_thinstall_stub_ts_hook.cc
call fcn.7ef85958
pop ecx
pop ecx
call eax
pop ecx
pop ecx
mov ecx, 0x7efa5bc4
call fcn.7ef5642f
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 [0x7efa5b14]
mov dword [ebp - 0x244], eax
and byte [ebp - 0x2e0], 0
lea eax, [ebp - 0x2dc]
push eax
lea eax, [ebp - 0x2e0]
push eax
push dword [0x7efa5b18]
lea ecx, [ebp - 0x1c]
call fcn.7ef5d607
and dword [ebp - 4], 0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x334], eax
push dword [0x7efa5b18]
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 0x7ef556ce
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [0x7efa5b18]
jae 0x7ef5570f
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 + 0x7efa5b38]
mov eax, dword [ebp - 0x458]
mov byte [eax], cl
jmp 0x7ef556c7
and byte [ebp - 0x2e8], 0
lea eax, [ebp - 0x2e4]
push eax
lea eax, [ebp - 0x2e8]
push eax
push dword [0x7efa5b1c]
lea ecx, [ebp - 0x50]
call fcn.7ef5d607
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 [0x7efa5b1c]
push dword [ebp - 0x348]
push dword [0x7efa5b18]
push dword [ebp - 0x34c]
call fcn.7ef83529
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 0x7ef557a4
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 0x7ef557ab
and dword [ebp - 0x45c], 0
mov dword [ebp - 0x40], 0x7ef96498
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], 0x7ef96c30
mov byte [ebp - 4], 2
lea eax, [ebp - 0x40]
mov dword [ebp - 0x28c], eax
mov eax, dword [0x7efa59d4]
mov dword [ebp - 0x358], eax
mov eax, dword [0x7efa59d0]
mov dword [ebp - 0x35c], eax
push dword [ebp - 0x358]
push dword [ebp - 0x35c]
mov ecx, 0x7efa59cc
call fcn.7ef5728b
mov eax, dword [0x7efa59e8]
mov dword [ebp - 0x36c], eax
mov eax, dword [0x7efa59e4]
mov dword [ebp - 0x370], eax
push dword [ebp - 0x36c]
push dword [ebp - 0x370]
mov ecx, 0x7efa59e0
call fcn.7ef57338
mov eax, dword [0x7efa59f8]
mov dword [ebp - 0x380], eax
mov eax, dword [0x7efa59f4]
mov dword [ebp - 0x384], eax
push dword [ebp - 0x380]
push dword [ebp - 0x384]
mov ecx, 0x7efa59f0
call fcn.7ef573e5
mov eax, dword [0x7efa5a08]
mov dword [ebp - 0x394], eax
mov eax, dword [0x7efa5a04]
mov dword [ebp - 0x398], eax
push dword [ebp - 0x394]
push dword [ebp - 0x398]
mov ecx, 0x7efa5a00
call fcn.7ef573e5
push dword [ebp - 0x28c]
mov ecx, 0x7efa5998
call fcn.7ef565da
cmp dword [0x7efa59c8], 0
je 0x7ef55907
mov eax, dword [0x7efa59c8]
movsx eax, byte [eax]
test eax, eax
je 0x7ef55907
push 0
push dword [ebp + 8]
push 0x7efa59c8
call fcn.7ef5c94f
add esp, 0xc
push 0
push dword [0x7efa59c8]
call fcn.7ef7cfdc
pop ecx
pop ecx
push dword [0x7efa59c8]
call dword [0x7ef960bc]
push dword [ebp - 0x28c]
call fcn.7ef83701
pop ecx
push 0
push dword [ebp + 8]
push 0x7efa59c0
call fcn.7ef5c94f
add esp, 0xc
and dword [ebp - 0x248], 0
mov byte [ebp - 4], 3
push 0
lea eax, [ebp - 0x248]
push eax
push 0x7efa5e2c
call fcn.7ef884fe
add esp, 0xc
mov eax, dword [ebp - 0x248]
mov dword [ebp - 0x24], eax
jmp 0x7ef55958
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 0x7ef55975
mov eax, dword [ebp - 0x24]
movsx eax, byte [eax]
cmp eax, 0x5c
jne 0x7ef55973
mov eax, dword [ebp - 0x24]
mov byte [eax], 0x2f
jmp 0x7ef55951
push 0x7ef96c28
call fcn.7ef865bd
pop ecx
mov dword [ebp - 0x2f4], eax
mov byte [ebp - 4], 4
lea eax, [ebp - 0x2f4]
push eax
lea ecx, [ebp - 0x248]
call fcn.7ef85edf
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2f4]
call fcn.7ef86114
and dword [ebp - 0x13c], 0
and dword [ebp - 0x54], 0
jmp 0x7ef559bf
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x20]
jae 0x7ef55ed1
mov ecx, 0x7efa5bc4
call fcn.7ef56482
mov dword [ebp - 0x290], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x28], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x2c], eax
push dword [ebp - 0x28c]
lea ecx, [ebp - 0x2f8]
call fcn.7ef85e11
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.7ef8603d
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2f8]
call fcn.7ef86114
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x28]
shr eax, 0xf
and eax, 3
test eax, eax
je 0x7ef55b94
push dword [ebp - 0x28c]
lea ecx, [ebp - 0x2fc]
call fcn.7ef85e11
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.7ef8603d
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2fc]
call fcn.7ef86114
mov eax, dword [ebp - 0x290]
add eax, 8
mov dword [ebp - 0x3c4], eax
mov eax, dword [ebp - 0x3c4]
cmp dword [eax], 0
je 0x7ef55ae0
mov eax, dword [ebp - 0x3c4]
mov eax, dword [eax]
movsx eax, byte [eax]
test eax, eax
je 0x7ef55ae0
and dword [ebp - 0x470], 0
jmp 0x7ef55aea
mov dword [ebp - 0x470], 1
movzx eax, byte [ebp - 0x470]
test eax, eax
je 0x7ef55b94
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.7ef884fe
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.7ef85dd0
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.7ef8603d
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x300]
call fcn.7ef86114
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x304]
call fcn.7ef86114
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x34], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x24], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x20], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x1c], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x18], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov ecx, dword [ebp - 0x290]
mov dword [ecx + 0x14], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
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 0x7ef55cfb
mov ecx, dword [ebp - 0x28c]
call fcn.7ef8669c
movzx eax, ax
mov dword [ebp - 0x294], eax
and dword [ebp - 0x298], 0
jmp 0x7ef55c92
mov eax, dword [ebp - 0x298]
inc eax
mov dword [ebp - 0x298], eax
mov eax, dword [ebp - 0x298]
cmp eax, dword [ebp - 0x294]
jge 0x7ef55cfb
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov dword [ebp - 0x2a8], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov dword [ebp - 0x2a4], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov dword [ebp - 0x2a0], eax
mov ecx, dword [ebp - 0x28c]
call fcn.7ef866f4
mov dword [ebp - 0x29c], eax
lea eax, [ebp - 0x2a8]
push eax
mov ecx, dword [ebp - 0x290]
add ecx, 0x4c
call fcn.7ef57137
jmp 0x7ef55c85
cmp dword [0x7efa5b48], 0
je 0x7ef55d58
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x2c]
and eax, 1
test eax, eax
je 0x7ef55d58
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, 0x7efa59f0
call fcn.7ef57247
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x28]
shr eax, 0x1d
and eax, 7
cmp eax, 1
jne 0x7ef55ecc
push 0x7efa5e10
mov ecx, dword [ebp - 0x290]
add ecx, 0x30
call fcn.7ef8603d
mov eax, dword [ebp - 0x290]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x2ac], eax
jmp 0x7ef55da1
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 0x7ef55dc7
mov eax, dword [ebp - 0x2ac]
movsx eax, byte [eax]
cmp eax, 0x5c
jne 0x7ef55dc5
mov eax, dword [ebp - 0x2ac]
mov byte [eax], 0x2f
jmp 0x7ef55d94
mov eax, dword [0x7efa59a4]
and eax, 0x8000000
test eax, eax
je 0x7ef55dea
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, 0x7efa5bc4
call fcn.7ef56482
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.7ef85dd0
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.7ef8603d
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x308]
call fcn.7ef86114
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 0x7ef559b8
and dword [ebp - 0x54], 0
jmp 0x7ef55ede
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [0x7efa5bc4], 0
je 0x7ef55f30
mov eax, dword [0x7efa5bc4]
mov dword [ebp - 0x414], eax
mov eax, dword [ebp - 0x414]
cmp dword [eax + 4], 0
jne 0x7ef55f07
and dword [ebp - 0x488], 0
jmp 0x7ef55f22
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 0x7ef55f37
and dword [ebp - 0x48c], 0
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x48c]
jge 0x7ef55fc6
mov eax, dword [0x7efa5bc4]
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.7ef5c94f
add esp, 0xc
mov eax, dword [ebp - 0x2b8]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x2b4], eax
jmp 0x7ef55f9b
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 0x7ef55fc1
mov eax, dword [ebp - 0x2b4]
movsx eax, byte [eax]
cmp eax, 0x5c
jne 0x7ef55fbf
mov eax, dword [ebp - 0x2b4]
mov byte [eax], 0x2f
jmp 0x7ef55f8e
jmp 0x7ef55ed7
and dword [ebp - 0x54], 0
jmp 0x7ef55fd3
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [0x7efa59f4], 0
jne 0x7ef55fe5
and dword [ebp - 0x490], 0
jmp 0x7ef55ff9
mov eax, dword [0x7efa59f8]
sub eax, dword [0x7efa59f4]
sar eax, 2
mov dword [ebp - 0x490], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x490]
jae 0x7ef5602b
mov eax, dword [0x7efa59f4]
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.7ef5c94f
add esp, 0xc
jmp 0x7ef55fcc
and dword [ebp - 0x54], 0
jmp 0x7ef56038
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [0x7efa5a04], 0
jne 0x7ef5604a
and dword [ebp - 0x494], 0
jmp 0x7ef5605e
mov eax, dword [0x7efa5a08]
sub eax, dword [0x7efa5a04]
sar eax, 2
mov dword [ebp - 0x494], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x494]
jae 0x7ef56090
mov eax, dword [0x7efa5a04]
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.7ef5c94f
add esp, 0xc
jmp 0x7ef56031
mov eax, dword [0x7efa2154]
cmp dword [eax], 0
jne 0x7ef560a8
mov eax, dword [0x7efa2158]
cmp dword [eax], 0
je 0x7ef562e7
push 0
push dword [ebp + 8]
push 0x7efa59b4
call fcn.7ef5c94f
add esp, 0xc
and dword [ebp - 0x2c0], 0
mov byte [ebp - 4], 0xa
cmp dword [ebp + 8], 0
jne 0x7ef56143
push 0x7efa5e18
mov ecx, 0x7efa5e10
call fcn.7ef860eb
movzx eax, al
test eax, eax
je 0x7ef56143
and dword [ebp - 0x30c], 0
lea eax, [ebp - 0x30c]
mov dword [ebp - 0x498], eax
mov byte [ebp - 4], 0xb
push dword [ebp - 0x498]
push 0x7efa5e2c
call fcn.7ef883fa
pop ecx
pop ecx
mov eax, dword [eax]
mov dword [ebp - 0x424], eax
push dword [ebp - 0x424]
push dword [0x7efa59b4]
push str._s._s
lea eax, [ebp - 0x2c0]
push eax
call fcn.7ef863ab
add esp, 0x10
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x30c]
call fcn.7ef86114
jmp 0x7ef56153
push 0x7efa59b4
lea ecx, [ebp - 0x2c0]
call fcn.7ef8603d
lea eax, [ebp - 0x2c0]
push eax
lea ecx, [ebp - 0x2c8]
call fcn.7ef86007
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x2c8]
mov dword [ebp - 0x2bc], eax
jmp 0x7ef56184
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 0x7ef561b8
mov eax, dword [ebp - 0x2bc]
movsx eax, byte [eax]
cmp eax, 0x5c
je 0x7ef561ad
mov eax, dword [ebp - 0x2bc]
movsx eax, byte [eax]
cmp eax, 0x2f
jne 0x7ef561b6
mov eax, dword [ebp - 0x2bc]
mov byte [eax], 0x2d
jmp 0x7ef56177
push dword [ebp - 0x2c8]
push 0
push 0xf001f
call dword [0x7ef96068]
mov dword [ebp - 0x2c4], eax
cmp dword [ebp - 0x2c4], 0
je 0x7ef56272
push 0
push 0
push 0
push 0xf001f
push dword [ebp - 0x2c4]
call dword [0x7ef960a0]
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.7ef85dd0
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.7ef8603d
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x310]
call fcn.7ef86114
push dword [ebp - 0x2c4]
call dword [0x7ef960b8]
jmp 0x7ef562bd
push dword [ebp - 0x2c8]
push 4
push 0
push 4
push 0
push 0
call dword [0x7ef9605c]
mov dword [ebp - 0x2c4], eax
cmp dword [ebp - 0x2c4], 0
je 0x7ef562bd
push 0
push 0
push 0
push 0xf001f
push dword [ebp - 0x2c4]
call dword [0x7ef960a0]
mov dword [ebp - 0x2d0], eax
mov eax, dword [ebp - 0x2d0]
and dword [eax], 0
push dword [ebp - 0x2c0]
call fcn.7ef53d18
pop ecx
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x2c8]
call fcn.7ef86114
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c0]
call fcn.7ef86114
call fcn.7ef7f9fa
mov eax, dword [0x7efa59a4]
and eax, 2
test eax, eax
jne 0x7ef56334
and dword [ebp - 0x2d8], 0
and dword [ebp - 0x2d4], 0
lea eax, [ebp - 0x2d8]
push eax
mov ecx, 0x7efa5e20
call fcn.7ef6eaba
mov dword [ebp - 0x2d8], 1
push 1
lea eax, [ebp - 0x2d8]
push eax
mov ecx, 0x7efa5e20
call fcn.7ef6e98a
and dword [ebp - 0x54], 0
jmp 0x7ef56341
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [0x7efa59e4], 0
jne 0x7ef56353
and dword [ebp - 0x4a4], 0
jmp 0x7ef56367
mov eax, dword [0x7efa59e8]
sub eax, dword [0x7efa59e4]
sar eax, 3
mov dword [ebp - 0x4a4], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x4a4]
jae 0x7ef563c7
mov eax, dword [0x7efa59e4]
mov dword [ebp - 0x428], eax
mov eax, dword [0x7efa59e4]
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.7ef5c94f
add esp, 0xc
push eax
push dword [ebp - 0x430]
call dword [0x7ef96070]
jmp 0x7ef5633a
mov eax, dword [0x7efa59a4]
and eax, 0x200
test eax, eax
je 0x7ef563e5
push str.2.501
push str.TS_VERSION
call dword [0x7ef96070]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x248]
call fcn.7ef86114
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x38]
call fcn.7ef54455
mov byte [ebp - 4], 1
mov dword [ebp - 0x40], 0x7ef96498
and byte [ebp - 4], 0
lea ecx, [ebp - 0x50]
call fcn.7ef54455
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1c]
call fcn.7ef54455
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
leave
ret