Function at 0x1001abeb
Capabilities:
Create thread

Disassembly:
push 0x64
mov eax, 0x10084e2d
call fcn.1006a09e
xor ebx, ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
lea eax, [ebp - 0x70]
push eax
push ecx
mov byte [ebp - 4], 1
mov eax, esp
mov dword [ebp - 0x48], esp
push eax
mov ecx, str.incompatibleswtest0001
call fcn.10002a34
mov esi, dword [ebp + 8]
push esi
call fcn.1001ff85
cmp al, bl
je 0x1001acac
cmp dword [ebp - 0x6c], ebx
ja 0x1001ac3d
push 0x80070057
call fcn.10002b60
push dword [ebp - 0x70]
mov ecx, 0x100915a0
call fcn.10002531
test eax, eax
jne 0x1001acac
call fcn.10008dc8
cmp al, bl
je 0x1001acac
push 0x8a
push 1
push ecx
mov eax, esp
mov dword [ebp + 8], esp
push eax
mov ecx, 0x100915a8
call fcn.10002a34
push 1
push ebx
mov ecx, esi
call fcn.1001f748
push ecx
mov eax, esp
mov dword [ebp + 8], esp
push eax
mov ecx, 0x100915a4
call fcn.10002a34
mov eax, esi
call fcn.1001fae6
lea esi, [ebp - 0x70]
call fcn.1000258e
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
call fcn.10002b29
push 0xfffffffffffffffb
pop eax
jmp 0x1001b5ef
cmp byte [esi + 0x1b7], bl
jne 0x1001acd1
push 0xfffffffffffffffb
pop ebx
lea esi, [ebp - 0x70]
call fcn.1000258e
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
call fcn.10002b29
mov eax, ebx
jmp 0x1001b5ef
call fcn.1001ab4d
mov edi, eax
mov eax, esi
call fcn.1001ab5e
cmp edi, ebx
je 0x1001ace7
push 0x64
jmp 0x1001acb6
push ecx
mov eax, esp
mov dword [ebp - 0x48], esp
push eax
mov ecx, 0x10091748
call fcn.10002a34
call fcn.10009531
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], ebx
mov byte [ebp - 4], 2
mov eax, esp
mov dword [ebp - 0x48], esp
push eax
mov ecx, 0x1009174c
call fcn.10002a34
push ecx
mov byte [ebp - 4], 3
mov eax, esp
mov dword [ebp - 0x44], esp
push eax
mov ecx, 0x10091750
call fcn.10002a34
push ecx
mov byte [ebp - 4], 4
mov eax, esp
mov dword [ebp - 0x40], esp
push eax
mov ecx, 0x10091754
call fcn.10002a34
mov byte [ebp - 4], 5
mov eax, dword [ebp + 0xc]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x3c], esp
mov esi, esp
call fcn.10002aac
add eax, 0x10
mov dword [esi], eax
lea eax, [ebp - 0x60]
push eax
mov byte [ebp - 4], 2
call fcn.1000918c
mov edi, dword [ebp - 0x5c]
add esp, 0x14
cmp edi, 8
jae 0x1001ad88
lea esi, [ebp - 0x60]
call fcn.1000258e
push 2
jmp 0x1001acb6
cmp edi, ebx
jbe 0x1001ac33
mov esi, dword [ebp - 0x60]
mov eax, dword [esi]
sub eax, 0x10
call fcn.10002aac
add eax, 0x10
mov dword [ebp - 0x44], eax
mov byte [ebp - 4], 6
cmp edi, 1
jbe 0x1001ac33
mov eax, dword [esi + 4]
sub eax, 0x10
call fcn.10002aac
add eax, 0x10
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 7
cmp edi, 2
jbe 0x1001ac33
mov eax, dword [esi + 8]
sub eax, 0x10
call fcn.10002aac
add eax, 0x10
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 8
cmp edi, 3
jbe 0x1001ac33
mov eax, dword [esi + 0xc]
sub eax, 0x10
call fcn.10002aac
lea edi, [eax + 0x10]
mov dword [ebp - 0x1c], edi
mov byte [ebp - 4], 9
cmp dword [edi - 0xc], ebx
jne 0x1001ae1a
push 0x10091758
lea eax, [ebp - 0x1c]
push eax
call fcn.10002a16
mov edi, dword [ebp - 0x1c]
cmp dword [edi - 0xc], ebx
jl 0x1001ac33
movzx eax, word [edi]
push eax
call fcn.10061692
pop ecx
test eax, eax
jle 0x1001ae5f
push edi
call fcn.1005fde5
pop ecx
lea ecx, [ebp - 0x40]
push ecx
mov ecx, eax
call fcn.10016e48
pop ecx
lea edi, [ebp - 0x1c]
mov byte [ebp - 4], 0xa
call fcn.100023e1
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x40]
add eax, 0xfffffff0
call fcn.10002b29
mov edi, dword [ebp - 0x1c]
mov eax, dword [edi - 0xc]
cmp eax, 2
jle 0x1001af23
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], ebx
push 0x10091760
push reloc.WS2_32.dll_bind
mov eax, 0x2001f
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0xb
call fcn.1000458e
test eax, eax
jne 0x1001aeb0
lea eax, [ebp - 0x3c]
push eax
push str.DisableErrorOnInvalidLanguageCode
lea eax, [ebp - 0x50]
push eax
call fcn.10004553
lea esi, [ebp - 0x50]
call fcn.100045cc
mov edi, dword [ebp - 0x1c]
cmp dword [ebp - 0x3c], 1
je 0x1001af0f
mov eax, dword [0x100b27b4]
mov ecx, 0x100b27b4
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x38], eax
push edi
push 0x100917d8
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0xc
call fcn.1000261c
mov esi, dword [ebp - 0x38]
pop ecx
pop ecx
push 0x6e
push 1
push ecx
add esi, 0xfffffff0
mov eax, esi
mov dword [ebp - 0x48], esp
mov edi, esp
call fcn.10002aac
add eax, 0x10
mov dword [edi], eax
mov edi, dword [ebp + 8]
push ebx
push 0x12
mov ecx, edi
call fcn.1001f748
mov eax, esi
call fcn.10002b29
jmp 0x1001af12
mov edi, dword [ebp + 8]
lea esi, [ebp - 0x50]
mov byte [ebp - 4], 9
call fcn.100045cc
mov esi, dword [ebp - 0x60]
jmp 0x1001af26
mov edi, dword [ebp + 8]
cmp dword [ebp - 0x5c], 4
jbe 0x1001ac33
lea eax, [esi + 0x10]
push eax
mov ecx, 0x100917d4
call fcn.10002531
neg eax
sbb al, al
inc al
cmp dword [ebp - 0x5c], 5
mov byte [ebp - 0x11], al
jbe 0x1001ac33
push dword [esi + 0x14]
call fcn.1005fdfb
cmp dword [ebp - 0x5c], 6
pop ecx
mov dword [ebp - 0x2c], eax
jbe 0x1001ac33
push dword [esi + 0x18]
call fcn.1005fdfb
pop ecx
mov dword [ebp - 0x20], eax
call fcn.1002404a
cmp dword [ebp - 0x20], ebx
setne cl
mov byte [eax + 3], cl
cmp dword [ebp - 0x20], ebx
je 0x1001afa4
call fcn.10023a80
mov byte [eax + 0x13], bl
cmp byte [edi + 0x1ac], bl
je 0x1001afa4
mov eax, dword [edi + 0x1a8]
cmp eax, ebx
je 0x1001afa4
mov byte [eax + 0x76], 1
cmp dword [ebp - 0x5c], 7
jbe 0x1001ac33
mov esi, dword [esi + 0x1c]
sub esi, 0x10
mov eax, esi
call fcn.10002aac
lea esi, [eax + 0x10]
mov dword [ebp - 0x40], esi
add edi, 0x204
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xd
call fcn.100023e1
lea eax, [esi - 0x10]
mov byte [ebp - 4], 9
call fcn.10002b29
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x24]
cmp dword [esi - 0xc], ebx
je 0x1001b5ab
cmp dword [edi - 0xc], ebx
je 0x1001b5ab
mov ecx, str.748ad6d80864338c9c03b664839d8161
mov eax, esi
call fcn.100025f1
cmp eax, ebx
sete al
cmp al, bl
je 0x1001b02c
push 0x69
push 1
push ecx
mov eax, esp
mov dword [ebp - 0x48], esp
push eax
mov ecx, str._rtf1_colortbl__red0green0_blue0__red255green0_blue0_cf2Status_ERROR__cf1_OpenCandy_was_initialized_with_a_test_key._Do_not_forget_to_change_the_test_key_748ad6d80864338c9c03b664839d8161_to_your_companys_product_key.par
call fcn.10002a34
mov ecx, dword [ebp + 8]
push ebx
push 0x12
call fcn.1001f748
mov ecx, str.dfb3a60d6bfdb55c50e1ef53249f1198
mov eax, edi
call fcn.100025f1
cmp eax, ebx
sete al
cmp al, bl
je 0x1001b061
push 0x6a
push 1
push ecx
mov eax, esp
mov dword [ebp - 0x48], esp
push eax
mov ecx, str._rtf1_colortbl__red0green0_blue0__red255green0_blue0_cf2Status_ERROR__cf1_OpenCandy_was_initialized_with_a_test_secret._Do_not_forget_to_change_the_test_secret_dfb3a60d6bfdb55c50e1ef53249f1198_to_your_companys_product_secret.par
call fcn.10002a34
mov ecx, dword [ebp + 8]
push ebx
push 0x12
call fcn.1001f748
call fcn.1002ed82
push 0x24
call fcn.1005fc55
pop ecx
mov dword [ebp - 0x48], eax
mov byte [ebp - 4], 0xe
cmp eax, ebx
je 0x1001b084
push eax
call fcn.1001b5f7
mov dword [ebp - 0x18], eax
jmp 0x1001b087
mov dword [ebp - 0x18], ebx
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x44]
mov edi, 0xfde9
push edi
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x48], esp
mov esi, esp
mov dword [ebp - 0x3c], eax
call fcn.10002aac
add eax, 0x10
mov dword [esi], eax
call fcn.100070c9
mov esi, dword [ebp - 0x18]
pop ecx
pop ecx
push eax
mov dword [ebp - 0x38], eax
call fcn.1002d486
cmp dword [ebp - 0x38], ebx
je 0x1001b0cb
push dword [ebp - 0x38]
call fcn.10060146
pop ecx
mov eax, dword [ebp - 0x28]
push edi
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x48], esp
mov esi, esp
mov dword [ebp - 0x38], eax
call fcn.10002aac
add eax, 0x10
mov dword [esi], eax
call fcn.100070c9
mov esi, dword [ebp - 0x18]
pop ecx
pop ecx
push eax
add esi, 8
mov dword [ebp - 0x34], eax
call fcn.1002d486
cmp dword [ebp - 0x34], ebx
je 0x1001b109
push dword [ebp - 0x34]
call fcn.10060146
pop ecx
mov eax, dword [ebp - 0x24]
push edi
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x48], esp
mov esi, esp
mov dword [ebp - 0x34], eax
call fcn.10002aac
add eax, 0x10
mov dword [esi], eax
call fcn.100070c9
mov esi, dword [ebp - 0x18]
pop ecx
pop ecx
push eax
add esi, 0x10
mov dword [ebp - 0x30], eax
call fcn.1002d486
cmp dword [ebp - 0x30], ebx
je 0x1001b147
push dword [ebp - 0x30]
call fcn.10060146
pop ecx
mov eax, dword [ebp - 0x1c]
push edi
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x48], esp
mov esi, esp
mov dword [ebp - 0x30], eax
call fcn.10002aac
add eax, 0x10
mov dword [esi], eax
call fcn.100070c9
mov edi, dword [ebp - 0x18]
pop ecx
pop ecx
push eax
lea esi, [edi + 0x18]
mov dword [ebp - 0x40], eax
call fcn.1002d486
cmp dword [ebp - 0x40], ebx
je 0x1001b185
push dword [ebp - 0x40]
call fcn.10060146
pop ecx
mov al, byte [ebp - 0x11]
mov byte [edi + 0x20], al
mov edi, dword [ebp + 8]
add edi, 0xc
lea eax, [ebp - 0x28]
call fcn.100023e1
mov esi, dword [ebp + 8]
lea edi, [esi + 0x10]
lea eax, [ebp - 0x24]
call fcn.100023e1
cmp dword [ebp - 0x20], ebx
je 0x1001b223
push ebx
push ebx
push ecx
mov eax, esp
mov dword [ebp + 8], esp
push eax
mov ecx, str.Status_OK._OpenCandy_has_been_set_as_a_secondary_offer._No_OpenCandy_offer_will_be_shown.
call fcn.10002a34
push ebx
push 0xc
push ecx
mov byte [ebp - 4], 0xf
call fcn.1001a54d
pop ecx
mov ecx, eax
mov byte [ebp - 4], 9
call fcn.1001f748
cmp dword [ebp - 0x20], 0xffffffff
je 0x1001b1ee
call fcn.1002404a
mov ebx, dword [ebp - 0x18]
push eax
call fcn.100240c2
xor ebx, ebx
mov esi, dword [ebp - 0x18]
call fcn.1001b63b
mov eax, dword [ebp - 0x30]
call fcn.10002b29
mov eax, dword [ebp - 0x34]
call fcn.10002b29
mov eax, dword [ebp - 0x38]
call fcn.10002b29
mov eax, dword [ebp - 0x3c]
call fcn.10002b29
lea esi, [ebp - 0x60]
call fcn.1000258e
jmp 0x1001acb7
cmp byte [ebp - 0x11], bl
je 0x1001b496
push ebx
push ebx
push ebx
push ebx
mov dword [esi + 0x1c4], ebx
call dword [sym.imp.KERNEL32.dll_CreateEventW]
push ebx
push fcn.1001b717
push dword [ebp - 0x18]
mov dword [esi + 0x1bc], eax
push 3
call fcn.10036c15
add esp, 0x10
push esi
call fcn.1001fccf
push dword [ebp - 0x2c]
mov edi, eax
push dword [esi + 0x1bc]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push esi
mov dword [ebp - 0x48], eax
call fcn.1001fccf
mov dword [ebp - 0x20], ebx
cmp eax, edi
jbe 0x1001b28a
mov ecx, dword [ebp - 0x2c]
sub eax, edi
cmp eax, ecx
jae 0x1001b28a
sub ecx, eax
mov dword [ebp - 0x20], ecx
push ebx
push ebx
lea eax, [ebp - 0x40]
push eax
push ecx
call fcn.1001a54d
pop ecx
push eax
call fcn.1001fc4d
push ecx
mov byte [ebp - 4], 0x10
mov ecx, esp
mov dword [ebp - 0x18], esp
push str.DoInitialize_Complete._Seconds_time_from_startup:
push ecx
mov ecx, eax
call fcn.1000423e
pop ecx
pop ecx
push ebx
push 0x13
mov ecx, esi
call fcn.1001f748
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x40]
add eax, 0xfffffff0
call fcn.10002b29
mov eax, dword [0x100b27b4]
mov ecx, 0x100b27b4
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x18]
push eax
push ecx
mov byte [ebp - 4], 0x11
call fcn.1001a54d
pop ecx
push eax
call fcn.1001fc4d
mov byte [ebp - 4], 0x12
push dword [eax]
lea eax, [ebp - 0x40]
push str.InitComplete
push 0x10092098
call fcn.1000261c
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x18]
add esp, 0xc
add eax, 0xfffffff0
call fcn.10002b29
mov eax, dword [ebp - 0x40]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x18], esp
mov edi, esp
mov dword [ebp - 0x18], eax
call fcn.10002aac
add eax, 0x10
mov dword [edi], eax
call fcn.1001f7e2
cmp dword [ebp - 0x48], ebx
jne 0x1001b489
cmp dword [ebp - 0x20], ebx
jbe 0x1001b489
push ebx
push ebx
lea eax, [ebp - 0x2c]
push eax
push 0x1001b664
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateThread]
push dword [ebp - 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov esi, eax
mov eax, dword [0x100b27b4]
mov ecx, 0x100b27b4
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x20], eax
push ebx
lea eax, [ebp - 0x48]
push ebx
push eax
push ecx
mov byte [ebp - 4], 0x13
call fcn.1001a54d
pop ecx
push eax
call fcn.1001fc4d
cmp esi, ebx
jne 0x1001b3f4
push ecx
mov byte [ebp - 4], 0x14
mov ecx, esp
mov dword [ebp - 0x4c], esp
push str.INIT_Images_download_complete._Seconds_time_from_startup:
push ecx
mov ecx, eax
call fcn.1000423e
pop ecx
pop ecx
mov ecx, dword [ebp + 8]
push ebx
push 0x13
call fcn.1001f748
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
call fcn.10002b29
lea eax, [ebp - 0x48]
push eax
push ecx
call fcn.1001a54d
pop ecx
push eax
call fcn.1001fc4d
mov byte [ebp - 4], 0x15
push dword [eax]
push str.ImageBlockReleased
push 0x100921c8
jmp 0x1001b448
push ecx
mov byte [ebp - 4], 0x16
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x10092238
push ecx
mov ecx, eax
call fcn.1000423e
pop ecx
pop ecx
mov ecx, dword [ebp + 8]
push ebx
push 0x13
call fcn.1001f748
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
call fcn.10002b29
lea eax, [ebp - 0x48]
push eax
push ecx
call fcn.1001a54d
pop ecx
push eax
call fcn.1001fc4d
mov byte [ebp - 4], 0x17
push dword [eax]
push str.ImageBlockExpired
push 0x100922b0
lea eax, [ebp - 0x20]
call fcn.1000261c
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x48]
add esp, 0xc
add eax, 0xfffffff0
call fcn.10002b29
mov edi, dword [ebp - 0x20]
push ecx
add edi, 0xfffffff0
mov eax, edi
mov dword [ebp - 0x4c], esp
mov esi, esp
call fcn.10002aac
add eax, 0x10
mov dword [esi], eax
mov esi, dword [ebp + 8]
call fcn.1001f7e2
mov eax, edi
call fcn.10002b29
mov eax, dword [ebp - 0x18]
call fcn.10002b29
jmp 0x1001b1f6
push dword [ebp - 0x18]
call fcn.1001b717
pop ecx
push ebx
push ebx
push ecx
mov dword [ebp - 0x40], eax
mov eax, esp
mov dword [ebp + 8], esp
push eax
mov ecx, 0x10092320
call fcn.10002a34
push 1
push 1
mov ecx, esi
call fcn.1001f748
push ebx
push ebx
lea eax, [ebp + 8]
push eax
push ecx
call fcn.1001a54d
pop ecx
push eax
call fcn.1001fc4d
push ecx
mov byte [ebp - 4], 0x18
mov ecx, esp
mov dword [ebp - 0x4c], esp
push str.INIT_Complete._Seconds_time_from_startup:
push ecx
mov ecx, eax
call fcn.1000423e
pop ecx
pop ecx
push ebx
push 0x13
mov ecx, esi
call fcn.1001f748
mov byte [ebp - 4], 9
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
call fcn.10002b29
mov eax, dword [0x100b27b4]
mov ecx, 0x100b27b4
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp + 8], eax
lea eax, [ebp - 0x48]
push eax
push ecx
mov byte [ebp - 4], 0x19
call fcn.1001a54d
pop ecx
push eax
call fcn.1001fc4d
mov byte [ebp - 4], 0x1a
push dword [eax]
lea eax, [ebp + 8]
push str.InitCompleteSync
push 0x100923d8
call fcn.1000261c
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x48]
add esp, 0xc
add eax, 0xfffffff0
call fcn.10002b29
mov ebx, dword [ebp + 8]
push ecx
add ebx, 0xfffffff0
mov eax, ebx
mov dword [ebp - 0x4c], esp
mov edi, esp
call fcn.10002aac
add eax, 0x10
mov dword [edi], eax
call fcn.1001f7e2
mov eax, ebx
call fcn.10002b29
mov eax, dword [ebp - 0x30]
call fcn.10002b29
mov eax, dword [ebp - 0x34]
call fcn.10002b29
mov eax, dword [ebp - 0x38]
call fcn.10002b29
mov eax, dword [ebp - 0x3c]
call fcn.10002b29
lea esi, [ebp - 0x60]
call fcn.1000258e
mov ebx, dword [ebp - 0x40]
jmp 0x1001acb7
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
call fcn.10002b29
lea eax, [edi - 0x10]
call fcn.10002b29
lea eax, [esi - 0x10]
call fcn.10002b29
mov eax, dword [ebp - 0x44]
add eax, 0xfffffff0
call fcn.10002b29
lea esi, [ebp - 0x60]
call fcn.1000258e
lea esi, [ebp - 0x70]
call fcn.1000258e
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
call fcn.10002b29
xor eax, eax
inc eax
call fcn.1006a176
ret 8