Function at 0x40fc70
Capabilities:
Check http status code
Contain obfuscated stackstrings
Delete file
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c1ebc
mov eax, dword fs:[0]
push eax
sub esp, 0xaa4
push ebx
push esi
push edi
mov eax, dword [0x6b5068]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebx + 0x9bc]
mov dword [ebp - 0x5c], 0
cmp dword [ebp + 8], eax
jne 0x411494
lea ecx, [ebp - 0x108]
call fcn.00420c30
mov dword [ebp - 4], 0
mov dword [ebp - method.CWString.virtual_0], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x208], 0
mov byte [ebp - 4], 1
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2478.0
mov byte [ebp - 4], 2
push ecx
lea ecx, [ebp - 0x204]
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2053.0
call fcn.004129d0
mov byte [ebp - 4], 4
mov dword [ebp - method.CWString.virtual_0], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x1dc], 0
mov byte [ebp - 4], 5
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2478.0
mov byte [ebp - 4], 6
push ecx
lea ecx, [ebp - 0x1d8]
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2053.0
call fcn.004129d0
mov byte [ebp - 4], 8
mov dword [ebp - method.CWString.virtual_0], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov dword [ebp - 0x1b4], 0
mov dword [ebp - 0x1b0], 0
mov byte [ebp - 4], 9
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2478.0
mov byte [ebp - 4], 0xa
push ecx
lea ecx, [ebp - 0x1ac]
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2053.0
call fcn.004129d0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x474]
call fcn.004018c0
mov byte [ebp - 4], 0xd
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x468], 0x4dd138
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x448]
call fcn.004018c0
mov byte [ebp - 4], 0xf
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x43c], 0x4dd138
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x41c]
call fcn.004018c0
mov byte [ebp - 4], 0x11
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x410], 0x4dd138
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x3f0]
call fcn.004018c0
mov byte [ebp - 4], 0x13
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x3e4], 0x4dd138
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x3c4]
call fcn.004018c0
mov byte [ebp - 4], 0x15
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x3b8], 0x4dd138
mov byte [ebp - 4], 0x16
mov dword [ebp - method.CWString.virtual_0], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x184], 0
mov byte [ebp - 4], 0x17
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2478.0
mov byte [ebp - 4], 0x18
push ecx
lea ecx, [ebp - 0x180]
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2053.0
call fcn.004129d0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x734]
call fcn.004018c0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x210]
push ecx
or dword [ebp - 0x20c], 1
lea ecx, [ebp - 0x1e4]
push ecx
or dword [ebp - 0x1e0], 1
lea ecx, [ebp - 0x1b8]
push ecx
sub esp, 0xc
or dword [ebp - 0x1b4], 1
or dword [ebp - 0x188], 1
lea ecx, [ebp - 0x474]
or dword [eax + 4], 1
push ecx
lea ecx, [ebp - 0x448]
push ecx
lea ecx, [ebp - 0x41c]
push ecx
lea ecx, [ebp - 0x3f0]
push ecx
lea ecx, [ebp - 0x3c4]
push ecx
lea ecx, [ebp - 0x18c]
push ecx
push eax
sub esp, 8
lea eax, [ebp - 0xab0]
lea ecx, [ebx + 0x8d4]
push eax
call fcn.00418ca0
mov byte [ebp - 4], 0x1c
push ecx
lea ecx, [ebp - 0x708]
push ecx
mov ecx, eax
call fcn.0041ce90
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0xfc]
add ecx, 8
push eax
call fcn.00411d30
mov esi, eax
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x708]
call fcn.00401b70
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0xab0]
call fcn.0040e6a0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x734]
call fcn.00401b70
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x180]
call fcn.00412840
mov byte [ebp - 4], 0x16
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x3c4]
call fcn.00401b70
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x3f0]
call fcn.00401b70
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x41c]
call fcn.00401b70
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x448]
call fcn.00401b70
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x474]
call fcn.00401b70
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x1ac]
call fcn.00412840
mov byte [ebp - 4], 8
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x1d8]
call fcn.00412840
mov byte [ebp - 4], 4
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x204]
call fcn.00412840
mov byte [ebp - 4], 0
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
test esi, esi
je 0x4113ef
lea ecx, [ebp - 0x398]
call fcn.004018c0
mov byte [ebp - 4], 0x2f
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x38c], str.code
mov byte [ebp - 4], 0x30
mov eax, dword [ebp - 0x38c]
test eax, eax
jne 0x4100c2
cmp dword [ebp - 0x374], 0
mov eax, 0x4dd138
cmovne eax, dword [ebp - 0x37c]
push eax
lea ecx, [ebp - 0x760]
call fcn.00411c80
mov byte [ebp - 4], 0x31
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x10], edx
test edx, edx
jne 0x4100ec
cmp dword [eax + 0x24], edx
mov edx, 0x4dcdaf
je 0x4100e9
mov edx, dword [eax + 0x1c]
mov dword [ebp - 0x10], edx
mov ebx, dword [ebp - 0xfc]
mov eax, dword [ebx + 8]
mov eax, dword [eax + 8]
test eax, eax
je 0x410107
cmp dword [ebx + 0xc], 0
jne 0x410107
mov eax, dword [eax]
mov dword [ebx + 0xc], eax
mov ebx, dword [ebx + 0xc]
test edx, edx
je 0x41011e
mov edi, edx
lea ecx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x410113
sub edi, ecx
jmp 0x410120
xor edi, edi
xor eax, eax
mov esi, edi
shld eax, esi, 8
shl esi, 8
or esi, 5
mov dword [ebp - 0x1c], eax
mov dword [ebp + 8], esi
test ebx, ebx
je 0x4101fc
mov al, byte [ebx]
and al, 7
cmp al, 7
jne 0x4101fc
test edx, edx
je 0x4101fc
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
add ebx, 0x10
shrd ecx, eax, 8
test ecx, ecx
je 0x4101fc
dec ecx
mov dword [ebp - 0x18], ecx
cmp dword [ebx], esi
jne 0x4101c6
mov eax, dword [ebp - 0x1c]
cmp dword [ebx + 4], eax
jne 0x4101c6
mov ecx, dword [ebx + 8]
mov esi, edi
sub esi, 4
jb 0x410191
nop
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x410196
add ecx, 4
add edx, 4
sub esi, 4
jae 0x410180
cmp esi, 0xfffffffc
je 0x4101ea
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4101c3
cmp esi, 0xfffffffd
je 0x4101ea
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4101c3
cmp esi, 0xfffffffe
je 0x4101ea
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4101c3
cmp esi, 0xffffffff
je 0x4101ea
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x4101ea
mov esi, dword [ebp + 8]
mov al, byte [ebx + 0x10]
lea edx, [ebx + 0x10]
mov ecx, dword [ebp - 0x18]
and al, 6
cmp al, 6
mov ebx, 0x10
cmove ebx, dword [edx + 8]
add ebx, edx
test ecx, ecx
je 0x4101fc
mov edx, dword [ebp - 0x10]
jmp 0x410164
add ebx, 0x10
je 0x4101fc
mov al, byte [ebx]
and al, 0xf7
cmp al, 4
jne 0x4101fc
mov esi, dword [ebx + 8]
jmp 0x4101fe
xor esi, esi
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x760]
call fcn.00401b70
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x398]
call fcn.00401b70
cmp esi, 0xc8
jne 0x4113ec
lea ecx, [ebp - 0x2c]
call fcn.004214f0
mov byte [ebp - 4], 0x33
xor eax, eax
lea ecx, [ebp - 0x134]
mov dword [ebp + 8], eax
call fcn.004018c0
mov byte [ebp - 4], 0x34
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x128], str.data
mov byte [ebp - 4], 0x35
lea eax, [ebp - 0x134]
push eax
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x108]
call fcn.004210a0
mov esi, eax
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
call dword [edx + 0x44]
mov ecx, dword [esi + 4]
mov dword [ebp - 0x28], ecx
mov ecx, dword [esi + 8]
mov dword [ebp - 0x24], ecx
mov esi, dword [esi + 0xc]
test esi, esi
je 0x41029f
mov ecx, esi
call fcn.00412820
mov ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x4102ab
mov eax, dword [ecx]
call dword [eax + 0x20]
mov dword [ebp - 0x20], esi
mov byte [ebp - 4], 0x35
mov dword [ebp - 0x74], vtable.rg_n8532::rg_n8608.0
mov byte [ebp - 4], 0x37
or dword [ebp - 0x70], 2
mov ecx, dword [ebp - 0x68]
test ecx, ecx
je 0x4102cd
mov eax, dword [ecx]
call dword [eax + 0x20]
mov byte [ebp - 4], 0x35
mov dword [ebp - 0x74], vtable.CVolObject.0
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x134]
call fcn.00401b70
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x410307
mov al, byte [ecx]
and al, 7
cmp al, 6
jne 0x410307
mov esi, dword [ecx]
mov eax, dword [ecx + 4]
shrd esi, eax, 8
mov dword [ebp - 0x10], esi
jmp 0x41030e
mov dword [ebp - 0x10], 0
mov ebx, dword [ebp - 0x14]
push 0
push 8
push dword [ebx + 0x780]
call dword [0x6b76cc]
push 0
push 9
push dword [ebx + 0x780]
call dword [0x6b76cc]
push 1
push dword [ebx + 0x780]
call dword [0x6b76e0]
lea ecx, [ebp - 0x134]
call fcn.004018c0
mov byte [ebp - 4], 0x3a
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x128], str.ck_W_vN
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x134]
push ecx
lea ecx, [ebx + 0x4d4]
call fcn.004071a0
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x134]
call fcn.00401b70
push 1
push dword [ebx + 0x4e0]
call dword [0x6b76e0]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x4103b7
mov al, byte [ecx]
and al, 7
cmp al, 6
jne 0x4103b7
mov edi, dword [ecx]
lea edx, [ecx + 0x10]
mov eax, dword [ecx + 4]
xor esi, esi
shrd edi, eax, 8
jmp 0x4103d0
xorps xmm0, xmm0
xor edx, edx
movq qword [ebp - 0x288], xmm0
mov edi, dword [ebp - 0x284]
mov esi, dword [ebp - 0x288]
xor eax, eax
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x18], eax
nop
cmp esi, edi
jae 0x410405
mov al, byte [edx]
mov edi, edx
mov ecx, dword [edx + 8]
and al, 6
cmp al, 6
mov edx, 0x10
mov eax, dword [ebp - 0x18]
cmove edx, ecx
add edx, edi
inc esi
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x64], esi
jmp 0x410407
xor edi, edi
test edi, edi
je 0x411396
add eax, 0x64
inc dword [ebp + 8]
mov dword [ebp - 0x18], eax
cdq
idiv dword [ebp - 0x10]
push eax
push 9
push dword [ebx + 0x780]
call dword [0x6b76cc]
mov dword [ebp - 0x58], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - 0x58], vtable.CVolObject.0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0
mov byte [ebp - 4], 0x3d
lea eax, [ebp - 0x48]
mov dword [ebp - 0x48], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - 0x58], vtable.CWString.0
mov dword [ebp - 0x340], eax
mov dword [ebp - 0x48], vtable.CVolObject.0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
mov byte [ebp - 4], 0x3e
mov dword [ebp - 0x48], vtable.CVolMem.0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0x40
mov byte [ebp - 4], 0x3f
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x30], 0xfe
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x4a0]
call fcn.004018c0
mov byte [ebp - 4], 0x41
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x494], str.name
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0xd8]
mov eax, dword [ebp - 0x20]
mov esi, dword [eax + 8]
call fcn.00420c30
mov byte [ebp - 4], 0x43
mov ebx, dword [ebp - 0xcc]
mov dword [ebp - 0xd8], vtable.rg_n8532::rg_n8533.0
mov dword [ebx + 0xc], edi
test esi, esi
je 0x41050e
mov ecx, esi
call fcn.00412820
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x41051a
mov eax, dword [ecx]
call dword [eax + 0x20]
mov dword [ebx + 8], esi
mov byte [ebp - 4], 0x44
lea eax, [ebp - 0x4a0]
push eax
lea eax, [ebp - 0x2e4]
push eax
lea ecx, [ebp - 0xd8]
call fcn.00420eb0
mov byte [ebp - 4], 0x45
mov edx, 0x6b5b54
push eax
lea ecx, [ebp - 0x2b8]
call fcn.00428e60
add esp, 4
mov esi, eax
mov byte [ebp - 4], 0x46
mov ecx, dword [ebp - 0x58]
mov eax, dword [ecx + 0x44]
cmp eax, fcn.00401400
je 0x41056a
lea ecx, [ebp - 0x58]
call eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x54], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x50], eax
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x44]
cmp eax, fcn.00401400
je 0x41058e
lea ecx, [ebp - 0x48]
call eax
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x48]
call fcn.00402510
mov byte [ebp - 4], 0x47
lea eax, [ebp - 0x2a8]
mov dword [ebp - 0x28c], eax
mov dword [ebp - method.CWString.virtual_0], vtable.CVolMem.0
mov byte [ebp - 4], 0x49
mov ecx, dword [ebp - 0x29c]
test ecx, ecx
je 0x4105e7
mov eax, dword [ebp - 0x2a8]
push ecx
mov eax, dword [eax + 0xc]
cmp eax, method.CWString.virtual_12
jne 0x4105df
mov ecx, 0x6b75a8
call fcn.00428020
jmp 0x4105e7
lea ecx, [ebp - 0x2a8]
call eax
mov dword [ebp - 0x29c], 0
mov dword [ebp - 0x294], 0
mov dword [ebp - 0x298], 0
mov byte [ebp - 4], 0x47
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0x45
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0x4a
lea eax, [ebp - 0x2d4]
mov dword [ebp - 0x26c], eax
mov dword [ebp - method.CWString.virtual_0], vtable.CVolMem.0
mov byte [ebp - 4], 0x4c
mov ecx, dword [ebp - 0x2c8]
test ecx, ecx
je 0x41066e
mov eax, dword [ebp - 0x2d4]
push ecx
mov eax, dword [eax + 0xc]
cmp eax, method.CWString.virtual_12
jne 0x410666
mov ecx, 0x6b75a8
call fcn.00428020
jmp 0x41066e
lea ecx, [ebp - 0x2d4]
call eax
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x2c4], 0
mov byte [ebp - 4], 0x4a
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0x44
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0x42
mov dword [ebp - 0xd8], vtable.rg_n8532::rg_n8533.0
mov byte [ebp - 4], 0x4d
or dword [ebp - 0xd4], 2
mov ecx, dword [ebp - 0xcc]
test ecx, ecx
je 0x4106d0
mov eax, dword [ecx]
call dword [eax + 0x20]
mov byte [ebp - 4], 0x42
mov dword [ebp - 0xd8], vtable.CVolObject.0
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x4a0]
call fcn.00401b70
mov eax, dword [ebp - 0x4c]
test eax, eax
jne 0x410701
cmp dword [ebp - 0x34], 0
mov eax, 0x4dd138
cmovne eax, dword [ebp - 0x3c]
mov ecx, eax
call fcn.00426070
test eax, eax
je 0x410d45
lea ecx, [ebp - 0x310]
call fcn.004018c0
mov byte [ebp - 4], 0x51
mov dword [ebp - 0xc8], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - 0xc8], vtable.CVolObject.0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 0
mov byte [ebp - 4], 0x52
mov dword [ebp - 0xc8], vtable.CVolMem.0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb0], 0x40
mov byte [ebp - 4], 0x51
mov ebx, dword [ebp - 0x5c]
or ebx, 4
mov dword [ebp - 0x5c], ebx
mov eax, dword [ebp - 0x4c]
test eax, eax
jne 0x41079e
cmp dword [ebp - 0x34], 0
mov eax, 0x4dd138
cmovne eax, dword [ebp - 0x3c]
push ecx
push eax
lea ecx, [ebp - 0xc8]
call fcn.00427670
sub esp, 8
lea edx, [ebp - 0xc8]
lea ecx, [ebp - 0x78c]
call fcn.0040eed0
mov esi, eax
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x310]
mov edx, dword [ebp - 0x310]
call dword [edx + 0x44]
mov ecx, dword [esi + 4]
mov dword [ebp - 0x30c], ecx
mov ecx, dword [esi + 8]
mov dword [ebp - 0x308], ecx
lea ecx, [ebp - 0x300]
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x304], eax
mov eax, dword [ebp - 0x300]
call dword [eax + 0x44]
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x300]
call fcn.00402510
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0x78c]
call fcn.00401b70
and ebx, 0xfffffffb
mov dword [ebp - 0x5c], ebx
mov byte [ebp - 4], 0x50
mov dword [ebp - 0xc8], vtable.CVolMem.0
mov byte [ebp - 4], 0x54
mov ecx, dword [ebp - 0xbc]
test ecx, ecx
je 0x410863
mov eax, dword [ebp - 0xc8]
push ecx
mov eax, dword [eax + 0xc]
cmp eax, method.CWString.virtual_12
jne 0x41085b
mov ecx, 0x6b75a8
call fcn.00428020
jmp 0x410863
lea ecx, [ebp - 0xc8]
call eax
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb8], 0
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x4cc]
mov dword [ebp - 0xc8], vtable.CVolObject.0
call fcn.004018c0
mov byte [ebp - 4], 0x55
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x4c0], 0x4dcfec
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0xe8]
mov eax, dword [ebp - 0x20]
mov esi, dword [eax + 8]
call fcn.00420c30
mov byte [ebp - 4], 0x57
mov ebx, dword [ebp - 0xdc]
mov dword [ebp - 0xe8], vtable.rg_n8532::rg_n8533.0
mov dword [ebx + 0xc], edi
test esi, esi
je 0x4108e9
mov ecx, esi
call fcn.00412820
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x4108f5
mov eax, dword [ecx]
call dword [eax + 0x20]
mov dword [ebx + 8], esi
mov byte [ebp - 4], 0x58
lea eax, [ebp - 0x4cc]
push eax
lea eax, [ebp - 0x7b8]
push eax
lea ecx, [ebp - 0xe8]
call fcn.00420eb0
mov byte [ebp - 4], 0x59
lea ecx, [ebp - 0x310]
push eax
call fcn.00411f10
mov esi, eax
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x7b8]
call fcn.00401b70
mov byte [ebp - 4], 0x56
mov dword [ebp - 0xe8], vtable.rg_n8532::rg_n8533.0
mov byte [ebp - 4], 0x5a
or dword [ebp - 0xe4], 2
mov ecx, dword [ebp - 0xdc]
test ecx, ecx
je 0x41095e
mov eax, dword [ecx]
call dword [eax + 0x20]
mov byte [ebp - 4], 0x56
mov dword [ebp - 0xe8], vtable.CVolObject.0
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x4cc]
call fcn.00401b70
test esi, esi
je 0x410d33
mov eax, dword [ebp - 0x4c]
test eax, eax
jne 0x410997
cmp dword [ebp - 0x34], 0
mov eax, 0x4dd138
cmovne eax, dword [ebp - 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0x5d4]
call fcn.004018c0
mov byte [ebp - 4], 0x5d
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x5c8], 0x4dd138
mov byte [ebp - 4], 0x5e
lea ecx, [ebp - 0x5a8]
call fcn.004018c0
mov byte [ebp - 4], 0x5f
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x59c], 0x4dd138
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x57c]
call fcn.004018c0
mov byte [ebp - 4], 0x61
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x570], 0x4dd138
mov byte [ebp - 4], 0x62
lea ecx, [ebp - 0x550]
call fcn.004018c0
mov byte [ebp - 4], 0x63
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x544], 0x4dd138
mov byte [ebp - 4], 0x64
lea ecx, [ebp - 0x524]
call fcn.004018c0
mov byte [ebp - 4], 0x65
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x518], 0x4dd138
mov byte [ebp - 4], 0x66
mov dword [ebp - method.CWString.virtual_0], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 0
mov byte [ebp - 4], 0x67
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2478.0
mov byte [ebp - 4], 0x68
push ecx
lea ecx, [ebp - 0x230]
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2053.0
call fcn.004129d0
mov byte [ebp - 4], 0x6a
mov dword [ebp - 0x90], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - 0x90], vtable.CVolObject.0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 0
mov byte [ebp - 4], 0x6b
mov dword [ebp - 0x90], vtable.CVolMem.0
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x78], 0x40
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x4f8]
call fcn.004018c0
mov byte [ebp - 4], 0x6d
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x4ec], 0x4dcff4
mov byte [ebp - 4], 0x6e
mov eax, dword [ebp - 0x20]
mov esi, dword [eax + 8]
lea ecx, [ebp - 0xf8]
call fcn.00420c30
mov byte [ebp - 4], 0x6f
mov ebx, dword [ebp - 0xec]
mov dword [ebp - 0xf8], vtable.rg_n8532::rg_n8533.0
mov dword [ebx + 0xc], edi
test esi, esi
je 0x410b68
mov ecx, esi
call fcn.00412820
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x410b74
mov eax, dword [ecx]
call dword [eax + 0x20]
mov dword [ebx + 8], esi
mov byte [ebp - 4], 0x70
lea eax, [ebp - 0x4f8]
push eax
lea eax, [ebp - 0x7e4]
push eax
lea ecx, [ebp - 0xf8]
call fcn.00420eb0
mov byte [ebp - 4], 0x71
push ecx
mov ebx, dword [ebp - 0x14]
lea ecx, [ebp - 0x58]
push ecx
sub esp, 0xc
or dword [ebp - 0x238], 1
or dword [ebp - 0x8c], 1
lea ecx, [ebp - 0x5d4]
push ecx
lea ecx, [ebp - 0x5a8]
push ecx
lea ecx, [ebp - 0x57c]
push ecx
lea ecx, [ebp - 0x550]
push ecx
lea ecx, [ebp - 0x524]
push ecx
lea ecx, [ebp - 0x23c]
push ecx
lea ecx, [ebp - 0x90]
push ecx
push ecx
push eax
lea eax, [ebp - 0x960]
push eax
lea ecx, [ebx + 0x948]
call fcn.0041b7d0
lea ecx, [ebp - 0x960]
call fcn.0040e6a0
mov byte [ebp - 4], 0x70
lea ecx, [ebp - 0x7e4]
call fcn.00401b70
mov byte [ebp - 4], 0x6e
mov dword [ebp - 0xf8], vtable.rg_n8532::rg_n8533.0
mov byte [ebp - 4], 0x72
or dword [ebp - 0xf4], 2
mov ecx, dword [ebp - 0xec]
test ecx, ecx
je 0x410c38
mov eax, dword [ecx]
call dword [eax + 0x20]
mov byte [ebp - 4], 0x6e
mov dword [ebp - 0xf8], vtable.CVolObject.0
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x4f8]
call fcn.00401b70
mov byte [ebp - 4], 0x6a
mov dword [ebp - 0x90], vtable.CVolMem.0
mov byte [ebp - 4], 0x75
mov ecx, dword [ebp - 0x84]
test ecx, ecx
je 0x410c96
mov eax, dword [ebp - 0x90]
push ecx
mov eax, dword [eax + 0xc]
cmp eax, method.CWString.virtual_12
jne 0x410c8e
mov ecx, 0x6b75a8
call fcn.00428020
jmp 0x410c96
lea ecx, [ebp - 0x90]
call eax
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x80], 0
mov byte [ebp - 4], 0x6a
mov dword [ebp - 0x90], vtable.CVolObject.0
mov byte [ebp - 4], 0x76
lea ecx, [ebp - 0x230]
call fcn.00412840
mov byte [ebp - 4], 0x66
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0x64
lea ecx, [ebp - 0x524]
call fcn.00401b70
mov byte [ebp - 4], 0x62
lea ecx, [ebp - 0x550]
call fcn.00401b70
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x57c]
call fcn.00401b70
mov byte [ebp - 4], 0x5e
lea ecx, [ebp - 0x5a8]
call fcn.00401b70
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x5d4]
call fcn.00401b70
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x310]
jmp 0x4110bd
mov ebx, dword [ebp - 0x14]
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x310]
jmp 0x4110bd
lea ecx, [ebp - 0x6dc]
call fcn.004018c0
mov byte [ebp - 4], 0x7e
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x6d0], 0x4dd138
mov byte [ebp - 4], 0x7f
lea ecx, [ebp - 0x6b0]
call fcn.004018c0
mov byte [ebp - 4], 0x80
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x6a4], 0x4dd138
mov byte [ebp - 4], 0x81
lea ecx, [ebp - 0x684]
call fcn.004018c0
mov byte [ebp - 4], 0x82
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x678], 0x4dd138
mov byte [ebp - 4], 0x83
lea ecx, [ebp - 0x658]
call fcn.004018c0
mov byte [ebp - 4], 0x84
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x64c], 0x4dd138
mov byte [ebp - 4], 0x85
lea ecx, [ebp - 0x62c]
call fcn.004018c0
mov byte [ebp - 4], 0x86
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x620], 0x4dd138
mov byte [ebp - 4], 0x87
mov dword [ebp - method.CWString.virtual_0], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov dword [ebp - 0x264], 0
mov dword [ebp - 0x260], 0
mov byte [ebp - 4], 0x88
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2478.0
mov byte [ebp - 4], 0x89
push ecx
lea ecx, [ebp - 0x25c]
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n113::rg_n2053.0
call fcn.004129d0
mov byte [ebp - 4], 0x8b
mov dword [ebp - 0xac], vtable.CVolCommonBaseWithMemManager.0
mov dword [ebp - 0xac], vtable.CVolObject.0
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
mov byte [ebp - 4], 0x8c
mov dword [ebp - 0xac], vtable.CVolMem.0
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x94], 0x40
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0x600]
call fcn.004018c0
mov byte [ebp - 4], 0x8e
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x5f4], 0x4dcff4
mov byte [ebp - 4], 0x8f
lea ecx, [ebp - 0x74]
mov eax, dword [ebp - 0x20]
mov esi, dword [eax + 8]
call fcn.00420c30
mov byte [ebp - 4], 0x90
mov ebx, dword [ebp - 0x68]
mov dword [ebp - 0x74], vtable.rg_n8532::rg_n8533.0
mov dword [ebx + 0xc], edi
test esi, esi
je 0x410f0f
mov ecx, esi
call fcn.00412820
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x410f1b
mov eax, dword [ecx]
call dword [eax + 0x20]
mov dword [ebx + 8], esi
mov byte [ebp - 4], 0x91
lea eax, [ebp - 0x600]
push eax
lea eax, [ebp - 0x810]
push eax
lea ecx, [ebp - 0x74]
call fcn.00420eb0
mov byte [ebp - 4], 0x92
push ecx
mov ebx, dword [ebp - 0x14]
lea ecx, [ebp - 0x58]
push ecx
sub esp, 0xc
or dword [ebp - 0x264], 1
or dword [ebp - 0xa8], 1
lea ecx, [ebp - 0x6dc]
push ecx
lea ecx, [ebp - 0x6b0]
push ecx
lea ecx, [ebp - 0x684]
push ecx
lea ecx, [ebp - 0x658]
push ecx
lea ecx, [ebp - 0x62c]
push ecx
lea ecx, [ebp - 0x268]
push ecx
lea ecx, [ebp - 0xac]
push ecx
push ecx
push eax
lea eax, [ebp - 0x960]
push eax
lea ecx, [ebx + 0x948]
call fcn.0041b7d0
lea ecx, [ebp - 0x960]
call fcn.0040e6a0
mov byte [ebp - 4], 0x91
lea ecx, [ebp - 0x810]
call fcn.00401b70
mov byte [ebp - 4], 0x8f
mov dword [ebp - 0x74], vtable.rg_n8532::rg_n8533.0
mov byte [ebp - 4], 0x93
or dword [ebp - 0x70], 2
mov ecx, dword [ebp - 0x68]
test ecx, ecx
je 0x410fd3
mov eax, dword [ecx]
call dword [eax + 0x20]
mov byte [ebp - 4], 0x8f
mov dword [ebp - 0x74], vtable.CVolObject.0
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0x600]
call fcn.00401b70
mov byte [ebp - 4], 0x8b
mov dword [ebp - 0xac], vtable.CVolMem.0
mov byte [ebp - 4], 0x96
mov ecx, dword [ebp - 0xa0]
test ecx, ecx
je 0x41102e
mov eax, dword [ebp - 0xac]
push ecx
mov eax, dword [eax + 0xc]
cmp eax, method.CWString.virtual_12
jne 0x411026
mov ecx, 0x6b75a8
call fcn.00428020
jmp 0x41102e
lea ecx, [ebp - 0xac]
call eax
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x9c], 0
mov byte [ebp - 4], 0x8b
mov dword [ebp - 0xac], vtable.CVolObject.0
mov byte [ebp - 4], 0x97
lea ecx, [ebp - 0x25c]
call fcn.00412840
mov byte [ebp - 4], 0x87
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0x85
lea ecx, [ebp - 0x62c]
call fcn.00401b70
mov byte [ebp - 4], 0x83
lea ecx, [ebp - 0x658]
call fcn.00401b70
mov byte [ebp - 4], 0x81
lea ecx, [ebp - 0x684]
call fcn.00401b70
mov byte [ebp - 4], 0x7f
lea ecx, [ebp - 0x6b0]
call fcn.00401b70
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x6dc]
call fcn.00401b70
movd xmm0, dword [ebp + 8]
movd xmm1, dword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
cvtdq2pd xmm1, xmm1
mulsd xmm0, qword [0x6a7a50]
divsd xmm0, xmm1
call fcn.00425ea0
lea ecx, [ebp - 0x160]
call fcn.004018c0
mov byte [ebp - 4], 0x9f
movaps xmm1, xmm0
lea ecx, [ebp - 0x160]
mov dword [ebp - method.CWString.virtual_0], vtable.CWString.0
call fcn.004286f0
mov byte [ebp - 4], 0xa0
lea ecx, [ebp - 0x36c]
call fcn.004018c0
mov byte [ebp - 4], 0xa1
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x360], 0x4dd004
mov byte [ebp - 4], 0xa2
lea eax, [ebp - 0x160]
push eax
lea edx, [ebp - 0x36c]
lea ecx, [ebp - 0x134]
call fcn.00428e60
mov byte [ebp - 4], 0xa3
mov edx, eax
push 0x4dcffc
lea ecx, [ebp - 0x33c]
call fcn.00428fe0
add esp, 8
mov byte [ebp - 4], 0xa4
lea ecx, [ebx + 0x4d4]
push eax
call fcn.004071a0
mov byte [ebp - 4], 0xa5
lea eax, [ebp - 0x32c]
mov dword [ebp - 0x270], eax
mov dword [ebp - method.CWString.virtual_0], vtable.CVolMem.0
mov byte [ebp - 4], 0xa7
mov ecx, dword [ebp - 0x320]
test ecx, ecx
je 0x4111c5
mov eax, dword [ebp - 0x32c]
push ecx
mov eax, dword [eax + 0xc]
cmp eax, method.CWString.virtual_12
jne 0x4111bd
mov ecx, 0x6b75a8
call fcn.00428020
jmp 0x4111c5
lea ecx, [ebp - 0x32c]
call eax
mov dword [ebp - 0x320], 0
mov dword [ebp - 0x318], 0
mov dword [ebp - 0x31c], 0
mov byte [ebp - 4], 0xa5
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0xa3
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0xa8
lea eax, [ebp - 0x124]
mov dword [ebp - 0x274], eax
mov dword [ebp - method.CWString.virtual_0], vtable.CVolMem.0
mov byte [ebp - 4], 0xaa
mov ecx, dword [ebp - 0x118]
test ecx, ecx
je 0x41124c
mov eax, dword [ebp - 0x124]
push ecx
mov eax, dword [eax + 0xc]
cmp eax, method.CWString.virtual_12
jne 0x411244
mov ecx, 0x6b75a8
call fcn.00428020
jmp 0x41124c
lea ecx, [ebp - 0x124]
call eax
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x114], 0
mov byte [ebp - 4], 0xa8
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0xa2
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0xa0
lea ecx, [ebp - 0x36c]
call fcn.00401b70
mov byte [ebp - 4], 0xac
lea eax, [ebp - 0x150]
mov dword [ebp - 0x278], eax
mov dword [ebp - method.CWString.virtual_0], vtable.CVolMem.0
mov byte [ebp - 4], 0xae
mov ecx, dword [ebp - 0x144]
test ecx, ecx
je 0x4112e2
mov eax, dword [ebp - 0x150]
push ecx
mov eax, dword [eax + 0xc]
cmp eax, method.CWString.virtual_12
jne 0x4112da
mov ecx, 0x6b75a8
call fcn.00428020
jmp 0x4112e2
lea ecx, [ebp - 0x150]
call eax
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x140], 0
mov byte [ebp - 4], 0xac
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0x40
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
mov byte [ebp - 4], 0xaf
lea eax, [ebp - 0x48]
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x48], vtable.CVolMem.0
mov byte [ebp - 4], 0xb1
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
je 0x41135a
mov eax, dword [ebp - 0x48]
push ecx
mov eax, dword [eax + 0xc]
cmp eax, method.CWString.virtual_12
jne 0x411355
mov ecx, 0x6b75a8
call fcn.00428020
jmp 0x41135a
lea ecx, [ebp - 0x48]
call eax
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov byte [ebp - 4], 0xaf
mov dword [ebp - 0x48], vtable.CVolObject.0
mov byte [ebp - 4], 0x33
mov edx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x64]
mov eax, dword [ebp - 0x18]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x58], vtable.CVolObject.0
jmp 0x4103e0
push 1
push dword [ebx + 0x390]
call dword [0x6b76e0]
push 0
push dword [ebx + 0x780]
call dword [0x6b76e0]
push 0
push dword [ebx + 0x4e0]
call dword [0x6b76e0]
mov byte [ebp - 4], 0
mov dword [ebp - 0x2c], vtable.rg_n8532::rg_n8608.0
mov byte [ebp - 4], 0xb2
or dword [ebp - 0x28], 2
mov ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x4113df
mov eax, dword [ecx]
call dword [eax + 0x20]
mov byte [ebp - 4], 0
mov dword [ebp - 0x2c], vtable.CVolObject.0
jmp 0x4113ef
mov ebx, dword [ebp - 0x14]
push dword [ebx + 0x390]
call dword [0x6b76e4]
test eax, eax
jne 0x411447
lea ecx, [ebp - 0x36c]
call fcn.004018c0
mov byte [ebp - 4], 0xb4
mov dword [ebp - method.CWString.virtual_0], vtable.CWConstString.0
mov dword [ebp - 0x360], 0x4dd010
mov byte [ebp - 4], 0xb5
lea eax, [ebp - 0x36c]
push eax
lea ecx, [ebx + 0x384]
call fcn.00407270
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x36c]
call fcn.00401b70
push 1
push dword [ebx + 0x390]
call dword [0x6b76e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - method.CWString.virtual_0], vtable.rg_n8532::rg_n8533.0
mov dword [ebp - 4], 0xb7
or dword [ebp - 0x104], 2
mov ecx, dword [ebp - 0xfc]
test ecx, ecx
je 0x411483
mov eax, dword [ecx]
call dword [eax + 0x20]
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - method.CWString.virtual_0], vtable.CVolObject.0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8