Function at 0x471bb0
Capabilities:
Terminate process

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4858be
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xa2c
mov eax, dword [0x56100c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [0x563448]
or dword [eax + 0x3ff0], 2
mov dword [eax + 0x4014], 0x43960000
mov dword [eax + 0x4018], 0x42480000
mov dword [eax + 0x3ff8], 1
mov eax, 0x7fffffff
mov ecx, dword [0x5617a4]
sub eax, ecx
cmp eax, 0x2d
jb 0x4720df
cmp dword [0x5617a8], 0x10
mov eax, 0x561794
push ecx
cmovae eax, dword [0x561794]
push eax
push 0x2d
push str.SharpMacro_by_xRani___Closed_Beta__version
push ecx
push dword [ebp - 0x8ac]
lea ecx, [ebp - 0x830]
call fcn.004298c0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x830]
cmp dword [ebp - 0x81c], 0x10
mov edx, 0x5610fc
push 0
cmovae ecx, dword [ebp - 0x830]
call fcn.004133a0
mov dword [ebp - 4], 0xffffffff
add esp, 4
mov ecx, dword [ebp - 0x81c]
cmp ecx, 0x10
jb 0x471ccb
mov edx, dword [ebp - 0x830]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x471cc1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x471cc1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00480f52
add esp, 8
cmp byte [0x5613b5], 0
mov dword [ebp - 0x820], 0
mov dword [ebp - 0x81c], 0xf
mov byte [ebp - 0x830], 0
je 0x471fd3
cmp dword [0x561394], 0x10
mov ecx, 0x561380
mov edx, dword [0x561390]
cmovae ecx, dword [0x561380]
push 0
push 0x487dd4
call fcn.004299b0
add esp, 8
test al, al
jne 0x471fd3
movss xmm2, dword [0x5578c0]
xorps xmm3, xmm3
push ecx
xorps xmm1, xmm1
mov dword [esp], 0x3f800000
lea ecx, [ebp - 0x840]
call fcn.00401a40
sub esp, 0x10
mov ecx, esp
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
mov ecx, str.Updating_app...
call fcn.0045a6c0
add esp, 0x10
lea ecx, [ebp - 0x830]
push 0x561380
call fcn.00479be0
push 0x487dd4
lea ecx, [ebp - 0x878]
mov dword [ebp - 4], 1
call fcn.00428410
lea ecx, [ebp - 0x830]
mov byte [ebp - 4], 2
xor esi, esi
call fcn.00479b60
test eax, eax
je 0x471e0c
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x830]
call fcn.00479b70
mov dl, byte [eax]
lea eax, [esi + 1]
push eax
call fcn.00479b70
mov cl, dl
sub dl, 0x30
shl cl, 4
mov dh, byte [eax]
mov al, cl
sub al, 0x70
movzx ecx, cl
movzx eax, al
cmp dl, 9
mov dl, 9
cmova ecx, eax
mov al, dh
sub al, 0x30
cmp dl, al
sbb al, al
and al, 0xd9
add al, 0xd0
add cl, al
add cl, dh
mov byte [ebp - 0x8ac], cl
lea ecx, [ebp - 0x878]
push dword [ebp - 0x8ac]
call fcn.00479b90
lea ecx, [ebp - 0x830]
add esi, 2
call fcn.00479b60
cmp esi, eax
jb 0x471da0
push 0x800
lea eax, [ebp - 0x818]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push str..copy.exe
lea ecx, [ebp - 0x860]
call fcn.00428410
push eax
lea edx, [ebp - 0x818]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x848]
call fcn.0047ae10
push ecx
push 0x22
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.00428330
push eax
lea ecx, [ebp - 0x978]
call fcn.00478a20
lea ecx, [ebp - 0x848]
call fcn.00428340
lea ecx, [ebp - 0x860]
mov byte [ebp - 4], 7
call fcn.00428340
lea edx, [ebp - 0x878]
lea ecx, [ebp - 0x968]
call fcn.0047b0d0
lea ecx, [ebp - 0x978]
call fcn.004789f0
push str..copy.exe.downloaded.ini
lea ecx, [ebp - 0x8a8]
call fcn.00428410
push eax
lea edx, [ebp - 0x818]
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x890]
call fcn.0047ae10
push ecx
push 0x22
mov ecx, eax
mov byte [ebp - 4], 9
call fcn.00428330
push eax
lea ecx, [ebp - 0xa38]
call fcn.00478a20
lea ecx, [ebp - 0x890]
call fcn.00428340
lea ecx, [ebp - 0x8a8]
mov byte [ebp - 4], 0xc
call fcn.00428340
lea eax, [ebp - 0x818]
push eax
lea ecx, [ebp - 0x860]
call fcn.00428410
mov edx, eax
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa28]
call fcn.0047b0d0
lea ecx, [ebp - 0x860]
mov byte [ebp - 4], 0xc
call fcn.00428340
lea ecx, [ebp - 0xa38]
call fcn.004789f0
xor eax, eax
nop
cmp byte [ebp + eax - 0x818], 0x5c
jne 0x471f42
mov byte [ebp + eax - 0x818], 0x2f
inc eax
cmp eax, 0x800
jl 0x471f30
push 0
push 0x64
lea ecx, [ebp - 0x8b8]
call fcn.0044d670
add esp, 8
mov ecx, eax
call fcn.0047b150
push str..copy.exe
lea ecx, [ebp - 0x848]
call fcn.00428410
push eax
lea edx, [ebp - 0x818]
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x860]
call fcn.0047ae10
add esp, 4
mov ecx, eax
call fcn.00428330
mov ecx, eax
call fcn.0044f450
lea ecx, [ebp - 0x860]
call fcn.00428340
lea ecx, [ebp - 0x848]
mov byte [ebp - 4], 0xc
call fcn.00428340
sub esp, 0x18
mov ecx, esp
push str._UPDATE__Downloaded_SharpMacro__Switching_to_new_version.
call fcn.00428410
call fcn.0044fb20
add esp, 0x18
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
mov esi, dword [0x563448]
movaps xmm0, xmmword [0x557dc0]
movss xmm3, dword [0x557a4c]
push 0
mov eax, dword [esi + 0x3f04]
movss xmm2, dword [esi + 0x3c98]
push 0
push str.Downloading_app...
push ecx
mov ecx, dword [esi + 0x3c94]
movups xmmword [ebp - 0x840], xmm0
mov dword [esp], 0xbf800000
movss xmm0, dword [eax + 0x48]
lea eax, [ebp - 0x8b8]
push eax
movss dword [ebp - 0x8ac], xmm0
call fcn.00437510
movss xmm0, dword [ebp - 0x8b8]
addss xmm0, dword [0x5578b8]
movss xmm2, dword [ebp - 0x8ac]
mulss xmm2, dword [0x557878]
push str.Downloading_app...
cvttss2si eax, xmm0
movd xmm1, eax
mov eax, dword [esi + 0x3f04]
cvtdq2ps xmm1, xmm1
mov byte [eax + 0xc5], 1
mov eax, dword [esi + 0x3f04]
mulss xmm1, dword [0x557878]
movss xmm0, dword [eax + 0x40]
subss xmm0, dword [eax + 0x90]
subss xmm2, xmm1
addss xmm2, xmm0
movss xmm0, dword [eax + 0x120]
maxss xmm0, xmm2
movss dword [eax + 0x108], xmm2
movss dword [eax + 0x120], xmm0
lea eax, [ebp - 0x840]
push eax
call fcn.0043ad00
add esp, 8
call fcn.004104c0
call fcn.00416100
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00480d36
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00407f80
int3