Function at 0x40d6e0
Capabilities:
Copy file
Delete file

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
mov eax, 0x1ca8
call fcn.00413130
mov dword [esp + 0x1c94], 0
mov dword [esp + 0x1c90], 0
mov dword [esp + 0x1c8c], 0
mov dword [esp + 0x1c88], 0
mov dword [esp + 0x1c84], 0
mov dword [esp + 0x1c80], 0
mov dword [esp + 0x1c7c], 0
mov dword [esp + 0x1c78], 0
mov dword [esp + 0x1c74], 0
mov dword [esp + 0x1c70], 0
mov dword [esp + 0x1c6c], 0
mov dword [esp + 0x1c68], 0
mov dword [esp + 0x1c64], 0
mov dword [esp + 0x1c60], 0
mov dword [esp + 0x1c5c], 0
mov dword [esp + 0x1c58], 0
mov dword [esp + 0x1c54], 0
mov dword [esp + 0x1c50], 0
mov dword [esp + 0x1c14], 0
lea esi, [esp + 0x1a0a]
mov dword [esp], esi
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea eax, [esp + 0x1800]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea eax, [esp + 0x15f6]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea edi, [esp + 0x13ec]
mov dword [esp], edi
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea ebx, [esp + 0x11e2]
mov dword [esp], ebx
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea eax, [esp + 0xfd8]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea eax, [esp + 0xdce]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea eax, [esp + 0xbc4]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea eax, [esp + 0x9ba]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea eax, [esp + 0x7b0]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea eax, [esp + 0x5a6]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea eax, [esp + 0x192]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00413910
lea eax, [esp + 0xca]
mov dword [esp], eax
mov dword [esp + 8], 0xc8
mov dword [esp + 4], 0
call fcn.00413910
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0
mov word [esp + 0x7c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0xffffffff
call fcn.0040d370
mov dword [esp + 0x1c9c], eax
mov dword [esp + 0x4c], 0x6ceb23b6
jmp 0x40da70
mov dword [esp + 0x4c], 0xcad90123
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x4c]
cmp eax, 0x79937962
jg 0x40db50
cmp eax, 0x876d13df
jg 0x40db60
cmp eax, 0x8045c9ac
jne 0x40da70
mov dword [esp], edi
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00403480
mov dword [esp], ebx
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00403480
mov dword [esp], edi
mov dword [esp + 4], 0x104
call fcn.00404720
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x15f6]
mov dword [esp + 8], eax
mov dword [esp], ebx
mov dword [esp + 4], 0x104
call fcn.00403670
mov dword [esp], edi
call fcn.00403a10
mov ecx, dword [esp + 0x64]
mov edx, 0x104
sub edx, ecx
lea ecx, [esp + ecx*2 + 0x11e2]
mov dword [esp + 0xc], eax
mov dword [esp + 8], edi
mov dword [esp + 4], edx
mov dword [esp], ecx
call fcn.00403670
mov dword [esp], ebx
mov dword [esp + 4], 0
call dword [0x46b848]
sub esp, 8
mov dword [esp + 0x1c8c], eax
mov dword [esp + 0x4c], 0xcad90123
jmp 0x40da70
cmp eax, 0x79937963
jne 0x40da70
jmp 0x40da5d
cmp eax, 0x8b6d421c
jg 0x40db77
cmp eax, 0x876d13e0
jne 0x40da70
jmp 0x40f3eb
cmp eax, 0x9470acbd
jg 0x40dba9
cmp eax, 0x8b6d421d
jne 0x40da70
mov eax, dword [esp + 0x1c94]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [esp + 0x4c], 0xc2fc9edc
jmp 0x40da70
cmp eax, 0x952380ca
jg 0x40dbc8
cmp eax, 0x9470acbe
jne 0x40da70
mov dword [esp + 0x4c], 0xec3ca58f
jmp 0x40da70
cmp eax, 0x9a2d1c86
jg 0x40dbdf
cmp eax, 0x952380cb
jne 0x40da70
jmp 0x40f377
cmp eax, 0x9cbb56bf
jg 0x40dd3a
cmp eax, 0x9a2d1c87
jne 0x40da70
mov dword [esp + 0x1c50], 0x3c
mov dword [esp + 0x1c54], 0x40
mov dword [esp + 0x1c58], 0
mov dword [esp + 0x1c5c], 0x4812fc
mov dword [esp + 0x1c68], 0
mov dword [esp + 0x1c70], 0
lea eax, [esp + 0x39c]
mov esi, eax
mov dword [esp], esi
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00403480
mov dword [esp], esi
mov dword [esp + 0xc], 3
mov dword [esp + 8], 0x481306
mov dword [esp + 4], 0x104
call fcn.00403670
mov dword [esp], ebx
call fcn.00403a10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
lea eax, [esp + 0x3a2]
mov dword [esp], eax
mov dword [esp + 4], 0x101
call fcn.00403670
mov eax, dword [0x41e154]
movzx eax, word [eax]
mov dword [esp + 0x6c], eax
mov ecx, dword [0x41e154]
movzx eax, word [ecx + eax*2 + 2]
mov dword [esp + 0x68], eax
mov ecx, dword [0x41e154]
mov edx, dword [esp + 0x6c]
lea esi, [ecx + edx*2 + 4]
add ecx, 2
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
lea eax, [esp + 0x1800]
mov dword [esp], eax
call fcn.00402de0
lea eax, [esp + 0xfd8]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
sub esp, 0x10
mov dword [esp + 0x1c90], eax
mov ecx, 0xcebf7681
test eax, eax
je 0x40dd2a
mov ecx, 0xdf885e64
mov dword [esp + 0x4c], ecx
lea esi, [esp + 0x1a0a]
jmp 0x40da70
cmp eax, 0xa0b91067
jg 0x40dd69
cmp eax, 0x9cbb56c0
jne 0x40da70
mov eax, 0x79937963
cmp dword [esp + 0x1c8c], 0
je 0x40dd60
mov eax, 0xc410a413
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0x712b95da
jg 0x40de73
cmp eax, 0x7081b93f
jg 0x40de83
cmp eax, 0x6f7b7def
jg 0x40de93
cmp eax, 0x6ceb23b5
jg 0x40deb8
cmp eax, 0x6152f17a
jg 0x40dee0
cmp eax, 0x5c0a99fe
jg 0x40df0b
cmp eax, 0x5ae52869
jg 0x40df2e
cmp eax, 0x47593ea1
jg 0x40df46
cmp eax, 0x3c6b43dd
jg 0x40df8f
cmp eax, 0x2a8645a8
jg 0x40e021
cmp eax, 0x2991577b
jg 0x40e079
cmp eax, 0x28a82be1
jg 0x40e089
cmp eax, 0x2301e305
jg 0x40e0b4
cmp eax, 0x1cd45b7c
jg 0x40e0d7
cmp eax, 0x39e3825
jg 0x40e0ef
cmp eax, 0xfb72e7e4
jg 0x40e107
cmp eax, 0xef870b9e
jg 0x40e18e
cmp eax, 0xec3ca58e
jg 0x40e1b9
cmp eax, 0xe72130d3
jg 0x40e1e1
cmp eax, 0xe42bac64
jg 0x40e229
cmp eax, 0xdf885e63
jg 0x40e33c
cmp eax, 0xa15c595f
jg 0x40e399
cmp eax, 0xa0b91068
jne 0x40da70
mov dword [esp + 0x4c], 0x9cbb56c0
jmp 0x40da70
cmp eax, 0x712b95db
jne 0x40da70
jmp 0x40f377
cmp eax, 0x7081b940
jne 0x40da70
jmp 0x40e0bf
cmp eax, 0x6f7b7df0
jne 0x40da70
mov eax, 0x7081b940
cmp dword [esp + 0x58], 6
jb 0x40deaf
mov eax, 0x3c6b43de
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0x6ceb23b6
jne 0x40da70
mov eax, 0x2301e306
cmp dword [esp + 0x1c9c], 0
js 0x40ded7
mov eax, 0x47593ea2
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0x6152f17b
jne 0x40da70
mov eax, dword [esp + 0x1c90]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_SetEvent]
sub esp, 4
mov dword [esp + 0x4c], 0xa913ca41
jmp 0x40da70
cmp eax, 0x5c0a99ff
jne 0x40da70
mov dword [esp + 0x1c98], 0
mov dword [esp + 0x4c], 0x876d13e0
jmp 0x40da70
cmp eax, 0x5ae5286a
jne 0x40da70
mov dword [esp + 0x4c], 0xa913ca41
jmp 0x40da70
cmp eax, 0x47593ea2
jne 0x40da70
lea eax, [esp + 0x7b0]
mov dword [esp], eax
mov dword [esp + 4], 0x104
call fcn.00403530
mov dword [esp + 0x70], eax
lea eax, [esp + 0x58]
mov dword [esp], eax
call fcn.0040c980
test eax, eax
mov eax, 0xfb72e7e5
jne 0x40df86
mov eax, 0x6f7b7df0
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0x3c6b43de
jne 0x40da70
lea eax, [esp + 0x5a6]
mov dword [esp + 8], eax
lea eax, [esp + 0x7b0]
mov dword [esp], eax
mov dword [esp + 0xc], 0
mov dword [esp + 4], 0x104
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
sub esp, 0x10
lea eax, [esp + 0x15f6]
mov dword [esp], eax
mov dword [esp + 4], 0x104
call fcn.00404140
lea eax, [esp + 0x15f6]
mov dword [esp], eax
call fcn.00403a10
mov dword [esp + 0x64], eax
mov dword [esp], 0
call fcn.0040f400
mov dword [esp + 0x48], eax
call fcn.00402580
imul eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.00413aa2
mov dword [esp + 0x4c], 0xe42bac65
jmp 0x40da70
cmp eax, 0x2a8645a9
jne 0x40da70
mov eax, dword [esp + 0x1c88]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
sub esp, 8
mov eax, dword [esp + 0x1c90]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
sub esp, 8
test eax, eax
mov eax, 0x1cd45b7d
jne 0x40e070
mov eax, 0xbbdde11c
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0x2991577c
jne 0x40da70
jmp 0x40f377
cmp eax, 0x28a82be2
jne 0x40da70
mov eax, dword [esp + 0x1c90]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [esp + 0x4c], 0x5c0a99ff
jmp 0x40da70
cmp eax, 0x2301e306
jne 0x40da70
mov dword [esp + 0x1c98], 0xffffffff
mov dword [esp + 0x4c], 0x876d13e0
jmp 0x40da70
cmp eax, 0x1cd45b7d
jne 0x40da70
mov dword [esp + 0x4c], 0x9470acbe
jmp 0x40da70
cmp eax, 0x39e3826
jne 0x40da70
mov dword [esp + 0x4c], 0x79937963
jmp 0x40da70
cmp eax, 0xfb72e7e5
jne 0x40da70
mov eax, dword [esp + 0x70]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x7b0]
mov dword [esp + 8], eax
lea eax, [esp + 0xfd8]
mov esi, eax
mov dword [esp], esi
mov dword [esp + 4], 0x104
call fcn.00403850
mov dword [esp + 0x5c], eax
mov word [esp + eax*2 + 0xfd0], 0
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
sub esp, 0x10
mov dword [esp + 0x1c90], eax
mov ecx, 0xa1b5e81f
test eax, eax
jne 0x40dd2a
mov ecx, 0x5c0a99ff
jmp 0x40dd2a
cmp eax, 0xef870b9f
jne 0x40da70
mov eax, dword [esp + 0x1c90]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [esp + 0x4c], 0xcbc75e2f
jmp 0x40da70
cmp eax, 0xec3ca58f
jne 0x40da70
cmp dword [esp + 0x1c90], 0
setne byte [esp + 0x1ca3]
mov dword [esp + 0x4c], 0xb5073998
jmp 0x40da70
cmp eax, 0xe72130d4
jne 0x40da70
lea eax, [esp + 0xdce]
mov dword [esp + 4], eax
lea eax, [esp + 0x5a6]
mov dword [esp], eax
mov dword [esp + 8], 1
call dword [sym.imp.KERNEL32.dll_CopyFileW]
sub esp, 0xc
test eax, eax
mov eax, 0xe42bac65
je 0x40e220
mov eax, 0x39e3826
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0xe42bac65
jne 0x40da70
lea eax, [esp + 0xfd8]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00403480
lea eax, [esp + 0xdce]
mov dword [esp], eax
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00403480
lea eax, [esp + 0xfd8]
mov dword [esp], eax
mov dword [esp + 4], 0x104
call fcn.00404720
lea eax, [esp + 0xfd8]
mov dword [esp], eax
call fcn.00403a10
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x15f6]
mov dword [esp + 8], eax
lea eax, [esp + 0xdce]
mov dword [esp], eax
mov dword [esp + 4], 0x104
call fcn.00403670
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x64]
mov edx, 0x104
sub edx, ecx
lea ecx, [esp + ecx*2 + 0xdce]
mov dword [esp + 0xc], eax
lea eax, [esp + 0xfd8]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov dword [esp], ecx
call fcn.00403670
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x50]
lea edx, [esp + eax*2 + 0xdce]
lea edx, [edx + ecx*2]
neg ecx
sub ecx, eax
add ecx, 0x104
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 0xc], 4
mov dword [esp + 8], str..exe
call fcn.00403670
mov dword [esp + 0x4c], 0xe72130d4
jmp 0x40da70
cmp eax, 0xdf885e64
jne 0x40da70
lea eax, [esp + 0x1800]
mov dword [esp + 0x1c60], eax
lea eax, [esp + 0x39c]
mov dword [esp + 0x1c64], eax
mov dword [esp + 0x1c6c], 0
lea eax, [esp + 0x1c50]
mov dword [esp], eax
call dword [0x46b850]
sub esp, 4
cmp eax, 1
mov eax, 0x952380cb
jne 0x40e390
mov eax, 0xa15c5960
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0xa1b5e81e
jg 0x40e441
cmp eax, 0xa15c5960
jne 0x40da70
mov eax, dword [esp + 0x1c88]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
sub esp, 8
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [0x46b84c]
sub esp, 0x10
lea eax, [esp + 0xbc4]
mov dword [esp + 0x1c60], eax
mov dword [esp + 0x1c64], 0
mov dword [esp + 0x1c6c], 1
lea eax, [esp + 0x1c50]
mov dword [esp], eax
call dword [0x46b850]
sub esp, 4
cmp eax, 1
mov eax, 0xbcdd56da
jne 0x40e438
mov eax, 0x2a8645a9
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0xa811a180
jg 0x40e473
cmp eax, 0xa1b5e81f
jne 0x40da70
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
mov eax, 0x5ae5286a
je 0x40e46a
mov eax, 0x28a82be2
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0xa913ca40
jg 0x40e4dd
cmp eax, 0xa811a181
jne 0x40da70
mov eax, dword [esp + 0x1c88]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
sub esp, 8
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [0x46b84c]
sub esp, 0x10
mov dword [esp + 0x54], 1
mov dword [esp + 0x4c], 0x9470acbe
jmp 0x40da70
cmp eax, 0xab798230
jg 0x40e50f
cmp eax, 0xa913ca41
jne 0x40da70
mov eax, dword [esp + 0x1c90]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_SetEvent]
sub esp, 4
mov dword [esp + 0x4c], 0xcf020a34
jmp 0x40da70
cmp eax, 0xb20cd6b1
jg 0x40e52e
cmp eax, 0xab798231
jne 0x40da70
mov dword [esp + 0x4c], 0xec3ca58f
jmp 0x40da70
cmp eax, 0xb5073997
jg 0x40e54d
cmp eax, 0xb20cd6b2
jne 0x40da70
mov dword [esp + 0x4c], 0x9470acbe
jmp 0x40da70
cmp eax, 0xbbdde11b
jg 0x40e57d
cmp eax, 0xb5073998
jne 0x40da70
mov al, byte [esp + 0x1ca3]
test al, al
mov eax, 0xef870b9f
jne 0x40e574
mov eax, 0xcbc75e2f
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0xbcdd56d9
jg 0x40e64d
cmp eax, 0xbbdde11c
jne 0x40da70
lea eax, [esp + 0x39c]
mov esi, eax
mov dword [esp], esi
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00403480
mov dword [esp], esi
mov dword [esp + 0xc], 6
mov dword [esp + 8], str._q__u
mov dword [esp + 4], 0x104
call fcn.00403670
mov dword [esp], ebx
call fcn.00403a10
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
lea eax, [esp + 0x3a8]
mov dword [esp], eax
mov dword [esp + 4], 0xfe
call fcn.00403670
lea eax, [esp + 0x1800]
mov dword [esp + 0x1c60], eax
mov dword [esp + 0x1c64], esi
mov dword [esp + 0x1c6c], 0
lea eax, [esp + 0x1c50]
mov dword [esp], eax
call dword [0x46b850]
sub esp, 4
cmp eax, 1
mov eax, 0xb20cd6b2
jne 0x40e63d
mov eax, 0xa811a181
mov dword [esp + 0x4c], eax
lea esi, [esp + 0x1a0a]
jmp 0x40da70
cmp eax, 0xc11d88c8
jg 0x40e664
cmp eax, 0xbcdd56da
jne 0x40da70
jmp 0x40f377
cmp eax, 0xc2fc9edb
jg 0x40e6ac
cmp eax, 0xc11d88c9
jne 0x40da70
mov eax, dword [esp + 0x1c94]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
sub esp, 8
mov dword [esp + 0x60], eax
mov ecx, 0xcaa2e0f5
test eax, eax
jne 0x40e6a3
mov ecx, 0x9a2d1c87
mov dword [esp + 0x4c], ecx
jmp 0x40da70
cmp eax, 0xc410a412
jg 0x40e6e7
cmp eax, 0xc2fc9edc
jne 0x40da70
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
sub esp, 4
call fcn.0040d6c0
mov eax, dword [esp + 0x54]
mov dword [esp + 0x1c98], eax
mov dword [esp + 0x4c], 0x876d13e0
jmp 0x40da70
cmp eax, 0xcaa2e0f4
jg 0x40f26f
cmp eax, 0xc410a413
jne 0x40da70
mov eax, dword [0x46b67c]
mov dword [esp + 0x48], eax
mov ecx, dword [0x46b6a4]
mov edx, dword [esp + 0x1c8c]
lea eax, [esp + 0x1c4c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 1
call dword [0x46b83c]
sub esp, 0x18
mov eax, dword [0x46b68c]
mov dword [esp + 0x48], eax
mov ecx, dword [0x46b6a4]
mov edx, dword [esp + 0x1c8c]
lea eax, [esp + 0x1c48]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
call dword [0x46b83c]
sub esp, 0x18
mov eax, dword [0x46b690]
mov dword [esp + 0x48], eax
mov ecx, dword [0x46b6a4]
mov edx, dword [esp + 0x1c8c]
lea eax, [esp + 0x1c44]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
call dword [0x46b83c]
sub esp, 0x18
mov eax, dword [0x46b67c]
mov dword [esp + 0x48], eax
mov ecx, dword [0x46b6a0]
mov edx, dword [esp + 0x1c8c]
lea eax, [esp + 0x1c40]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
call dword [0x46b83c]
sub esp, 0x18
mov eax, dword [0x46b670]
mov dword [esp + 0x48], eax
mov ecx, dword [0x46b6b0]
mov edx, dword [esp + 0x1c8c]
lea eax, [esp + 0x1c3c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
call dword [0x46b83c]
sub esp, 0x18
mov eax, dword [0x46b67c]
mov dword [esp + 0x48], eax
mov ecx, dword [0x46b6b4]
mov edx, dword [esp + 0x1c8c]
lea eax, [esp + 0x1c38]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 0
call dword [0x46b83c]
sub esp, 0x18
mov eax, dword [0x46b6c0]
mov dword [esp + 0x48], eax
mov ecx, dword [0x46b6b8]
mov edx, dword [esp + 0x1c8c]
lea eax, [esp + 0x1c34]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
call dword [0x46b83c]
sub esp, 0x18
mov eax, dword [0x46b6bc]
mov dword [esp + 0x48], eax
mov ecx, dword [0x46b6b8]
mov edx, dword [esp + 0x1c8c]
lea eax, [esp + 0x1c30]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 0
call dword [0x46b83c]
sub esp, 0x18
mov eax, dword [0x46b6bc]
mov dword [esp + 0x48], eax
mov ecx, dword [0x46b6a4]
mov edx, dword [esp + 0x1c8c]
lea eax, [esp + 0x1c2c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 1
call dword [0x46b83c]
sub esp, 0x18
mov eax, dword [esp + 0x1c8c]
mov dword [esp], eax
call dword [0x46b838]
sub esp, 4
call fcn.00413a7f
mov ecx, eax
xor ecx, 0xfffffff0
and ecx, eax
lea eax, [esp + 0xca]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.00414434
lea eax, [esp + 0xca]
mov dword [esp], eax
call fcn.00403a10
mov dword [esp + 0x70], eax
lea ecx, [eax + 1]
mov dword [esp + 0x70], ecx
mov word [esp + eax*2 + 0xca], 0x2e
mov eax, dword [esp + 0x70]
lea eax, [esp + eax*2 + 0xca]
mov dword [esp + 0x48], eax
call fcn.00413a7f
mov ecx, eax
xor ecx, 0xfffffffe
and ecx, eax
mov eax, dword [esp + 0x48]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.00414434
lea eax, [esp + 0xca]
mov dword [esp], eax
call fcn.00403a10
mov dword [esp + 0x70], eax
lea ecx, [eax + 1]
mov dword [esp + 0x70], ecx
mov word [esp + eax*2 + 0xca], 0x2e
mov eax, dword [esp + 0x70]
lea eax, [esp + eax*2 + 0xca]
mov dword [esp + 0x48], eax
call fcn.00413a7f
and eax, 5
mov ecx, dword [esp + 0x48]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 8], 0xa
call fcn.00414434
lea eax, [esp + 0xca]
mov dword [esp], eax
call fcn.00403a10
mov dword [esp + 0x70], eax
lea ecx, [eax + 1]
mov dword [esp + 0x70], ecx
mov word [esp + eax*2 + 0xca], 0x2e
mov eax, dword [esp + 0x70]
lea eax, [esp + eax*2 + 0xca]
mov dword [esp + 0x48], eax
call fcn.00413a7f
and eax, 0xc
mov ecx, dword [esp + 0x48]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 8], 0xa
call fcn.00414434
lea eax, [esp + 0xca]
mov dword [esp], eax
call fcn.00403a10
mov dword [esp + 0x70], eax
mov eax, dword [0x41e134]
movzx eax, byte [eax]
mov dword [esp + 0x6c], eax
mov ecx, dword [0x41e134]
movzx eax, byte [eax + ecx + 1]
mov dword [esp + 0x68], eax
mov ecx, dword [0x41e134]
mov edx, dword [esp + 0x6c]
lea edx, [ecx + edx + 2]
inc ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
lea eax, [esp + 0x90]
mov dword [esp], eax
mov dword [esp + 4], 0x10
call fcn.004028b0
mov eax, dword [0x46b698]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b834]
sub esp, 8
mov dword [esp + 0x1c28], eax
mov eax, dword [0x46b6c8]
mov ecx, dword [0x46b678]
mov edx, dword [esp + 0x1c8c]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0xc], 0
call dword [0x46b82c]
sub esp, 0x10
mov eax, dword [0x46b694]
mov ecx, dword [esp + 0x1c8c]
lea edx, [esp + 0xca]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b828]
sub esp, 0xc
mov eax, dword [0x46b67c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b828]
sub esp, 0xc
mov eax, dword [0x46b674]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 1
call dword [0x46b824]
sub esp, 0xc
mov eax, dword [0x46b6c4]
mov ecx, dword [esp + 0x1c8c]
lea edx, [esp + 0x90]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 0xc], 0x10
call dword [0x46b820]
sub esp, 0x10
mov eax, dword [0x46b69c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b834]
sub esp, 8
mov dword [esp + 0x1c24], eax
mov eax, dword [esp + 0x1c40]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b81c]
sub esp, 8
mov eax, dword [esp + 0x1c40]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b818]
sub esp, 8
mov eax, dword [esp + 0x1c38]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b81c]
sub esp, 8
mov eax, dword [esp + 0x1c38]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b818]
sub esp, 8
mov eax, dword [esp + 0x1c24]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b830]
sub esp, 8
mov eax, dword [esp + 0x1c48]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b81c]
sub esp, 8
mov eax, dword [esp + 0x1c48]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b818]
sub esp, 8
mov eax, dword [esp + 0x1c44]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b81c]
sub esp, 8
mov eax, dword [esp + 0x1c44]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b818]
sub esp, 8
mov eax, dword [esp + 0x1c4c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b81c]
sub esp, 8
mov eax, dword [esp + 0x1c2c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b81c]
sub esp, 8
call fcn.00413a7f
mov ecx, eax
mov edx, 0xcccccccd
mul edx
shr edx, 2
lea eax, [edx + edx*4]
sub ecx, eax
mov eax, dword [ecx*4 + 0x41e138]
mov dword [esp + 0x1c14], eax
movzx eax, word [eax]
mov dword [esp + 0x6c], eax
not eax
mov ecx, dword [esp + 0x1c14]
add eax, eax
neg eax
movzx eax, word [ecx + eax]
mov dword [esp + 0x44], eax
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x1c14]
mov edx, dword [esp + 0x6c]
lea eax, [ecx + edx*2 + 4]
mov dword [esp + 0x48], eax
add ecx, 2
mov eax, dword [esp + 0x44]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], esi
call fcn.00402de0
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
lea eax, [esp + 0xbc4]
mov dword [esp], eax
mov dword [esp + 4], 0x104
call fcn.00403670
mov eax, dword [esp + 0x6c]
mov ecx, 0x104
sub ecx, eax
lea eax, [esp + eax*2 + 0xbc4]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 0xc], 4
mov dword [esp + 8], str..exe
call fcn.00403670
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
lea esi, [esp + 0x9ba]
mov dword [esp], esi
mov dword [esp + 4], 0x104
call fcn.00403670
mov eax, dword [esp + 0x6c]
mov ecx, 0x104
sub ecx, eax
lea eax, [esp + eax*2 + 0x9ba]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 0xc], 6
mov dword [esp + 8], str.32.exe
call fcn.00403670
mov eax, dword [0x41e14c]
movzx eax, byte [eax]
mov dword [esp + 0x6c], eax
mov ecx, dword [0x41e14c]
movzx eax, byte [eax + ecx + 1]
mov dword [esp + 0x68], eax
mov ecx, dword [0x41e14c]
mov edx, dword [esp + 0x6c]
lea edx, [ecx + edx + 2]
inc ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
lea esi, [esp + 0x80]
mov dword [esp], esi
mov dword [esp + 4], 0x10
call fcn.004028b0
mov eax, dword [0x46b6a4]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b834]
sub esp, 8
mov dword [esp + 0x1c20], eax
mov eax, dword [0x46b67c]
mov ecx, dword [esp + 0x1c8c]
lea edx, [esp + 0xbc4]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b828]
sub esp, 0xc
mov eax, dword [0x46b684]
mov ecx, dword [esp + 0x1c8c]
lea edx, [esp + 0x9ba]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b828]
sub esp, 0xc
mov eax, dword [0x46b680]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], str.Microsoft
call dword [0x46b828]
sub esp, 0xc
mov eax, dword [0x46b6bc]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 8], esi
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 0xc], 0x10
call dword [0x46b820]
sub esp, 0x10
mov eax, dword [0x46b6a8]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b834]
sub esp, 8
mov dword [esp + 0x1c1c], eax
mov eax, dword [0x46b67c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0x4812f8
call dword [0x46b828]
sub esp, 0xc
mov eax, dword [esp + 0x1c1c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b830]
sub esp, 8
mov eax, dword [0x41e150]
movzx eax, word [eax]
mov dword [esp + 0x6c], eax
mov ecx, dword [0x41e150]
movzx eax, word [ecx + eax*2 + 2]
mov dword [esp + 0x68], eax
mov ecx, dword [0x41e150]
mov edx, dword [esp + 0x6c]
lea esi, [ecx + edx*2 + 4]
add ecx, 2
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
lea eax, [esp + 0xa0]
mov esi, eax
mov dword [esp], esi
call fcn.00402de0
mov eax, dword [0x46b6ac]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b834]
sub esp, 8
mov dword [esp + 0x1c18], eax
mov eax, dword [0x46b67c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 8], esi
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b828]
sub esp, 0xc
mov eax, dword [0x46b688]
mov ecx, dword [esp + 0x1c8c]
lea edx, [esp + 0xdce]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b828]
sub esp, 0xc
mov eax, dword [esp + 0x1c18]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b830]
sub esp, 8
mov eax, dword [esp + 0x1c20]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b830]
sub esp, 8
mov eax, dword [esp + 0x1c2c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b818]
sub esp, 8
mov eax, dword [esp + 0x1c4c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b818]
sub esp, 8
mov eax, dword [esp + 0x1c34]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b81c]
sub esp, 8
mov eax, dword [esp + 0x1c30]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b81c]
sub esp, 8
mov eax, dword [esp + 0x1c30]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b818]
sub esp, 8
mov eax, dword [esp + 0x1c34]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b818]
sub esp, 8
mov eax, dword [esp + 0x1c3c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b81c]
sub esp, 8
mov eax, dword [esp + 0x1c3c]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b818]
sub esp, 8
mov eax, dword [esp + 0x1c28]
mov ecx, dword [esp + 0x1c8c]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [0x46b830]
sub esp, 8
mov eax, dword [esp + 0x1c8c]
mov dword [esp], eax
call dword [0x46b840]
sub esp, 4
lea eax, [esp + 0x192]
mov esi, eax
mov dword [esp], esi
mov dword [esp + 4], 0x20a
call fcn.00404ab0
mov dword [esp + 8], esi
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [0x46b880]
sub esp, 0xc
mov dword [esp + 0x1c94], eax
mov ecx, 0x712b95db
test eax, eax
je 0x40dd2a
mov ecx, 0xc11d88c9
jmp 0x40dd2a
cmp eax, 0xcf020a33
jg 0x40f354
cmp eax, 0xcebf7680
jg 0x40f36c
cmp eax, 0xcaa2e0f5
je 0x40f3a6
cmp eax, 0xcad90123
jne 0x40f3c3
mov dword [esp], edi
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00403480
mov dword [esp], ebx
mov dword [esp + 8], 0x20a
mov dword [esp + 4], 0
call fcn.00403480
mov dword [esp], edi
mov dword [esp + 4], 0x104
call fcn.00404720
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x15f6]
mov dword [esp + 8], eax
mov dword [esp], ebx
mov dword [esp + 4], 0x104
call fcn.00403670
mov dword [esp], edi
call fcn.00403a10
mov ecx, dword [esp + 0x64]
mov edx, 0x104
sub edx, ecx
lea ecx, [esp + ecx*2 + 0x11e2]
mov dword [esp + 0xc], eax
mov dword [esp + 8], edi
mov dword [esp + 4], edx
mov dword [esp], ecx
call fcn.00403670
mov dword [esp], ebx
mov dword [esp + 4], 0
call dword [0x46b848]
sub esp, 8
mov dword [esp + 0x1c8c], eax
mov dword [esp + 0x4c], 0xa0b91068
jmp 0x40da70
cmp eax, 0xcf020a34
jne 0x40da70
mov dword [esp + 0x4c], 0x28a82be2
jmp 0x40da70
cmp eax, 0xcebf7681
jne 0x40da70
lea eax, [esp + 0xdce]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
sub esp, 4
lea eax, [esp + 0x5a6]
mov dword [esp], eax
call fcn.0040c6e0
mov dword [esp + 0x4c], 0x9470acbe
jmp 0x40da70
mov eax, 0x2991577c
cmp dword [esp + 0x60], 0x80
jne 0x40f3ba
mov eax, 0x9a2d1c87
mov dword [esp + 0x4c], eax
jmp 0x40da70
cmp eax, 0xcbc75e2f
jne 0x40da70
mov eax, 0x8b6d421d
cmp dword [esp + 0x1c94], 0
jne 0x40f3e2
mov eax, 0xc2fc9edc
mov dword [esp + 0x4c], eax
jmp 0x40da70
mov eax, dword [esp + 0x1c98]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret