Function at 0x40d24c
Capabilities:
Check for time delay via gettickcount
Create directory
Set file attributes

Disassembly:
push 0x23c
mov eax, 0x441c0e
call fcn.0042bb26
mov ebx, ecx
mov dword [ebp - 0x11c], ebx
push ebx
mov dword [ebp - 4], 6
call fcn.0041f62a
lea eax, [ebx + 0x18]
push eax
mov byte [ebp - 4], 7
call fcn.004058d5
lea eax, [ebx + 0xe0]
mov byte [ebp - 4], 8
push eax
mov dword [ebp - 0x128], eax
call fcn.004020e8
lea edi, [ebx + 0x138]
mov dword [ebp - 0x188], edi
call fcn.00426269
lea esi, [ebx + 0x180]
mov dword [ebp - 0x12c], esi
call fcn.00403180
lea esi, [ebx + 0x19c]
mov dword [ebp - 0x130], esi
call fcn.00403180
lea esi, [ebx + 0x1b8]
call fcn.00403180
lea esi, [ebx + 0x1d8]
mov dword [ebp - 0x18c], esi
call fcn.00403180
lea esi, [ebx + 0x1f8]
call fcn.00403180
lea eax, [ebx + 0x214]
push eax
mov byte [ebp - 4], 0xf
call fcn.00418584
lea eax, [ebx + 0x22c]
push eax
mov byte [ebp - 4], 0x10
call fcn.00418584
lea esi, [ebx + 0x244]
mov dword [ebp - 0x14c], esi
call fcn.00403180
lea esi, [ebx + 0x260]
mov dword [ebp - 0x138], esi
call fcn.00403180
lea esi, [ebx + 0x288]
call fcn.00403180
lea esi, [ebx + 0x2a4]
mov dword [ebp - 0x120], esi
call fcn.00403180
push 4
mov byte [ebp - 4], 0x15
lea esi, [ebx + 0x2c0]
call fcn.0042a938
pop ecx
test eax, eax
je 0x40d365
mov dword [eax], esi
jmp 0x40d367
xor eax, eax
mov dword [esi], eax
xor edi, edi
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], edi
lea esi, [ebx + 0x2d8]
push 4
mov byte [ebp - 4], 0x17
mov dword [ebp - 0x13c], esi
call fcn.0042a938
pop ecx
cmp eax, edi
je 0x40d394
mov dword [eax], esi
jmp 0x40d396
xor eax, eax
mov dword [esi], eax
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], edi
push 4
mov byte [ebp - 4], 0x19
lea esi, [ebx + 0x2f0]
call fcn.0042a938
pop ecx
cmp eax, edi
je 0x40d3bb
mov dword [eax], esi
jmp 0x40d3bd
xor eax, eax
mov dword [esi], eax
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], edi
lea esi, [ebx + 0x30c]
mov dword [ebp - 0x124], esi
call fcn.00403180
lea esi, [ebx + 0x328]
mov dword [ebp - 0x144], esi
call fcn.00403180
lea esi, [ebx + 0x344]
mov dword [ebp - 0x140], esi
call fcn.00403180
lea esi, [ebx + 0x360]
mov dword [ebp - 0x148], esi
call fcn.00403180
lea esi, [ebx + 0x37c]
mov dword [ebp - 0x134], esi
call fcn.00403180
mov byte [ebp - 4], 0x20
cmp dword [0x4558e0], 3
jne 0x40d42f
call fcn.0040e951
push ebx
call fcn.0040e9f7
mov ecx, dword [ebp - 0x12c]
or ebx, 0xffffffff
push ebx
push edi
lea eax, [ebp + 8]
push eax
call fcn.004034e3
mov ecx, dword [ebp - 0x124]
push ebx
push edi
lea eax, [ebp + 0x24]
push eax
call fcn.004034e3
call fcn.004295cd
cdq
push 0xa
pop ecx
idiv ecx
mov esi, edx
call fcn.004295cd
cdq
push 0xa
pop ecx
idiv ecx
cmp esi, edx
setl al
test al, al
je 0x40d49d
movzx eax, al
mov dword [ebp - 0x12c], eax
fild dword [ebp - 0x12c]
call fcn.004397d0
fstp dword [ebp - 0x12c]
fld dword [ebp - 0x12c]
jmp 0x40d4b0
fldz
call fcn.004396a0
fstp dword [ebp - 0x12c]
fld dword [ebp - 0x12c]
call fcn.004398c0
cmp eax, edi
je 0x40d4c3
call fcn.004096ab
call fcn.00409704
mov ecx, dword [ebp - 0x144]
push ebx
push edi
lea eax, [ebp + 0x40]
push eax
call fcn.004034e3
mov ecx, dword [ebp - 0x140]
push ebx
push edi
lea eax, [ebp + 0x5c]
push eax
call fcn.004034e3
call fcn.004295cd
cdq
push 0x14
pop ecx
idiv ecx
mov esi, edx
inc esi
call fcn.004295cd
cdq
idiv esi
cmp edx, esi
jg 0x40d508
mov eax, esi
cdq
idiv esi
cmp edx, edi
je 0x40d50d
call fcn.0040974d
mov ecx, dword [ebp - 0x148]
push ebx
push edi
lea eax, [ebp + 0x78]
push eax
call fcn.004034e3
mov ecx, dword [ebp - 0x134]
push ebx
push edi
lea eax, [ebp + 0x94]
push eax
call fcn.004034e3
mov ecx, dword [ebp - 0x120]
push ebx
push edi
lea eax, [ebp + 0xb0]
push eax
call fcn.004034e3
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x120], esp
push dword [ebp - 0x124]
call fcn.004031b5
sub esp, 0x1c
mov byte [ebp - 4], 0x21
mov ecx, esp
mov dword [ebp - 0x134], esp
push dword [ebp - 0x148]
call fcn.004031b5
sub esp, 0x1c
mov byte [ebp - 4], 0x22
mov ecx, esp
mov dword [ebp - 0x12c], esp
push dword [ebp - 0x140]
call fcn.004031b5
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x140], esp
push dword [ebp - 0x144]
mov byte [ebp - 4], 0x23
call fcn.004031b5
mov ebx, dword [ebp - 0x128]
mov byte [ebp - 4], 0x20
call fcn.00402184
call dword [sym.imp.KERNEL32.dll_GetTickCount]
dec eax
dec eax
je 0x40d5cc
dec eax
dec eax
je 0x40d5cc
sub eax, 4
jne 0x40d5dc
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
call fcn.004097b7
call fcn.00409800
mov esi, dword [ebp - 0x11c]
call fcn.0040eca6
call fcn.0040ecf8
call fcn.0040ed99
xor ebx, ebx
push 0x103
lea eax, [ebp - 0x117]
push ebx
push eax
mov byte [ebp - 0x118], bl
call fcn.00431920
add esp, 0xc
push 0x104
lea eax, [ebp - 0x118]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
jne 0x40d6a3
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x184]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x128], esp
push 0x21
push str._WRUH
call fcn.004081ed
lea edi, [ebp - 0x23c]
call fcn.00427366
mov byte [ebp - 4], 0x24
call fcn.00427666
mov byte [ebp - 4], 0x25
cmp dword [eax + 0x18], 0x10
jb 0x40d66d
mov eax, dword [eax + 4]
jmp 0x40d670
add eax, 4
mov ebx, dword [ebp - 0x11c]
push eax
push 1
call fcn.0040eded
add esp, 0xc
push 0
push 1
lea ecx, [ebp - 0x184]
call fcn.004035bd
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x20
call fcn.00404654
xor ebx, ebx
jmp 0x40d6b5
mov ecx, dword [ebp - 0x14c]
lea eax, [ebp - 0x118]
push eax
call fcn.00403575
push dword [ebp - 0x11c]
call fcn.0040eed4
push dword [ebp - 0x11c]
call fcn.0040f0eb
cmp eax, ebx
jge 0x40d743
lea eax, [ebp - 0x184]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x128], esp
push 0x17
push 0x448740
call fcn.004081ed
lea edi, [ebp - 0x23c]
call fcn.00427366
mov byte [ebp - 4], 0x26
call fcn.004273d9
mov byte [ebp - 4], 0x27
cmp dword [eax + 0x18], 0x10
jb 0x40d710
mov eax, dword [eax + 4]
jmp 0x40d713
add eax, 4
mov ebx, dword [ebp - 0x11c]
push eax
push 1
call fcn.0040eded
pop ecx
pop ecx
push 0
push 1
lea ecx, [ebp - 0x184]
call fcn.004035bd
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x20
call fcn.00404654
xor ebx, ebx
push dword [ebp - 0x11c]
call fcn.0040f1ec
push dword [ebp - 0x11c]
call fcn.004102b3
mov ecx, dword [ebp - 0x11c]
call fcn.00410a0b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
push ebx
shr esi, 0x18
call fcn.0042a8e7
imul eax, eax, 0x63
pop ecx
cmp esi, eax
jbe 0x40d78c
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoA]
xor eax, eax
inc eax
jmp 0x40d78e
xor eax, eax
dec eax
jne 0x40d79b
call fcn.00409859
call fcn.004098de
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x128], esp
push 0x4445ef
call fcn.00403193
lea eax, [ebp - 0x184]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 0x28
mov esi, esp
mov dword [ebp - 0x120], esp
push 0x45
push 0x448758
call fcn.004081ed
lea edi, [ebp - 0x23c]
call fcn.00427366
mov byte [ebp - 4], 0x29
call fcn.004274a1
mov byte [ebp - 4], 0x2a
cmp dword [eax + 0x18], 0x10
jb 0x40d7f6
mov eax, dword [eax + 4]
jmp 0x40d7f9
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x120], esp
push eax
call fcn.00403193
push closesocket
push dword [ebp - 0x11c]
mov byte [ebp - 4], 0x2c
call fcn.00410d6f
push ebx
and eax, 0x80004005
push 1
lea ecx, [ebp - 0x184]
mov dword [ebp - 0x124], eax
call fcn.004035bd
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x20
call fcn.00404654
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x128], esp
push 0x4445ef
call fcn.00403193
lea eax, [ebp - 0x184]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 0x2d
mov esi, esp
mov dword [ebp - 0x120], esp
push 0x31
push str.SOFT94
call fcn.004081ed
lea edi, [ebp - 0x23c]
call fcn.00427366
mov byte [ebp - 4], 0x2e
call fcn.00427666
mov byte [ebp - 4], 0x2f
cmp dword [eax + 0x18], 0x10
jb 0x40d8a1
mov eax, dword [eax + 4]
jmp 0x40d8a4
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x120], esp
push eax
call fcn.00403193
push closesocket
push dword [ebp - 0x11c]
mov byte [ebp - 4], 0x31
call fcn.00410d6f
and dword [ebp - 0x124], eax
push ebx
push 1
lea ecx, [ebp - 0x184]
call fcn.004035bd
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x20
call fcn.00404654
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x128], esp
push 0x4445ef
call fcn.00403193
lea eax, [ebp - 0x184]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 0x32
mov esi, esp
mov dword [ebp - 0x120], esp
push 0x45
push str.SOFTWA_0
call fcn.004081ed
lea edi, [ebp - 0x23c]
call fcn.00427366
mov byte [ebp - 4], 0x33
call fcn.00427666
mov byte [ebp - 4], 0x34
cmp dword [eax + 0x18], 0x10
jb 0x40d947
mov eax, dword [eax + 4]
jmp 0x40d94a
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x120], esp
push eax
call fcn.00403193
push closesocket
push dword [ebp - 0x11c]
mov byte [ebp - 4], 0x36
call fcn.00410d6f
and dword [ebp - 0x124], eax
push ebx
push 1
lea ecx, [ebp - 0x184]
call fcn.004035bd
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x20
call fcn.00404654
call dword [sym.imp.KERNEL32.dll_GetTickCount]
dec eax
dec eax
je 0x40d9a5
dec eax
dec eax
je 0x40d9a5
sub eax, 4
jne 0x40d9b5
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
call fcn.0041f338
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x128], esp
push 0x4445ef
call fcn.00403193
lea eax, [ebp - 0x184]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 0x37
mov esi, esp
mov dword [ebp - 0x120], esp
push 0x31
push str.___OG
call fcn.004081ed
lea edi, [ebp - 0x23c]
call fcn.00427366
mov byte [ebp - 4], 0x38
call fcn.004273d9
mov byte [ebp - 4], 0x39
cmp dword [eax + 0x18], 0x10
jb 0x40da10
mov eax, dword [eax + 4]
jmp 0x40da13
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x120], esp
push eax
call fcn.00403193
push closesocket
push dword [ebp - 0x11c]
mov byte [ebp - 4], 0x3b
call fcn.00410d6f
and dword [ebp - 0x124], eax
push ebx
push 1
lea ecx, [ebp - 0x184]
call fcn.004035bd
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x20
call fcn.00404654
push 1
lea eax, [ebp - 0x168]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x128], esp
push 4
push 0x448854
call fcn.004081ed
lea edi, [ebp - 0x1e4]
call fcn.00427366
mov byte [ebp - 4], 0x3c
call fcn.00427546
mov byte [ebp - 4], 0x3d
cmp dword [eax + 0x18], 0x10
jb 0x40da9e
mov eax, dword [eax + 4]
jmp 0x40daa1
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x128], esp
push eax
call fcn.00403193
lea eax, [ebp - 0x184]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 0x3e
mov esi, esp
mov dword [ebp - 0x120], esp
push 0x38
push 0x44885c
call fcn.004081ed
lea edi, [ebp - 0x23c]
call fcn.00427366
mov byte [ebp - 4], 0x3f
call fcn.004273d9
mov byte [ebp - 4], 0x40
cmp dword [eax + 0x18], 0x10
jb 0x40daf7
mov eax, dword [eax + 4]
jmp 0x40dafa
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x120], esp
push eax
call fcn.00403193
push closesocket
push dword [ebp - 0x11c]
mov byte [ebp - 4], 0x42
call fcn.00410d6f
and dword [ebp - 0x124], eax
push ebx
push 1
lea ecx, [ebp - 0x184]
call fcn.004035bd
lea esi, [ebp - 0x23c]
call fcn.00404654
push ebx
push 1
lea ecx, [ebp - 0x168]
call fcn.004035bd
lea esi, [ebp - 0x1e4]
mov byte [ebp - 4], 0x20
call fcn.00404654
push 1
lea eax, [ebp - 0x184]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x128], esp
push 3
push 0x448898
call fcn.004081ed
lea edi, [ebp - 0x23c]
call fcn.00427366
mov byte [ebp - 4], 0x43
call fcn.004274a1
mov byte [ebp - 4], 0x44
cmp dword [eax + 0x18], 0x10
jb 0x40db9e
mov eax, dword [eax + 4]
jmp 0x40dba1
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x128], esp
push eax
call fcn.00403193
lea eax, [ebp - 0x168]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 0x45
mov esi, esp
mov dword [ebp - 0x120], esp
push 0x38
push str.SOFT_6_2___
call fcn.004081ed
lea edi, [ebp - 0x1e4]
call fcn.00427366
mov byte [ebp - 4], 0x46
call fcn.00427666
mov byte [ebp - 4], 0x47
cmp dword [eax + 0x18], 0x10
jb 0x40dbf7
mov eax, dword [eax + 4]
jmp 0x40dbfa
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x120], esp
push eax
call fcn.00403193
push closesocket
push dword [ebp - 0x11c]
mov byte [ebp - 4], 0x49
call fcn.00410d6f
and dword [ebp - 0x124], eax
push ebx
push 1
lea ecx, [ebp - 0x168]
call fcn.004035bd
lea esi, [ebp - 0x1e4]
call fcn.00404654
push ebx
push 1
lea ecx, [ebp - 0x184]
call fcn.004035bd
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x20
call fcn.00404654
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x128], esp
push 0x4445ef
call fcn.00403193
lea eax, [ebp - 0x168]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 0x4a
mov esi, esp
mov dword [ebp - 0x120], esp
push 0x4f
push str..DEFAUL:_
call fcn.004081ed
lea edi, [ebp - 0x1e4]
call fcn.00427366
push eax
mov byte [ebp - 4], 0x4b
call fcn.00427738
mov byte [ebp - 4], 0x4c
cmp dword [eax + 0x18], 0x10
jb 0x40dcb7
mov eax, dword [eax + 4]
jmp 0x40dcba
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x120], esp
push eax
call fcn.00403193
push reloc.WS2_32.dll_closesocket
push dword [ebp - 0x11c]
mov byte [ebp - 4], 0x4e
call fcn.00410d6f
and dword [ebp - 0x124], eax
push ebx
push 1
lea ecx, [ebp - 0x168]
call fcn.004035bd
lea esi, [ebp - 0x1e4]
call fcn.00404654
push ebx
call fcn.0042a8e7
pop ecx
push ebx
sub esp, 0x1c
mov dword [ebp - 4], 0x20
mov ecx, esp
mov dword [ebp - 0x128], esp
push 0x4445ef
call fcn.00403193
lea eax, [ebp - 0x168]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 0x51
mov esi, esp
mov dword [ebp - 0x120], esp
push 0x3b
push 0x448928
call fcn.004081ed
lea edi, [ebp - 0x1e4]
call fcn.00427366
mov byte [ebp - 4], 0x52
call fcn.004274a1
mov byte [ebp - 4], 0x53
cmp dword [eax + 0x18], 0x10
jb 0x40dd67
mov eax, dword [eax + 4]
jmp 0x40dd6a
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x120], esp
push eax
call fcn.00403193
push reloc.WS2_32.dll_closesocket
push dword [ebp - 0x11c]
mov byte [ebp - 4], 0x55
call fcn.00410d6f
and dword [ebp - 0x124], eax
push ebx
push 1
lea ecx, [ebp - 0x168]
call fcn.004035bd
lea esi, [ebp - 0x1e4]
mov byte [ebp - 4], 0x20
call fcn.00404654
cmp dword [ebp - 0x124], ebx
jge 0x40dfb9
lea eax, [ebp - 0x168]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x128], esp
push 0x34
push 0x448964
call fcn.004081ed
lea edi, [ebp - 0x1e4]
call fcn.00427366
mov byte [ebp - 4], 0x56
call fcn.00427546
mov byte [ebp - 4], 0x57
cmp dword [eax + 0x18], 0x10
jb 0x40ddff
mov eax, dword [eax + 4]
jmp 0x40de02
add eax, 4
mov ebx, dword [ebp - 0x11c]
push eax
push 1
call fcn.0040eded
pop ecx
pop ecx
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x168]
call fcn.004035bd
lea esi, [ebp - 0x1e4]
mov byte [ebp - 4], 0x20
call fcn.00404654
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x128], esp
push dword [ebp - 0x14c]
call fcn.004031b5
lea eax, [ebp - 0x184]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 0x58
mov esi, esp
mov dword [ebp - 0x120], esp
push 0xb
push 0x44899c
call fcn.004081ed
lea edi, [ebp - 0x23c]
call fcn.00427366
push eax
mov byte [ebp - 4], 0x59
call fcn.00427738
mov byte [ebp - 4], 0x5a
cmp dword [eax + 0x18], 0x10
jb 0x40de8d
mov eax, dword [eax + 4]
jmp 0x40de90
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x120], esp
push eax
call fcn.00403193
lea eax, [ebp - 0x168]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 0x5b
mov esi, esp
mov dword [ebp - 0x134], esp
push 0x31
push str.___OG
call fcn.004081ed
lea edi, [ebp - 0x1e4]
call fcn.00427366
mov byte [ebp - 4], 0x5c
call fcn.004273d9
mov byte [ebp - 4], 0x5d
cmp dword [eax + 0x18], 0x10
jb 0x40dee6
mov eax, dword [eax + 4]
jmp 0x40dee9
add eax, 4
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x134], esp
push eax
call fcn.00403193
push dword [ebp - 0x11c]
mov byte [ebp - 4], 0x61
call fcn.00417d4d
push ebx
push 1
lea ecx, [ebp - 0x168]
mov edi, eax
call fcn.004035bd
lea esi, [ebp - 0x1e4]
call fcn.00404654
push ebx
push 1
lea ecx, [ebp - 0x184]
call fcn.004035bd
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x20
call fcn.00404654
cmp edi, ebx
jge 0x40dfb7
lea eax, [ebp - 0x168]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x128], esp
push 0x26
push 0x4489a8
call fcn.004081ed
lea edi, [ebp - 0x1e4]
call fcn.00427366
mov byte [ebp - 4], 0x62
call fcn.004273d9
mov byte [ebp - 4], 0x63
cmp dword [eax + 0x18], 0x10
jb 0x40df86
mov eax, dword [eax + 4]
jmp 0x40df89
add eax, 4
mov ebx, dword [ebp - 0x11c]
push eax
push 1
call fcn.0040eded
pop ecx
pop ecx
push 0
push 1
lea ecx, [ebp - 0x168]
call fcn.004035bd
lea esi, [ebp - 0x1e4]
mov byte [ebp - 4], 0x20
call fcn.00404654
xor ebx, ebx
mov ecx, dword [ebp - 0x13c]
mov eax, dword [ecx + 0x10]
sub eax, dword [ecx + 0xc]
mov ecx, 0x8c
cdq
idiv ecx
test eax, eax
jne 0x40e045
lea eax, [ebp - 0x168]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x13c], esp
push 0x21
push 0x4489d0
call fcn.004081ed
lea edi, [ebp - 0x1e4]
call fcn.00427366
mov byte [ebp - 4], 0x64
call fcn.00427666
mov byte [ebp - 4], 0x65
cmp dword [eax + 0x18], 0x10
jb 0x40e012
mov eax, dword [eax + 4]
jmp 0x40e015
add eax, 4
mov ebx, dword [ebp - 0x11c]
push eax
push 1
call fcn.0040eded
pop ecx
pop ecx
push 0
push 1
lea ecx, [ebp - 0x168]
call fcn.004035bd
lea esi, [ebp - 0x1e4]
mov byte [ebp - 4], 0x20
call fcn.00404654
xor ebx, ebx
mov ecx, dword [ebp - 0x138]
push 0xffffffffffffffff
push ebx
push dword [ebp - 0x130]
call fcn.004034e3
mov eax, dword [ebp - 0x11c]
mov eax, dword [eax + 0x274]
cmp eax, ebx
je 0x40e08e
lea edi, [eax - 1]
mov eax, dword [ebp - 0x138]
call fcn.004082f1
cmp byte [eax], 0x5c
je 0x40e08e
mov edi, dword [ebp - 0x138]
xor ebx, ebx
push 0x5c
inc ebx
call fcn.004085fd
xor ebx, ebx
lea eax, [ebp - 0x168]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x130], esp
push 8
push 0x4489f4
call fcn.004081ed
lea edi, [ebp - 0x1e4]
call fcn.00427366
push eax
mov byte [ebp - 4], 0x66
call fcn.00427738
mov byte [ebp - 4], 0x67
cmp dword [eax + 0x18], 0x10
jb 0x40e0d0
mov eax, dword [eax + 4]
jmp 0x40e0d3
add eax, 4
mov edi, dword [ebp - 0x138]
push eax
push edi
call fcn.004082ab
push ebx
push 1
lea ecx, [ebp - 0x168]
call fcn.004035bd
lea esi, [ebp - 0x1e4]
mov byte [ebp - 4], 0x20
call fcn.00404654
push ebx
call fcn.0042a8e7
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x130], esp
push edi
call fcn.004031b5
call fcn.0040f0a8
cmp eax, ebx
jge 0x40e1d0
cmp dword [edi + 0x18], 0x10
jb 0x40e12c
mov eax, dword [edi + 4]
jmp 0x40e12f
lea eax, [edi + 4]
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
je 0x40e154
cmp dword [edi + 0x18], 0x10
jb 0x40e146
mov edi, dword [edi + 4]
jmp 0x40e149
add edi, 4
push 6
push edi
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
jmp 0x40e1d0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x168]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x130], esp
push 0x24
push 0x448a00
call fcn.004081ed
lea edi, [ebp - 0x1e4]
call fcn.00427366
mov byte [ebp - 4], 0x68
call fcn.00427546
mov byte [ebp - 4], 0x69
cmp dword [eax + 0x18], 0x10
jb 0x40e19c
mov eax, dword [eax + 4]
jmp 0x40e19f
add eax, 4
mov ebx, dword [ebp - 0x11c]
push eax
push 1
call fcn.0040eded
add esp, 0xc
push 0
push 1
lea ecx, [ebp - 0x168]
call fcn.004035bd
lea esi, [ebp - 0x1e4]
mov byte [ebp - 4], 0x20
call fcn.00404654
xor ebx, ebx
xor esi, esi
inc esi
push esi
push dword [ebp + 0xcc]
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x130], esp
push dword [ebp - 0x144]
call fcn.004031b5
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x13c], esp
push dword [ebp - 0x18c]
mov byte [ebp - 4], 0x6a
call fcn.004031b5
mov edi, dword [ebp - 0x188]
mov byte [ebp - 4], 0x20
call fcn.0042633d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
push ebx
shr edi, 0x18
call fcn.0042a8e7
imul eax, eax, 0x63
pop ecx
cmp edi, eax
jbe 0x40e241
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegNotifyChangeKeyValue]
mov eax, esi
jmp 0x40e243
xor eax, eax
dec eax
jne 0x40e250
call fcn.0040c095
call fcn.004099d6
push ebx
push esi
lea ecx, [ebp + 8]
call fcn.004035bd
push ebx
push esi
lea ecx, [ebp + 0x24]
call fcn.004035bd
push ebx
push esi
lea ecx, [ebp + 0x40]
call fcn.004035bd
push ebx
push esi
lea ecx, [ebp + 0x5c]
call fcn.004035bd
push ebx
push esi
lea ecx, [ebp + 0x78]
call fcn.004035bd
push ebx
push esi
lea ecx, [ebp + 0x94]
call fcn.004035bd
push ebx
push esi
lea ecx, [ebp + 0xb0]
call fcn.004035bd
mov eax, dword [ebp - 0x11c]
call fcn.0042bba9
ret 0xc8