Function at 0x10042980
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1004c9c0
mov eax, dword fs:[0]
push eax
sub esp, 0x14
mov eax, dword [0x1005d040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp byte [0x1005ec9c], 0
jne 0x10042a10
call fcn.1003eb20
push 1
call fcn.10049c3b
add esp, 4
lea ecx, [ebp - 0x14]
push ecx
push 0
push eax
push 0x10047610
push 0
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
add esp, 0x18
mov dword [ebp - 0x18], eax
test eax, eax
je 0x10042a01
lea ecx, [ebp - 0x18]
call fcn.10037b70
cmp dword [ebp - 0x14], 0
je 0x100429f5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
mov byte [0x1005ec9c], 1
jmp 0x10042c83
push 6
mov dword [ebp - 0x14], 0
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
cmp dword [0x1005eb1c], 0
jne 0x10042a27
cmp dword [0x1005eb24], 0
je 0x10042a27
call fcn.10027830
call fcn.10027d60
call fcn.10006a60
mov eax, dword [0x1005eab0]
mov edx, 0x1005d0a8
push 0x2b
mov ecx, str.HAXXX
or dword [eax + 0x46d8], 2
mov dword [eax + 0x46f8], 0x43be0000
mov dword [eax + 0x46fc], 0x43960000
mov dword [eax + 0x46e0], 1
or dword [eax + 8], 0x20
call fcn.1000b6b0
add esp, 4
cmp byte [0x1005d0b0], 0
je 0x10042c2a
mov ecx, dword [0x1005eab0]
lea eax, [ebp - 0x18]
movss xmm3, dword [0x10055dd4]
push ecx
push 0
movss xmm2, dword [ecx + 0x3bb4]
push str.Checking_activation_status_please_wait...
push ecx
mov ecx, dword [ecx + 0x3bb0]
mov dword [esp], 0xbf800000
push eax
call fcn.10025f10
movss xmm0, dword [ebp - 0x18]
addss xmm0, dword [0x10055cf8]
mov ecx, dword [0x1005ea20]
cvttss2si eax, xmm0
movd xmm0, eax
mov eax, dword fs:[0x2c]
cvtdq2ps xmm0, xmm0
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x1005ed6c]
movss dword [ebp - 0x18], xmm0
cmp eax, dword [ecx + 4]
jle 0x10042b3b
push 0x1005ed6c
call fcn.10049bd7
add esp, 4
cmp dword [0x1005ed6c], 0xffffffff
jne 0x10042b3b
xorps xmm0, xmm0
mov ecx, 0x1005ed14
push fcn.1003f6e0
movlpd qword [0x1005ed14], xmm0
call fcn.10045940
add esp, 4
push 0x1004d240
call fcn.10049f70
add esp, 4
push 0x1005ed6c
call fcn.10049b86
add esp, 4
mov al, byte [0x1005eab9]
test al, al
jne 0x10042b57
mov byte [0x1005d0b0], 1
mov byte [0x1005eaba], al
mov byte [0x1005eabb], al
jmp 0x10042b87
mov al, byte [0x1005eab9]
test al, al
je 0x10042b79
mov al, byte [0x1005ead3]
test al, al
je 0x10042b79
mov byte [0x1005ead1], 1
mov byte [0x1005eaba], 0
jmp 0x10042b80
mov byte [0x1005eaba], 1
mov byte [0x1005d0b0], 0
mov esi, 0x23
nop dword [eax]
mov ecx, dword [0x1005eab0]
mov eax, dword [ecx + 0x3e28]
mov byte [eax + 0xa8], 1
mov eax, dword [ecx + 0x3e28]
cmp byte [eax + 0xab], 0
jne 0x10042bd0
movss xmm1, dword [0x10055de4]
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
call fcn.100105c0
sub esi, 1
jne 0x10042b90
mov ecx, dword [0x1005eab0]
push str.Checking_activation_status_please_wait.....
mov eax, dword [ecx + 0x3e28]
movss xmm1, dword [eax + 0x18]
subss xmm1, dword [ebp - 0x18]
mov byte [eax + 0xa8], 1
mov eax, dword [ecx + 0x3e28]
mulss xmm1, dword [0x10055cc8]
mov byte [eax + 0x12d], 1
movss xmm0, dword [eax + 0x10]
subss xmm0, dword [eax + 0x74]
addss xmm0, xmm1
movss dword [eax + 0xec], xmm0
call fcn.10029840
add esp, 4
cmp byte [0x1005eaba], 0
je 0x10042c3a
call fcn.100411e0
jmp 0x10042c58
cmp byte [0x1005eabb], 0
je 0x10042c4a
call fcn.1003fe70
jmp 0x10042c58
cmp byte [0x1005ead1], 0
je 0x10042c58
call fcn.1003f8c0
call fcn.1000de20
call fcn.100086a0
call fcn.100089a0
mov eax, dword [0x1005eab0]
mov eax, dword [eax + 0x47a4]
mov ecx, dword [eax]
xor eax, eax
add ecx, 0x38
cmp byte [ecx], al
cmove ecx, eax
call fcn.10027340
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10049b4d
mov esp, ebp
pop ebp
ret