Function at 0x40f350
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x950
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 8], eax
cmp dword [0x42b0d4], 0xffffffff
push ebx
push esi
push edi
je 0x40f6ed
mov ecx, 0x800
lea eax, [ebp - 0x90c]
nop
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x40f380
mov eax, dword [0x42cc10]
mov esi, dword [ebp + 8]
mov eax, dword [eax + 0x17c]
test eax, eax
jne 0x40f3b6
push 0xc88071b1
lea edx, [ecx + 5]
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x17c], eax
lea ecx, [ebp + 0xc]
push ecx
push esi
lea ecx, [ebp - 0x90c]
push ecx
call eax
mov esi, eax
test esi, esi
jle 0x40f6ed
mov byte [ebp - 0x928], 0
mov edi, 0x7f
mov byte [ebp - 0x927], 0x12
mov byte [ebp - 0x926], 0x18
mov byte [ebp - 0x925], 0x4e
mov byte [ebp - 0x924], 0x18
mov byte [ebp - 0x923], 0x18
mov byte [ebp - 0x922], 0x18
mov al, byte [ebp - 0x927]
cmp byte [ebp - 0x928], 0
jne 0x40f446
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x927]
movzx eax, al
sub eax, 0x18
imul eax, eax, 0x13
cdq
idiv edi
lea eax, [edx + 0x7f]
cdq
idiv edi
mov byte [ebp + ecx - 0x927], dl
inc ecx
cmp ecx, 6
jb 0x40f420
mov eax, dword [0x42cc10]
lea ebx, [esi + esi]
mov eax, dword [eax + 0x84]
test eax, eax
jne 0x40f472
push 0x21cca665
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x84], eax
push 0x42cc20
call eax
lea eax, [ebp - 0x920]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov byte [ebp - 0x950], 0
mov byte [ebp - 0x94f], 3
mov byte [ebp - 0x94e], 0x75
mov byte [ebp - 0x94d], 0x56
mov byte [ebp - 0x94c], 0x75
mov byte [ebp - 0x94b], 0xf
mov byte [ebp - 0x94a], 0x75
mov byte [ebp - 0x949], 0x6a
mov byte [ebp - 0x948], 0x75
mov byte [ebp - 0x947], 0x5f
mov byte [ebp - 0x946], 0x75
mov byte [ebp - 0x945], 0x59
mov byte [ebp - 0x944], 0x75
mov byte [ebp - 0x943], 0x56
mov byte [ebp - 0x942], 0x75
mov byte [ebp - 0x941], 0xf
mov byte [ebp - 0x940], 0x75
mov byte [ebp - 0x93f], 0x6a
mov byte [ebp - 0x93e], 0x75
mov byte [ebp - 0x93d], 0x5f
mov byte [ebp - 0x93c], 0x75
mov byte [ebp - 0x93b], 0x59
mov byte [ebp - 0x93a], 0x75
mov byte [ebp - 0x939], 0x56
mov byte [ebp - 0x938], 0x75
mov byte [ebp - 0x937], 0xf
mov byte [ebp - 0x936], 0x75
mov byte [ebp - 0x935], 0x6a
mov byte [ebp - 0x934], 0x75
mov byte [ebp - 0x933], 0x5f
mov byte [ebp - 0x932], 0x75
mov byte [ebp - 0x931], 0x5e
mov byte [ebp - 0x930], 0x75
mov byte [ebp - 0x92f], 0x31
mov byte [ebp - 0x92e], 0x75
mov byte [ebp - 0x92d], 0x75
mov byte [ebp - 0x92c], 0x75
mov al, byte [ebp - 0x94f]
cmp byte [ebp - 0x950], 0
jne 0x40f5cc
xor esi, esi
nop word [eax + eax]
mov al, byte [ebp + esi - 0x94f]
movzx ecx, al
sub ecx, 0x75
lea eax, [ecx*8]
sub eax, ecx
cdq
idiv edi
lea eax, [edx + 0x7f]
cdq
idiv edi
mov byte [ebp + esi - 0x94f], dl
inc esi
cmp esi, 0x24
jb 0x40f5a0
movzx eax, word [ebp - 0x914]
push eax
movzx eax, word [ebp - 0x916]
push eax
movzx eax, word [ebp - 0x918]
push eax
lea eax, [ebp - 0x94f]
push eax
lea eax, [ebp - 0x10c]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
mov esi, eax
add esp, 0x14
test esi, esi
je 0x40f642
mov ecx, dword [0x42cc10]
mov edi, dword [0x42b0d4]
mov eax, dword [ecx + 0x1c]
test eax, eax
jne 0x40f62b
push 0xc45f4a8c
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x1c], eax
push 0
lea ecx, [ebp - 0x910]
push ecx
lea ecx, [esi + esi]
push ecx
lea ecx, [ebp - 0x10c]
push ecx
push edi
call eax
mov eax, dword [0x42cc10]
mov esi, dword [0x42b0d4]
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x40f66b
push 0xc45f4a8c
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x1c], eax
push 0
lea ecx, [ebp - 0x910]
push ecx
push ebx
lea ecx, [ebp - 0x90c]
push ecx
push esi
call eax
mov eax, dword [0x42cc10]
mov esi, dword [0x42b0d4]
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x40f6a8
push 0xc45f4a8c
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x1c], eax
push 0
lea ecx, [ebp - 0x910]
push ecx
push 4
lea ecx, [ebp - 0x927]
push ecx
push esi
call eax
mov eax, dword [0x42cc10]
mov eax, dword [eax + 0x8c]
test eax, eax
jne 0x40f6e6
push 0xf99eabb9
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x8c], eax
push 0x42cc20
call eax
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004169d7
mov esp, ebp
pop ebp
ret