Function at 0x4039a0
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4faaef
mov eax, dword fs:[0]
push eax
sub esp, 0x364
mov eax, dword [0x54e434]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x2a0], ecx
mov dword [ebp - 0x2b0], 0
mov dword [ebp - 0x2c0], 0
mov eax, dword [ebp - 0x2a0]
movzx ecx, byte [eax + 0x10]
test ecx, ecx
jne 0x404bd3
push 0x3e8
mov edx, dword [ebp - 0x2a0]
mov eax, dword [edx + 0x5c]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0x31c], eax
cmp dword [ebp - 0x31c], 0
je 0x403a2b
mov ecx, dword [ebp - 0x2a0]
movzx edx, byte [ecx + 0x10]
test edx, edx
je 0x403a30
jmp 0x404bd3
mov eax, dword [ebp - 0x2c0]
add eax, 1
mov dword [ebp - 0x2c0], eax
cmp dword [0x54ec80], 0
je 0x403a96
cmp dword [ebp - 0x2c0], 0xb4
jb 0x403a94
mov dword [0x54ec80], 0
mov dword [ebp - 0x2c0], 0
push str.RCPicExtConfig::UpdateCloudConfig_init_n
call fcn.00403220
add esp, 4
cmp dword [0x551880], 0
je 0x403a94
mov ecx, dword [0x551880]
call fcn.004c1200
mov ecx, dword [ebp - 0x2a0]
call fcn.00408d20
jmp 0x403ad8
cmp dword [ebp - 0x2c0], 0x2a30
jb 0x403ad8
push str.RCPicExtConfig::UpdateCloudConfig_later_n
call fcn.00403220
add esp, 4
cmp dword [0x551880], 0
je 0x403ace
mov ecx, dword [0x551880]
call fcn.004c1200
mov ecx, dword [ebp - 0x2a0]
call fcn.00408d20
mov dword [ebp - 0x2c0], 0
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x54
push ecx
lea ecx, [ebp - 0x300]
call fcn.00403240
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x308]
call fcn.004151d0
mov byte [ebp - 4], 1
push str.D5165921_8CFE_4F51_80DC_8BC87A25FD80
lea ecx, [ebp - 0x238]
call fcn.0040a780
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x2b0]
or edx, 1
mov dword [ebp - 0x2b0], edx
lea eax, [ebp - 0x238]
push eax
lea ecx, [ebp - 0x308]
call fcn.004154f0
movzx ecx, al
test ecx, ecx
jne 0x403b5d
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x3c
call fcn.00409f40
test eax, eax
jbe 0x403b5d
mov dword [ebp - 0x2e0], 1
jmp 0x403b67
mov dword [ebp - 0x2e0], 0
mov dl, byte [ebp - 0x2e0]
mov byte [ebp - 0x2b9], dl
mov dword [ebp - 4], 1
mov eax, dword [ebp - 0x2b0]
and eax, 1
je 0x403b97
and dword [ebp - 0x2b0], 0xfffffffe
lea ecx, [ebp - 0x238]
call fcn.0040a6f0
movzx ecx, byte [ebp - 0x2b9]
test ecx, ecx
je 0x403f81
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x348], esp
push str.RCImage.hzc
call fcn.0040a780
lea edx, [ebp - 0x1a8]
push edx
call fcn.004b9270
add esp, 0x1c
mov dword [ebp - 0x344], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x340]
call fcn.0041add0
mov byte [ebp - 4], 4
push 0
lea eax, [ebp - 0x1a8]
push eax
lea ecx, [ebp - 0x340]
call fcn.0041b7b0
mov byte [ebp - 0x2ba], al
lea ecx, [ebp - 0x2a8]
push ecx
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x3c
call fcn.00409f50
lea edx, [ebp - 0x360]
push edx
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x3c
call fcn.00409c60
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00409a20
movzx eax, al
test eax, eax
je 0x403f63
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
movzx ecx, byte [eax + 0x64]
test ecx, ecx
je 0x403c6f
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
mov byte [eax + 0x64], 0
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
mov byte [eax + 0x65], 1
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
add eax, 0x18
mov ecx, eax
call fcn.0040a590
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
mov ecx, eax
call fcn.0040a590
push eax
push str.setdefault_ProcessingDefaultRegItemMap_progid:_s__s_n
call fcn.00403220
add esp, 0xc
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
movzx edx, byte [eax + 0x65]
push edx
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
movzx eax, byte [eax + 0x64]
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
movzx ecx, byte [eax + 0x66]
push ecx
push str.setdefault_ProcessingDefaultRegItemMap_isRemindProtected:_d_isRemindWindowsPopuped:_d_isRemindWindowsClosed:_d_n
call fcn.00403220
add esp, 0x10
mov byte [ebp - 0x2b4], 0
movzx edx, byte [ebp - 0x2ba]
test edx, edx
je 0x403d5b
push str.GlobalProtectFlag
lea ecx, [ebp - 0x130]
call fcn.0040a780
mov byte [ebp - 4], 5
push str.GernelSection
lea ecx, [ebp - 0x220]
call fcn.0040a780
mov byte [ebp - 4], 6
push 0
lea eax, [ebp - 0x130]
push eax
lea ecx, [ebp - 0x220]
push ecx
lea ecx, [ebp - 0x340]
call fcn.0041b730
mov byte [ebp - 0x2b4], al
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x220]
call fcn.0040a6f0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x130]
call fcn.0040a6f0
movzx edx, byte [ebp - 0x2b4]
test edx, edx
je 0x403f3a
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
add eax, 0x18
push eax
lea ecx, [ebp - 0x178]
call fcn.0040a7e0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
add eax, 0x30
push eax
lea ecx, [ebp - 0x280]
call fcn.0040a7e0
mov byte [ebp - 4], 8
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xe8]
push ecx
mov ecx, dword [ebp - 0x2a0]
call fcn.004077d0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xe8]
call fcn.0040a590
push eax
push str.setdefault_popup_after:_s_n
call fcn.00403220
add esp, 8
lea ecx, [ebp - 0x100]
call fcn.0040a7c0
mov byte [ebp - 4], 0xa
lea edx, [ebp - 0x100]
push edx
lea eax, [ebp - 0xe8]
push eax
mov ecx, dword [ebp - 0x2a0]
call fcn.004089e0
lea ecx, [ebp - 0x100]
push ecx
lea ecx, [ebp - 0x160]
call fcn.0040a7e0
mov byte [ebp - 4], 0xb
lea edx, [ebp - 0x100]
push edx
push str.NoRemind_
lea eax, [ebp - 0x268]
push eax
call fcn.0040b800
add esp, 0xc
mov byte [ebp - 4], 0xc
push str.SetDefaultPopupWindowSection
lea ecx, [ebp - 0x148]
call fcn.0040a780
mov byte [ebp - 4], 0xd
push 0
lea ecx, [ebp - 0x160]
push ecx
lea edx, [ebp - 0x148]
push edx
lea ecx, [ebp - 0x340]
call fcn.0041b730
mov byte [ebp - 0x2bb], al
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x148]
call fcn.0040a6f0
movzx eax, byte [ebp - 0x2bb]
test eax, eax
je 0x403eb0
lea ecx, [ebp - 0xe8]
call fcn.0040a590
push eax
push str.setdefault_popup_after_protected:_s_n
call fcn.00403220
add esp, 8
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
mov byte [eax + 0x66], 1
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
add eax, 0x18
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00409ba0
push eax
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x34
call fcn.00409f90
mov ecx, eax
call fcn.00404bf0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x268]
call fcn.0040a6f0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x160]
call fcn.0040a6f0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x100]
call fcn.0040a6f0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xe8]
call fcn.0040a6f0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x280]
call fcn.0040a6f0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x178]
call fcn.0040a6f0
mov ecx, dword [ebp - 0x2a8]
push ecx
lea edx, [ebp - 0x35c]
push edx
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x3c
call fcn.0040b8d0
mov eax, dword [eax]
mov dword [ebp - 0x2a8], eax
jmp 0x403c12
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x340]
call fcn.0041af10
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1a8]
call fcn.0040a6f0
lea ecx, [ebp - 0x308]
call fcn.00415240
lea ecx, [ebp - 0x29c]
push ecx
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x34
call fcn.00409f50
lea edx, [ebp - 0x358]
push edx
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x34
call fcn.00409c60
push eax
lea ecx, [ebp - 0x29c]
call fcn.00409a20
movzx eax, al
test eax, eax
je 0x404bad
lea ecx, [ebp - 0x88]
call fcn.0040a7c0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
mov ecx, dword [eax + 0x54]
push ecx
mov edx, dword [eax + 0x50]
push edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
mov eax, dword [eax + 0x48]
push eax
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
mov ecx, eax
call fcn.0040a590
push eax
push str.setdefault_begin0_subfortmat:_s__duration:_d_nowtick:_lu__oldtick:_lu_n
lea ecx, [ebp - 0x88]
push ecx
call fcn.00413310
add esp, 0x1c
lea ecx, [ebp - 0x88]
call fcn.0040a590
push eax
call fcn.00403220
add esp, 4
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
cmp dword [eax + 0x48], 0
je 0x4040c0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
xor edi, edi
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
sub esi, dword [eax + 0x50]
sbb edi, dword [eax + 0x54]
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
imul eax, dword [eax + 0x48], 0x3e8
cdq
mov dword [ebp - 0x2fc], esi
mov dword [ebp - 0x2f8], edi
mov dword [ebp - 0x324], eax
mov dword [ebp - 0x320], edx
mov edx, dword [ebp - 0x2f8]
cmp edx, dword [ebp - 0x320]
jb 0x404b85
ja 0x4040c0
mov eax, dword [ebp - 0x2fc]
cmp eax, dword [ebp - 0x324]
jbe 0x404b85
lea ecx, [ebp - 0x28]
call fcn.0040a7c0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
mov ecx, eax
call fcn.0040a590
push eax
push str.setdefault_begin_subfortmat:_s_n
lea ecx, [ebp - 0x28]
push ecx
call fcn.00413310
add esp, 0xc
lea ecx, [ebp - 0x28]
call fcn.0040a590
push eax
call fcn.00403220
add esp, 4
mov byte [ebp - 0x2a9], 0
mov byte [ebp - 0x2b1], 0
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
push eax
lea ecx, [ebp - 0x70]
call fcn.0040a7e0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x30
push eax
lea ecx, [ebp - 0xa0]
call fcn.0040a7e0
mov byte [ebp - 4], 0x11
lea edx, [ebp - 0x70]
push edx
lea eax, [ebp - 0x40]
push eax
mov ecx, dword [ebp - 0x2a0]
call fcn.004077d0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x40]
push ecx
lea ecx, [ebp - 0xb8]
call fcn.0040a7e0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x40]
call fcn.0040a580
movzx edx, al
test edx, edx
jne 0x4042e7
lea ecx, [ebp - 0x40]
call fcn.0040a590
push eax
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
mov ecx, eax
call fcn.0040a590
push eax
push str.setdefault_read_oldpid_subfortmat:_s__pid:_s_n
lea eax, [ebp - 0x28]
push eax
call fcn.00413310
add esp, 0x10
lea ecx, [ebp - 0x28]
call fcn.0040a590
push eax
call fcn.00403220
add esp, 4
lea ecx, [ebp - 0x40]
push ecx
call fcn.00412fb0
add esp, 4
lea edx, [ebp - 0xa0]
push edx
call fcn.00412fb0
add esp, 4
push 0
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x40]
call fcn.0040a540
cmp eax, 0xffffffff
je 0x404201
mov byte [ebp - 0x2a9], 1
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x58
mov dword [ebp - 0x2dc], eax
lea ecx, [ebp - 0x364]
push ecx
mov ecx, dword [ebp - 0x2dc]
call fcn.0040a050
mov edx, dword [eax]
mov dword [ebp - 0x318], edx
lea eax, [ebp - 0x368]
push eax
mov ecx, dword [ebp - 0x2dc]
call fcn.00409c60
mov ecx, dword [eax]
mov dword [ebp - 0x2c8], ecx
jmp 0x404256
lea ecx, [ebp - 0x2c8]
call fcn.0040a250
lea edx, [ebp - 0x318]
push edx
lea ecx, [ebp - 0x2c8]
call fcn.00409a20
movzx eax, al
test eax, eax
je 0x4042e7
lea ecx, [ebp - 0x2c8]
call fcn.00409a40
push eax
lea ecx, [ebp - 0xd0]
call fcn.0040a7e0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x40]
push ecx
call fcn.00412fb0
add esp, 4
lea edx, [ebp - 0xd0]
push edx
call fcn.00412fb0
add esp, 4
push 0
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0x40]
call fcn.0040a540
cmp eax, 0xffffffff
je 0x4042d3
mov byte [ebp - 0x2b1], 1
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xd0]
call fcn.0040a6f0
jmp 0x4042e7
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xd0]
call fcn.0040a6f0
jmp 0x40424b
mov dword [ebp - 0x2d8], 1
push 0x52345c
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
mov ecx, eax
call fcn.0040a420
test eax, eax
jne 0x404319
mov dword [ebp - 0x2d8], 0
mov byte [ebp - 0x2a1], 0
cmp dword [ebp - 0x2d8], 0
je 0x40434a
call fcn.004bc620
movzx ecx, al
test ecx, ecx
je 0x404348
call fcn.004bc710
movzx edx, al
test edx, edx
je 0x404348
mov byte [ebp - 0x2a1], 1
jmp 0x404381
call fcn.004bc6c0
movzx eax, al
test eax, eax
je 0x404362
call fcn.004bc7b0
movzx ecx, al
test ecx, ecx
jne 0x40437a
call fcn.004bc670
movzx edx, al
test edx, edx
je 0x404381
call fcn.004bc760
movzx eax, al
test eax, eax
je 0x404381
mov byte [ebp - 0x2a1], 1
movzx ecx, byte [ebp - 0x2b1]
push ecx
movzx edx, byte [ebp - 0x2a9]
push edx
movzx eax, byte [ebp - 0x2a1]
push eax
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
mov ecx, eax
call fcn.0040a590
push eax
push str.setdefault_subfortmat:_s__isProtected:_d__isSelfDefault:_d__isMatchWhiteList:_d
lea ecx, [ebp - 0x28]
push ecx
call fcn.00413310
add esp, 0x18
lea ecx, [ebp - 0x28]
call fcn.0040a590
push eax
call fcn.00403220
add esp, 4
movzx edx, byte [ebp - 0x2a1]
test edx, edx
jne 0x404458
movzx eax, byte [ebp - 0x2a9]
test eax, eax
jne 0x404458
movzx ecx, byte [ebp - 0x2b1]
test ecx, ecx
jne 0x404458
lea edx, [ebp - 0x70]
push edx
push 0x523508
lea eax, [ebp - 0x298]
push eax
call fcn.0040b800
add esp, 0xc
mov dword [ebp - 0x314], eax
mov ecx, dword [ebp - 0x314]
mov dword [ebp - 0x2ec], ecx
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0x2b0]
or edx, 2
mov dword [ebp - 0x2b0], edx
push 1
push 1
mov eax, dword [ebp - 0x2ec]
push eax
mov ecx, dword [ebp - 0x2a0]
call fcn.00407440
movzx ecx, al
test ecx, ecx
je 0x404458
mov dword [ebp - 0x2d4], 1
jmp 0x404462
mov dword [ebp - 0x2d4], 0
mov dl, byte [ebp - 0x2d4]
mov byte [ebp - 0x2bc], dl
mov dword [ebp - 4], 0x13
mov eax, dword [ebp - 0x2b0]
and eax, 2
je 0x404492
and dword [ebp - 0x2b0], 0xfffffffd
lea ecx, [ebp - 0x298]
call fcn.0040a6f0
movzx ecx, byte [ebp - 0x2bc]
test ecx, ecx
je 0x404b1d
mov dword [ebp - 0x2c4], 0
push 0x522f3c
lea ecx, [ebp - 0x58]
call fcn.0040a780
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
movzx edx, byte [eax + 0x65]
push edx
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
movzx eax, byte [eax + 0x64]
push eax
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
movzx ecx, byte [eax + 0x66]
push ecx
push str.setdefault_info_isRemindProtected:_d_isRemindWindowsPopuped:_d_isRemindWindowsClosed:_d_n
call fcn.00403220
add esp, 0x10
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
movzx edx, byte [eax + 0x66]
test edx, edx
jne 0x404580
lea eax, [ebp - 0x70]
push eax
push 0x523508
lea ecx, [ebp - 0x250]
push ecx
call fcn.0040b800
add esp, 0xc
mov dword [ebp - 0x2f4], eax
mov edx, dword [ebp - 0x2f4]
mov dword [ebp - 0x2f0], edx
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0x2b0]
or eax, 4
mov dword [ebp - 0x2b0], eax
lea ecx, [ebp - 0x58]
push ecx
lea edx, [ebp - 0x2c4]
push edx
mov eax, dword [ebp - 0x2f0]
push eax
lea ecx, [ebp - 0xb8]
push ecx
mov ecx, dword [ebp - 0x2a0]
call fcn.00407e30
movzx edx, al
test edx, edx
je 0x404580
mov dword [ebp - 0x2d0], 1
jmp 0x40458a
mov dword [ebp - 0x2d0], 0
mov al, byte [ebp - 0x2d0]
mov byte [ebp - 0x2b8], al
mov dword [ebp - 4], 0x16
mov ecx, dword [ebp - 0x2b0]
and ecx, 4
je 0x4045ba
and dword [ebp - 0x2b0], 0xfffffffb
lea ecx, [ebp - 0x250]
call fcn.0040a6f0
movzx edx, byte [ebp - 0x2b8]
test edx, edx
je 0x40486c
lea ecx, [ebp - 0xb8]
call fcn.0040a590
push eax
push str.setdefault_popup_before:_s_n
call fcn.00403220
add esp, 8
lea ecx, [ebp - 0x2e8]
call fcn.004151d0
mov byte [ebp - 4], 0x18
push str.D5165921_8CFE_4F51_80DC_8BC87A25FD80
lea ecx, [ebp - 0x190]
call fcn.0040a780
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x190]
push eax
lea ecx, [ebp - 0x2e8]
call fcn.004154f0
mov byte [ebp - 0x2b5], al
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x190]
call fcn.0040a6f0
movzx ecx, byte [ebp - 0x2b5]
test ecx, ecx
je 0x40471d
lea ecx, [ebp - 0x58]
call fcn.0040a590
push eax
mov edx, dword [ebp - 0x2c4]
push edx
push str.setdefault_CheckSetDefaultWindow_IsExist_wait_:_d___s
call fcn.00403220
add esp, 0xc
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
push eax
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
push eax
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x3c
call fcn.00409f90
mov ecx, eax
call fcn.00404bf0
mov eax, dword [ebp - 0x29c]
push eax
lea ecx, [ebp - 0x36c]
push ecx
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x34
call fcn.0040b8d0
mov edx, dword [eax]
mov dword [ebp - 0x29c], edx
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x2e8]
call fcn.00415240
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x58]
call fcn.0040a6f0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xb8]
call fcn.0040a6f0
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x40]
call fcn.0040a6f0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0xa0]
call fcn.0040a6f0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x70]
call fcn.0040a6f0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x28]
call fcn.0040a6f0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call fcn.0040a6f0
jmp 0x403fa1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x370], esp
lea eax, [ebp - 0x58]
push eax
call fcn.0040a7e0
mov ecx, dword [ebp - 0x2c4]
push ecx
mov ecx, dword [ebp - 0x2a0]
call fcn.00407d60
mov byte [ebp - 0x2b6], al
mov dl, byte [ebp - 0x2b6]
mov byte [ebp - 0x2b3], dl
movzx eax, byte [ebp - 0x2b3]
test eax, eax
je 0x40485d
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
mov byte [eax + 0x64], 1
movzx ecx, byte [ebp - 0x2b3]
push ecx
lea ecx, [ebp - 0x58]
call fcn.0040a590
push eax
mov edx, dword [ebp - 0x2c4]
push edx
push str.setdefault_CheckSetDefaultWindow_popup:_d__s__d
call fcn.00403220
add esp, 0x10
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
push eax
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
push eax
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x3c
call fcn.00409f90
mov ecx, eax
call fcn.00404bf0
mov eax, dword [ebp - 0x29c]
push eax
lea ecx, [ebp - 0x34c]
push ecx
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x34
call fcn.0040b8d0
mov edx, dword [eax]
mov dword [ebp - 0x29c], edx
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x2e8]
call fcn.00415240
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x58]
call fcn.0040a6f0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xb8]
call fcn.0040a6f0
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x40]
call fcn.0040a6f0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0xa0]
call fcn.0040a6f0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x70]
call fcn.0040a6f0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x28]
call fcn.0040a6f0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call fcn.0040a6f0
jmp 0x403fa1
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x2e8]
call fcn.00415240
lea ecx, [ebp - 0x2cc]
call fcn.004b2a90
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0x2a0]
cmp dword [eax + 0x58], 0
je 0x4048bf
push str.u125
lea ecx, [ebp - 0x1c0]
call fcn.0040a780
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x1c0]
push ecx
mov edx, dword [ebp - 0x2a0]
mov ecx, dword [edx + 0x58]
call fcn.004bb400
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x1c0]
call fcn.0040a6f0
lea ecx, [ebp - 0x330]
call fcn.00409ab0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
push eax
lea ecx, [ebp - 0x330]
call fcn.0040a2e0
push 1
lea eax, [ebp - 0x330]
push eax
lea ecx, [ebp - 0x2cc]
call fcn.004b3c00
mov dword [ebp - 0x310], eax
cmp dword [ebp - 0x310], 0
jle 0x404914
mov byte [ebp - 0x2b2], 1
jmp 0x40491b
mov byte [ebp - 0x2b2], 0
mov cl, byte [ebp - 0x2b2]
mov byte [ebp - 0x2b7], cl
movzx edx, byte [ebp - 0x2b7]
test edx, edx
je 0x404a67
mov eax, dword [ebp - 0x2a0]
cmp dword [eax + 0x58], 0
je 0x404a2d
push str.u126
lea ecx, [ebp - 0x1d8]
call fcn.0040a780
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x1d8]
push ecx
mov edx, dword [ebp - 0x2a0]
mov ecx, dword [edx + 0x58]
call fcn.004bb400
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x1d8]
call fcn.0040a6f0
lea ecx, [ebp - 0x40]
call fcn.0040a580
movzx eax, al
test eax, eax
jne 0x4049cb
push str.u127
lea ecx, [ebp - 0x1f0]
call fcn.0040a780
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x40]
push ecx
lea edx, [ebp - 0x1f0]
push edx
mov eax, dword [ebp - 0x2a0]
mov ecx, dword [eax + 0x58]
call fcn.004bb420
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x1f0]
call fcn.0040a6f0
jmp 0x404a2d
push str.2345_empty_progid
lea ecx, [ebp - 0x118]
call fcn.0040a780
mov byte [ebp - 4], 0x1f
push str.u127
lea ecx, [ebp - 0x208]
call fcn.0040a780
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x118]
push ecx
lea edx, [ebp - 0x208]
push edx
mov eax, dword [ebp - 0x2a0]
mov ecx, dword [eax + 0x58]
call fcn.004bb420
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x208]
call fcn.0040a6f0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x118]
call fcn.0040a6f0
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
mov ecx, eax
call fcn.0040a590
push eax
push str.setdefault_CreateAssoc_success_subfortmat:_s
lea ecx, [ebp - 0x28]
push ecx
call fcn.00413310
add esp, 0xc
lea ecx, [ebp - 0x28]
call fcn.0040a590
push eax
call fcn.00403220
add esp, 4
jmp 0x404a9f
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x18
mov ecx, eax
call fcn.0040a590
push eax
push str.setdefault_CreateAssoc_error_subfortmat:_s
lea edx, [ebp - 0x28]
push edx
call fcn.00413310
add esp, 0xc
lea ecx, [ebp - 0x28]
call fcn.0040a590
push eax
call fcn.00403220
add esp, 4
mov eax, dword [ebp - 0x2a0]
add eax, 0x44
push eax
lea ecx, [ebp - 0x30c]
call fcn.00403240
mov byte [ebp - 4], 0x21
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
xor edi, edi
lea ecx, [ebp - 0x29c]
call fcn.00409ba0
add eax, 0x30
push eax
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x48
call fcn.00409ce0
mov dword [eax], esi
mov dword [eax + 4], edi
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x30c]
call fcn.00403260
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x330]
call fcn.0040a310
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x2cc]
call fcn.004b2b80
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x58]
call fcn.0040a6f0
mov ecx, dword [ebp - 0x29c]
push ecx
lea edx, [ebp - 0x350]
push edx
mov ecx, dword [ebp - 0x2a0]
add ecx, 0x34
call fcn.0040b8d0
mov eax, dword [eax]
mov dword [ebp - 0x29c], eax
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xb8]
call fcn.0040a6f0
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x40]
call fcn.0040a6f0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0xa0]
call fcn.0040a6f0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x70]
call fcn.0040a6f0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x28]
call fcn.0040a6f0
jmp 0x404b99
push 0
lea ecx, [ebp - 0x354]
push ecx
lea ecx, [ebp - 0x29c]
call fcn.00409d80
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call fcn.0040a6f0
jmp 0x403fa1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x308]
call fcn.00415240
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x300]
call fcn.00403260
jmp 0x4039e7
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004d12c9
mov esp, ebp
pop ebp
ret