Function at 0x411470
Capabilities:
Delete file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
lea edi, [ebp - 0x2e]
push ebx
sub esp, 0x4c
mov eax, dword [sym.imp.kernel32.dll_CreateFileW]
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], pe_nt_image_headers32
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x80000000
mov dword [esp], str.test.txt
mov dword [ebp - 0x38], eax
call eax
sub esp, 0x1c
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_CloseHandle]
mov dword [ebp - 0x34], eax
call eax
sub esp, 4
mov dword [esp], str.test.txt
call dword [sym.imp.oleaut32.dll_SysAllocString]
mov ebx, eax
xor eax, eax
sub esp, 4
mov word [ebp - 0x2e], ax
mov eax, dword [0x448004]
mov edx, dword [eax]
mov dword [esp + 8], edi
lea edi, [ebp - 0x2c]
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x44]
sub esp, 0xc
mov esi, eax
mov eax, 0x119
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, 0x11a
call fcn.00406da0
movsx edx, word [ebp - 0x2e]
xor eax, eax
mov dword [esp + 4], str.got__x_n
cmp dx, 0xffff
mov dword [esp + 8], edx
sete al
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [0x448004]
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0xa
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x11e
call fcn.00406da0
xor eax, eax
cmp esi, 0x80070057
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [0x448004]
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 9
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x121
call fcn.00406da0
xor eax, eax
cmp esi, 0x80070057
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [0x448004]
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 3
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x124
call fcn.00406da0
xor eax, eax
cmp esi, 0x80070057
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [0x448004]
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 8
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x127
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x24]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [edx + 0x2c]
sub esp, 0xc
mov esi, eax
mov eax, 0x129
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
mov eax, dword [0x448004]
sub esp, 4
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 2
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x12d
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x24]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [edx + 0x2c]
sub esp, 0xc
mov esi, eax
mov eax, 0x12f
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
mov eax, dword [0x448004]
sub esp, 4
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 1
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x133
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x3c]
sub esp, 8
mov esi, eax
mov eax, 0x137
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x38]
sub esp, 8
mov esi, eax
mov eax, 0x13a
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp + 4], 0
mov dword [esp], eax
call dword [edx + 0x24]
sub esp, 8
mov esi, eax
mov eax, 0x13d
call fcn.00406da0
xor eax, eax
cmp esi, 0x80004003
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, 0xa
lea ecx, [ebp - 0x2e]
mov word [ebp - 0x2e], ax
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x24]
sub esp, 8
mov esi, eax
mov eax, 0x141
call fcn.00406da0
mov eax, 1
test esi, esi
je 0x411919
mov eax, dword [0x448050]
test eax, eax
sete dl
xor eax, eax
cmp esi, 1
sete al
and eax, edx
mov dword [esp + 8], esi
mov dword [esp], eax
mov dword [esp + 4], str.Unexpected_hr__lx._n
call fcn.004077c0
mov eax, 0x142
call fcn.00406da0
movsx edx, word [ebp - 0x2e]
mov dword [esp + 4], str.got_0x_x_n
cmp dx, 0xffff
mov dword [esp + 8], edx
sete al
movzx eax, al
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
mov eax, dword [0x448004]
sub esp, 4
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 2
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x147
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, 0xa
lea ecx, [ebp - 0x2e]
mov word [ebp - 0x2e], ax
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x24]
sub esp, 8
mov esi, eax
mov eax, 0x14b
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, 0x14c
call fcn.00406da0
movsx ecx, word [ebp - 0x2e]
mov eax, 1
cmp cx, 0xffff
je 0x411a37
mov esi, dword [0x448050]
test esi, esi
sete al
cmp cx, 0xa
sete dl
movzx edx, dl
and eax, edx
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [esp + 4], str.got_0x_x_n
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, 0xa
lea ecx, [ebp - 0x2e]
mov word [ebp - 0x2e], dx
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x28]
mov ecx, dword [0x448050]
sub esp, 8
mov esi, eax
mov dword [ebp - 0x3c], ecx
call fcn.00416600
mov ecx, dword [eax + 0x10]
mov dword [eax + 0x14], 1
lea edx, [ecx + ecx]
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
setne cl
movzx ecx, cl
or edx, ecx
mov dword [eax + 0x10], edx
jmp 0x411b23
call fcn.00416600
mov dword [eax], 0x41b595
mov dword [eax + 4], 0x151
xor eax, eax
cmp esi, 0x800a0036
sete al
mov dword [esp + 8], esi
mov dword [esp], eax
mov dword [esp + 4], str.Unexpected_hr__lx._n
call fcn.004077c0
call fcn.00416600
movsx ecx, word [ebp - 0x2e]
mov dword [eax], 0x41b595
mov dword [eax + 4], 0x152
mov eax, 1
test cx, cx
je 0x411b07
mov eax, dword [0x448050]
test eax, eax
sete al
cmp cx, 0xa
sete dl
movzx edx, dl
and eax, edx
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [esp + 4], str.got_0x_x_n
call fcn.004077c0
call fcn.00416600
shr dword [eax + 0x10], 1
call fcn.00416600
mov edx, dword [eax + 0x14]
mov dword [eax + 0x14], 0
test edx, edx
jne 0x411aa0
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x24]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [edx + 0x2c]
sub esp, 0xc
mov esi, eax
mov eax, 0x155
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x24]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x30]
sub esp, 8
mov esi, eax
mov eax, 0x158
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x24]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x34]
sub esp, 8
mov esi, eax
mov eax, 0x15b
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
mov eax, dword [0x448004]
sub esp, 4
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 8
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x160
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, 0xa
lea ecx, [ebp - 0x2e]
mov word [ebp - 0x2e], ax
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x24]
sub esp, 8
mov esi, eax
mov eax, 0x164
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, 0x165
call fcn.00406da0
movsx ecx, word [ebp - 0x2e]
mov eax, 1
cmp cx, 0xffff
je 0x411cdf
mov eax, dword [0x448050]
test eax, eax
sete al
cmp cx, 0xa
sete dl
movzx edx, dl
and eax, edx
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [esp + 4], str.got_0x_x_n
call fcn.004077c0
mov eax, 0xa
lea ecx, [ebp - 0x2e]
mov word [ebp - 0x2e], ax
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x28]
mov ecx, dword [0x448050]
sub esp, 8
mov esi, eax
mov dword [ebp - 0x3c], ecx
call fcn.00416600
mov ecx, dword [eax + 0x10]
mov dword [eax + 0x14], 1
lea edx, [ecx + ecx]
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
setne cl
movzx ecx, cl
or edx, ecx
mov dword [eax + 0x10], edx
jmp 0x411dcb
call fcn.00416600
mov dword [eax], 0x41b595
mov dword [eax + 4], 0x16a
xor eax, eax
cmp esi, 0x800a0036
sete al
mov dword [esp + 8], esi
mov dword [esp], eax
mov dword [esp + 4], str.Unexpected_hr__lx._n
call fcn.004077c0
call fcn.00416600
movsx ecx, word [ebp - 0x2e]
mov dword [eax], 0x41b595
mov dword [eax + 4], 0x16b
mov eax, 1
test cx, cx
je 0x411daf
mov eax, dword [0x448050]
test eax, eax
sete al
cmp cx, 0xa
sete dl
movzx edx, dl
and eax, edx
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [esp + 4], str.got_0x_x_n
call fcn.004077c0
call fcn.00416600
shr dword [eax + 0x10], 1
call fcn.00416600
mov edx, dword [eax + 0x14]
mov dword [eax + 0x14], 0
test edx, edx
jne 0x411d48
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x24]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [edx + 0x2c]
sub esp, 0xc
mov esi, eax
mov eax, 0x16e
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x24]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x30]
sub esp, 8
mov esi, eax
mov eax, 0x171
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x24]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x34]
sub esp, 8
mov esi, eax
mov eax, 0x174
call fcn.00406da0
xor eax, eax
cmp esi, 0x800a0036
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
sub esp, 4
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], pe_nt_image_headers32
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40000000
mov dword [esp], str.test.txt
mov eax, dword [ebp - 0x38]
call eax
sub esp, 0x1c
mov esi, eax
lea eax, [ebp - 0x28]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x12
mov dword [esp + 4], str.test.txt
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_WriteFile]
mov dword [ebp - 0x38], eax
sub esp, 0x14
mov eax, 0x17b
call fcn.00406da0
mov edx, dword [ebp - 0x38]
xor eax, eax
test edx, edx
je 0x411f43
xor eax, eax
cmp dword [ebp - 0x28], 0x12
sete al
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], str.got__d_n
call fcn.004077c0
mov dword [esp], esi
mov eax, dword [ebp - 0x34]
call eax
mov eax, dword [0x448004]
sub esp, 4
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 2
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x180
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
mov ecx, 0x41b5be
xor edx, edx
mov eax, str.test.txt
sub esp, 4
mov dword [esp], 0x183
call fcn.00411150
mov eax, dword [0x448004]
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0xc], 0
mov dword [esp + 8], 8
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x187
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
mov ecx, 0x41bfa4
mov edx, 2
mov eax, str.test.txt
sub esp, 4
mov dword [esp], 0x18a
call fcn.00411150
mov eax, dword [0x448004]
mov edx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0xfffffffe
mov dword [esp + 0xc], 0
mov dword [esp + 8], 8
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x18e
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [edx + 0x38]
sub esp, 8
mov esi, eax
mov eax, 0x190
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
lea esi, [ebp - 0x20]
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
xor eax, eax
sub esp, 4
lea esi, [esi]
movzx edx, word [eax + 0x41bfa4]
mov word [esi + eax], dx
add eax, 2
test dx, dx
jne 0x412108
cmp word [ebp - 0x20], 0
mov edx, esi
je 0x412131
lea esi, [esi]
add edx, 2
cmp word [edx], 0
jne 0x412128
xor eax, eax
lea esi, [esi]
nop
movzx ecx, word [ebx + eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x412138
cmp word [ebp - 0x20], 0
je 0x412270
mov edx, esi
lea esi, [esi]
add edx, 2
cmp word [edx], 0
jne 0x412158
sub edx, esi
mov dword [esp], 0x195
mov ecx, esi
mov eax, str.test.txt
call fcn.00411150
mov eax, dword [0x448004]
mov edx, dword [eax]
mov dword [esp + 0x14], edi
lea edi, [ebp - 0x2e]
mov dword [esp + 4], ebx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 1
mov dword [esp], eax
call dword [edx + 0x7c]
sub esp, 0x18
mov esi, eax
mov eax, 0x198
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, 0xa
mov word [ebp - 0x2e], ax
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp + 4], edi
mov dword [esp], eax
call dword [edx + 0x24]
sub esp, 8
mov esi, eax
mov eax, 0x19b
call fcn.00406da0
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Unexpected_hr__lx._n
mov dword [esp], eax
call fcn.004077c0
mov eax, 0x19c
call fcn.00406da0
movsx edx, word [ebp - 0x2e]
mov dword [esp + 4], str.got_0x_x_n
test dx, dx
mov dword [esp + 8], edx
sete al
movzx eax, al
mov dword [esp], eax
call fcn.004077c0
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
sub esp, 4
mov dword [esp], ebx
call dword [sym.imp.oleaut32.dll_SysFreeString]
sub esp, 4
mov dword [esp], str.test.txt
call dword [sym.imp.kernel32.dll_DeleteFileW]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
xor edx, edx
jmp 0x412163