Function at 0x408b60
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x437138
mov eax, dword fs:[0]
push eax
sub esp, 0x58
push ebx
push esi
push edi
mov eax, dword [0x47700c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp + 8]
test eax, eax
je 0x409eb5
xor esi, esi
nop dword [eax + eax]
mov bl, byte [eax + esi]
mov dh, byte [esi + str.http:__]
mov dl, bl
sub dl, 0x41
cmp dl, 0x19
mov dl, dh
lea eax, [ebx + 0x20]
movzx ecx, al
movzx eax, bl
cmova ecx, eax
mov al, dh
add al, 0x20
movsx edi, cl
sub dl, 0x41
movzx ecx, al
cmp dl, 0x19
movzx eax, dh
cmova ecx, eax
movsx eax, cl
sub edi, eax
jne 0x408be5
mov eax, dword [ebp + 8]
inc esi
cmp esi, 7
jl 0x408ba0
xor eax, eax
cmp esi, 7
cmovne eax, edi
test eax, eax
je 0x409e4a
xor esi, esi
nop word [eax + eax]
mov eax, dword [ebp + 8]
mov dh, byte [esi + str.https:__]
mov bl, byte [eax + esi]
mov dl, bl
sub dl, 0x41
cmp dl, 0x19
mov dl, dh
lea eax, [ebx + 0x20]
movzx ecx, al
movzx eax, bl
cmova ecx, eax
mov al, dh
add al, 0x20
movsx edi, cl
sub dl, 0x41
movzx ecx, al
cmp dl, 0x19
movzx eax, dh
cmova ecx, eax
movsx eax, cl
sub edi, eax
jne 0x408c45
inc esi
cmp esi, 8
jl 0x408c00
xor eax, eax
cmp esi, 8
cmovne eax, edi
test eax, eax
je 0x409e4a
mov ebx, dword [ebp + 8]
mov eax, ebx
mov edi, dword [sym.imp.VCRUNTIME140.dll_strchr]
mov esi, eax
test eax, eax
je 0x408c73
push 0x2e
push eax
call edi
inc eax
add esp, 8
cmp eax, ebx
jae 0x408c60
cmp esi, ebx
jne 0x408c8c
mov ecx, ebx
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408c80
sub ecx, edx
lea esi, [ecx + ebx]
mov eax, dword [0x47701c]
mov dword [ebp - 0x1c], eax
call fcn.00401a20
push 0xffffffffffffffff
push dword [eax]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [0x47701c], 0
call fcn.00401a20
push dword [eax]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [ebp - 0x11], 1
mov dword [ebp - 4], 1
test esi, esi
je 0x40950b
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408cd2
sub ecx, edx
mov edi, 3
mov eax, edi
mov edx, 0x458d78
cmp ecx, eax
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x408d0d
mov esi, dword [ebp - 0x18]
push ebx
push ecx
mov ecx, esi
call fcn.00411e90
jmp 0x409a7d
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408d12
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458d7c
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095d9
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408d40
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458d80
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095d9
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408d70
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x4585a4
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x408da6
mov esi, dword [ebp - 0x18]
push ebx
push ecx
mov ecx, esi
call fcn.00411210
jmp 0x409a7d
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408db0
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x4585ac
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095c8
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408de0
sub ecx, edx
mov eax, 4
cmp ecx, eax
mov edx, str.jpeg
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095c8
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408e11
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458d8c
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095c8
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408e40
sub ecx, edx
mov eax, 4
cmp ecx, eax
mov edx, str.jfif
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095c8
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408e71
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458d98
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095c8
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408ea0
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x4585b4
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x408ed7
mov esi, dword [ebp - 0x18]
push ecx
push ebx
push ecx
mov ecx, esi
call fcn.00411070
jmp 0x409a7d
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408ee0
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458d9c
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095b7
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408f10
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458da0
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095b7
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408f40
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x45859c
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095b7
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408f70
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458da4
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095b7
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408fa0
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458da8
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095b7
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x408fd0
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x4585a0
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409006
mov esi, dword [ebp - 0x18]
push ebx
push ecx
mov ecx, esi
call fcn.004100d0
jmp 0x409a7d
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409010
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x4585b8
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095a4
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409040
sub ecx, edx
mov eax, 4
cmp ecx, eax
mov edx, str.tiff
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x4095a4
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409071
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458db4
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x4090a6
mov esi, dword [ebp - 0x18]
mov ecx, esi
push ebx
call fcn.0040aea0
jmp 0x409a7d
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4090b0
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458db8
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409594
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4090e0
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458dbc
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409594
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409110
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458dc0
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409594
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409140
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458dc4
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409594
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409170
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458dc8
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409594
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4091a0
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458dcc
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409594
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4091d0
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458dd0
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409594
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409200
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458dd4
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409594
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409230
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458dd8
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409594
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409260
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458ddc
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409594
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409290
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x4585a8
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x4092c9
mov esi, dword [ebp - 0x18]
xorps xmm3, xmm3
push ecx
push ebx
mov ecx, esi
call fcn.0040abc0
jmp 0x409a7d
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4092d0
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x4585c0
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409584
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409300
sub ecx, edx
mov edi, 5
mov eax, edi
mov edx, str.dicom
cmp ecx, eax
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409584
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409333
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458de8
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409572
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409364
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458dec
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409572
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409395
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458df0
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x40955e
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4093c6
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458df4
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x40955e
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4093f7
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458df8
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x40942f
mov esi, dword [ebp - 0x18]
mov ecx, esi
push ebx
call fcn.0040b010
jmp 0x409a7d
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409434
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x4585bc
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x40946e
mov esi, dword [ebp - 0x18]
push ecx
push ebx
push ecx
mov ecx, esi
call fcn.0040ed40
jmp 0x409a7d
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409473
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x4585b0
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x4094ac
mov esi, dword [ebp - 0x18]
push ebx
push ecx
mov ecx, esi
call fcn.0040d150
jmp 0x409a7d
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4094b1
sub ecx, edx
mov eax, 4
cmp ecx, eax
mov edx, str.cimg
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409ad4
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4094e2
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, str.cimgz
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409ad4
cmp byte [esi], 0
je 0x409ad4
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409520
sub ecx, edx
mov edi, 2
mov eax, edi
mov edx, 0x458e0c
cmp ecx, eax
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x4095ea
mov esi, dword [ebp - 0x18]
mov ecx, esi
push ebx
call fcn.0040a800
jmp 0x409a7d
mov esi, dword [ebp - 0x18]
xorps xmm3, xmm3
push ecx
push ebx
mov ecx, esi
call fcn.0040ada0
jmp 0x409a7d
mov esi, dword [ebp - 0x18]
push ecx
push ebx
push ecx
mov ecx, esi
call fcn.0040f8b0
jmp 0x409a7d
mov esi, dword [ebp - 0x18]
mov ecx, esi
push ebx
call fcn.0040a4b0
jmp 0x409a7d
mov esi, dword [ebp - 0x18]
mov ecx, esi
push ebx
call fcn.0040a1c0
jmp 0x409a7d
mov esi, dword [ebp - 0x18]
sub esp, 0x14
mov ecx, esi
push ebx
call fcn.0040b080
jmp 0x409a7d
mov esi, dword [ebp - 0x18]
push ebx
push ecx
mov ecx, esi
call fcn.00410590
jmp 0x409a7d
mov esi, dword [ebp - 0x18]
push ebx
push ecx
mov ecx, esi
call fcn.004111a0
jmp 0x409a7d
mov esi, dword [ebp - 0x18]
push ebx
push ecx
mov ecx, esi
call fcn.00411b80
jmp 0x409a7d
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4095f0
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e10
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409621
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e14
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409652
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e18
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409683
sub ecx, edx
mov eax, 4
cmp ecx, eax
mov edx, str.divx
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4096b4
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e24
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4096e5
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e28
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409716
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e2c
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409747
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e30
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409778
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e34
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4097b0
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e38
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4097e1
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e3c
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409812
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e40
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409843
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e44
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409874
sub ecx, edx
mov eax, 5
cmp ecx, 5
mov edx, str.movie
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4098a6
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e50
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4098d7
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e54
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409908
sub ecx, edx
mov eax, 3
cmp ecx, eax
mov edx, 0x458e58
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409940
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458e5c
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409970
sub ecx, edx
mov edx, 0x458e60
cmp ecx, edi
cmovl edi, ecx
mov ecx, esi
inc edi
push edi
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4099a0
sub ecx, edx
mov edi, 3
mov eax, edi
mov edx, 0x458e64
cmp ecx, eax
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4099d3
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x458e68
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409a01
sub ecx, edx
mov edi, 4
mov eax, edi
mov edx, str.xvid
cmp ecx, eax
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409a34
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, str.mpeg
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
je 0x409a67
mov esi, dword [ebp - 0x18]
xor al, al
jmp 0x409a80
mov esi, dword [ebp - 0x18]
sub esp, 0x14
mov ecx, esi
mov dword [esp + 0x10], 0
push ebx
call fcn.0040acb0
mov al, byte [ebp - 0x11]
mov dword [ebp - 4], 0xffffffff
test al, al
je 0x409b05
mov edi, dword [ebp - 0x1c]
call fcn.00401a20
push 0xffffffffffffffff
push dword [eax]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp edi, 4
mov eax, 4
cmovb eax, edi
mov dword [0x47701c], eax
call fcn.00401a20
push dword [eax]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ecx
mov ecx, dword [ebp - 0x18]
xorps xmm3, xmm3
push ebx
call fcn.0040af10
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov esi, dword [ebp - 0x1c]
push 0x4579d0
push ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov edi, eax
add esp, 8
test edi, edi
je 0x409efa
mov edx, ebx
mov ecx, edi
call fcn.00406480
push edi
mov esi, eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 4
mov dword [ebp - 4], 3
mov bl, 1
test esi, esi
je 0x409e1d
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409b50
sub ecx, edx
mov edi, 3
mov eax, edi
mov edx, 0x45859c
cmp ecx, eax
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409b91
push dword [ebp + 8]
mov esi, dword [ebp - 0x18]
push ecx
mov ecx, esi
call fcn.00410590
jmp 0x409e22
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409b96
sub ecx, edx
mov eax, edi
cmp ecx, eax
mov edx, 0x4585a0
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409bd2
push dword [ebp + 8]
mov esi, dword [ebp - 0x18]
push ecx
mov ecx, esi
call fcn.004100d0
jmp 0x409e22
mov ecx, esi
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409bd7
sub ecx, edi
mov eax, 3
cmp ecx, eax
mov edx, 0x4585a4
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409c16
push dword [ebp + 8]
mov esi, dword [ebp - 0x18]
push ecx
mov ecx, esi
call fcn.00411210
jmp 0x409e22
mov ecx, esi
lea edi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409c20
sub ecx, edi
mov eax, 3
cmp ecx, eax
mov edx, 0x4585bc
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409c60
mov esi, dword [ebp - 0x18]
push ecx
push dword [ebp + 8]
push ecx
mov ecx, esi
call fcn.0040ed40
jmp 0x409e22
mov ecx, esi
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409c65
sub ecx, edi
mov eax, 3
cmp ecx, eax
mov edx, 0x4585ac
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409ca4
push dword [ebp + 8]
mov esi, dword [ebp - 0x18]
push ecx
mov ecx, esi
call fcn.004111a0
jmp 0x409e22
mov ecx, esi
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409cb0
sub ecx, edi
mov eax, 3
cmp ecx, eax
mov edx, 0x4585b0
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409cef
push dword [ebp + 8]
mov esi, dword [ebp - 0x18]
push ecx
mov ecx, esi
call fcn.0040d150
jmp 0x409e22
mov ecx, esi
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409cf4
sub ecx, edi
mov eax, 3
cmp ecx, eax
mov edx, 0x4585b4
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409d34
mov esi, dword [ebp - 0x18]
push ecx
push dword [ebp + 8]
push ecx
mov ecx, esi
call fcn.00411070
jmp 0x409e22
mov ecx, esi
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409d40
sub ecx, edi
mov eax, 3
cmp ecx, eax
mov edx, 0x4585b8
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409d81
mov esi, dword [ebp - 0x18]
sub esp, 0x14
mov ecx, esi
push dword [ebp + 8]
call fcn.0040b080
jmp 0x409e22
mov ecx, esi
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409d86
sub ecx, edi
mov eax, 3
cmp ecx, eax
mov edx, 0x4585a8
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409dc8
mov esi, dword [ebp - 0x18]
xorps xmm3, xmm3
push ecx
push dword [ebp + 8]
mov ecx, esi
call fcn.0040abc0
jmp 0x409e22
mov ecx, esi
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409dd0
sub ecx, edi
mov eax, 3
cmp ecx, 3
mov edx, 0x4585c0
cmovl eax, ecx
mov ecx, esi
inc eax
push eax
call fcn.00401ca0
add esp, 4
test eax, eax
jne 0x409e1d
push dword [ebp + 8]
mov esi, dword [ebp - 0x18]
mov ecx, esi
call fcn.0040a4b0
jmp 0x409e22
mov esi, dword [ebp - 0x18]
xor bl, bl
mov dword [ebp - 4], 0xffffffff
test bl, bl
jne 0x409a8f
push dword [ebp + 8]
mov edi, dword [ebp - 0x1c]
mov ecx, esi
mov dword [ebp - 4], 5
call fcn.00409fb0
jmp 0x409a92
push 1
push 1
push 1
push pe_nt_image_headers32
lea ecx, [ebp - 0x64]
call fcn.00408260
mov ecx, dword [ebp + 8]
sub esp, 0xc
mov dword [ebp - 4], 0
mov esi, dword [ebp - 0x50]
mov edx, esi
call fcn.004068d0
mov ebx, dword [ebp - 0x18]
add esp, 0xc
mov ecx, ebx
push eax
call fcn.00408b60
push esi
call dword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
add esp, 4
cmp byte [ebp - 0x54], 0
jne 0x409e9f
push esi
call fcn.0043575c
add esp, 4
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
call fcn.00401920
cmp byte [ecx + 0x10], 0
mov edx, str.non_
push eax
mov eax, 0x4393e2
cmove eax, edx
push eax
push dword [ecx + 0x14]
lea eax, [ebp - 0x2c]
push dword [ecx + 0xc]
push dword [ecx + 8]
push dword [ecx + 4]
push dword [ecx]
push str._instance__u__u__u__u__p__sshared___CImg__s_::load__:_Specified_filename_is__null_.
push eax
call fcn.00401450
add esp, 0x24
lea eax, [ebp - 0x2c]
push 0x475714
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
mov ecx, esi
call fcn.004012e0
push ebx
call fcn.00401920
mov ecx, dword [ebp - 0x18]
mov edx, str.non_
push eax
mov eax, 0x4393e2
cmp byte [ecx + 0x10], 0
cmove eax, edx
push eax
push dword [ecx + 0x14]
lea eax, [ebp - 0x3c]
push dword [ecx + 0xc]
push dword [ecx + 8]
push dword [ecx + 4]
push dword [ecx]
push str._instance__u__u__u__u__p__sshared___CImg__s_::load__:_Failed_to_open_file__s.
push eax
call fcn.00401780
add esp, 0x28
lea eax, [ebp - 0x3c]
push 0x47569c
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
mov ecx, dword [ebp - 0x1c]
call fcn.004012e0
push dword [ebp + 8]
call fcn.00401920
mov ecx, dword [ebp - 0x18]
mov edx, str.non_
push eax
mov eax, 0x4393e2
cmp byte [ecx + 0x10], 0
cmove eax, edx
push eax
push dword [ecx + 0x14]
lea eax, [ebp - 0x4c]
push dword [ecx + 0xc]
push dword [ecx + 8]
push dword [ecx + 4]
push dword [ecx]
push str._instance__u__u__u__u__p__sshared___CImg__s_::load__:_Failed_to_recognize_format_of_file__s.
push eax
call fcn.00401780
add esp, 0x28
lea eax, [ebp - 0x4c]
push 0x47569c
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
int3