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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x2c8
mov ebx, dword [ebp + 0x18]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x14]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x294], ebx
mov ebx, dword [ebp + 0x1c]
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x288], eax
mov dword [ebp - 0x2a0], ebx
mov ebx, dword [ebp + 0x20]
mov dword [ebp - 0x274], ecx
mov dword [ebp - 0x280], ebx
mov ebx, dword [ebp + 0x24]
mov dword [ebp - 0x278], edi
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x284], esi
mov dword [ebp - 0x290], ecx
test byte [0x10047154], 8
jne 0x1003e8f7
mov dword [ebp - 0x26c], 0
lea eax, [ebp - 0x264]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_GetSystemTimeAsFileTime]
mov dword [ebp - 0x268], 0
mov dword [ebp - 0x2a8], eax
call eax
mov eax, dword [ebp - 0x280]
sub esp, 4
lea ecx, [eax + ebx*2]
cmp ecx, eax
ja 0x1003dd7f
jmp 0x1003dd87
add eax, 2
cmp ecx, eax
jbe 0x1003dd87
cmp word [eax], 0x3b
jne 0x1003dd78
mov ecx, eax
mov dword [ebp - 0x29c], 0
mov eax, ecx
sub eax, dword [ebp - 0x280]
mov dword [ebp - 0x298], 0
sar eax, 1
mov dword [ebp - 0x2a4], eax
sub ebx, eax
lea esi, [esi]
cmp ebx, 1
ja 0x1003dfc0
mov dword [esp], 0x10047260
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov edi, dword [ebp - 0x284]
mov ebx, dword [ebp - 0x290]
sub esp, 4
mov esi, dword [ebp - 0x27c]
mov eax, dword [ebp - 0x278]
mov dword [esp], edi
mov dword [esp + 4], ebx
mov edx, esi
call sym._load_persistent_cookie.isra.0
mov ecx, dword [ebp - 0x298]
mov dword [esp], edi
mov edx, esi
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x278]
xor ecx, 1
mov dword [esp + 8], ecx
call sym._get_cookie_container
mov dword [ebp - 0x278], eax
test eax, eax
je 0x1003df9a
mov dword [ebp - 0x274], 1
mov eax, dword [ebp - 0x26c]
or eax, dword [ebp - 0x268]
jne 0x1003de47
or dword [ebp - 0x29c], 2
mov dword [ebp - 0x274], 0
mov edx, dword [ebp - 0x294]
mov ecx, dword [ebp - 0x2a0]
mov eax, dword [ebp - 0x278]
call sym._find_cookie
mov esi, eax
test eax, eax
je 0x1003deb4
mov eax, dword [eax + 0x14]
test ah, 0x20
je 0x1003de79
test dword [ebp + 0x28], 0x2000
je 0x1003f111
test al, 2
mov eax, 1
cmovne eax, dword [ebp - 0x274]
mov edx, dword [esi]
mov ebx, dword [sym.imp.ucrtbase.dll_free]
mov dword [ebp - 0x274], eax
mov eax, dword [esi + 4]
mov dword [edx + 4], eax
mov edx, dword [esi]
mov dword [eax], edx
mov eax, dword [esi + 0xc]
mov dword [esp], eax
call ebx
mov eax, dword [esi + 0x10]
mov dword [esp], eax
call ebx
mov dword [esp], esi
call ebx
test byte [0x10047154], 8
jne 0x1003e7b6
mov eax, dword [ebp - 0x298]
test eax, eax
je 0x1003e650
mov eax, dword [ebp - 0x274]
test eax, eax
je 0x1003df9a
lea esi, [ebp - 0x25c]
mov eax, dword [ebp - 0x2a8]
mov dword [esp], esi
call eax
mov eax, dword [ebp - 0x278]
sub esp, 4
mov ebx, dword [eax + 0x18]
add eax, 0x18
mov dword [ebp - 0x274], eax
mov edi, dword [ebx]
cmp eax, ebx
jne 0x1003df28
jmp 0x1003df86
test byte [ebx + 0x14], 2
je 0x1003ea76
mov eax, dword [edi]
mov ebx, edi
cmp edi, dword [ebp - 0x274]
je 0x1003df86
mov edi, eax
mov eax, dword [ebx + 0x18]
test eax, eax
jne 0x1003df36
mov ecx, dword [ebx + 0x1c]
test ecx, ecx
je 0x1003df10
lea eax, [ebx + 0x18]
mov dword [esp], esi
mov dword [esp + 4], eax
call dword [sym.imp.kernel32.dll_CompareFileTime]
sub esp, 8
test eax, eax
jle 0x1003df10
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
mov dword [ecx + 4], eax
mov ecx, dword [ebx]
mov dword [eax], ecx
mov eax, dword [ebx + 0xc]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_free]
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_free]
mov dword [esp], ebx
mov ebx, edi
call dword [sym.imp.ucrtbase.dll_free]
mov eax, dword [edi]
cmp edi, dword [ebp - 0x274]
jne 0x1003df26
mov eax, dword [ebp - 0x278]
mov eax, dword [eax + 8]
mov dword [esp], eax
call sym.wininet.dll_DeleteUrlCacheEntryW
sub esp, 4
mov dword [esp], 0x10047260
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov eax, 1
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
dec ebx
lea esi, [ecx + 2]
jmp 0x1003dfda
add esi, 2
dec ebx
je 0x1003ddb9
movzx eax, word [esi]
cmp ax, 0x20
je 0x1003dfd0
lea ecx, [esi + ebx*2]
mov edx, esi
cmp ecx, esi
ja 0x1003dffa
jmp 0x1003e002
add edx, 2
cmp ecx, edx
jbe 0x1003e002
movzx eax, word [edx]
cmp ax, 0x3b
jne 0x1003dff0
mov ecx, edx
cmp ebx, 6
ja 0x1003e048
cmp ebx, 4
ja 0x1003e247
mov edi, dword [sym.imp.ucrtbase.dll__wcsnicmp]
cmp ebx, 5
ja 0x1003e33c
mov edi, ecx
sub edi, esi
sar edi, 1
test byte [0x10047154], 1
jne 0x1003e450
cmp edi, ebx
ja 0x1003f5da
sub ebx, edi
jmp 0x1003ddb0
mov dword [ebp - 0x274], ecx
mov edi, dword [sym.imp.ucrtbase.dll__wcsnicmp]
mov dword [esp + 8], 7
mov dword [esp + 4], str.domain
mov dword [esp], esi
call edi
mov ecx, dword [ebp - 0x274]
test eax, eax
je 0x1003e1c0
mov dword [esp + 8], 5
mov dword [esp + 4], str.path
mov dword [esp], esi
call edi
mov ecx, dword [ebp - 0x274]
test eax, eax
je 0x1003e274
cmp ebx, 7
je 0x1003e33c
mov dword [ebp - 0x274], ecx
mov dword [esp + 8], 8
mov dword [esp + 4], str.expires
mov dword [esp], esi
call edi
mov ecx, dword [ebp - 0x274]
test eax, eax
je 0x1003e31b
mov dword [ebp - 0x274], ecx
mov dword [esp + 8], 6
mov dword [esp + 4], str.secure
mov dword [esp], esi
call edi
mov ecx, dword [ebp - 0x274]
test eax, eax
je 0x1003e365
mov dword [ebp - 0x274], ecx
mov dword [esp + 8], 8
mov dword [esp + 4], str.httponly
mov dword [esp], esi
call edi
mov ecx, dword [ebp - 0x274]
test eax, eax
je 0x1003e3b3
mov dword [ebp - 0x274], ecx
mov dword [esp + 8], 8
mov dword [esp + 4], str.version
mov dword [esp], esi
call edi
mov ecx, dword [ebp - 0x274]
test eax, eax
je 0x1003e3db
mov dword [ebp - 0x274], ecx
mov dword [esp + 8], 8
mov dword [esp + 4], str.max_age
mov dword [esp], esi
call edi
mov ecx, dword [ebp - 0x274]
mov edi, ecx
sub edi, esi
sar edi, 1
test eax, eax
jne 0x1003e01f
test byte [0x10047154], 4
je 0x1003e032
mov dword [esp + 0xc], str.Max_Age_ignored_n
mov dword [esp + 8], str.set_cookie
mov dword [esp + 4], 0x10047154
mov dword [esp], 2
mov dword [ebp - 0x274], ecx
call sym._wine_dbg_log.constprop.0
mov ecx, dword [ebp - 0x274]
jmp 0x1003e032
lea eax, [esi + 0xe]
mov dword [ebp - 0x274], eax
mov eax, ebx
sub eax, 7
mov dword [ebp - 0x288], eax
je 0x1003e1e1
cmp word [esi + 0xe], 0x2e
je 0x1003eaca
mov esi, ecx
mov dword [ebp - 0x28c], ecx
mov ecx, dword [ebp - 0x278]
mov eax, dword [ebp - 0x274]
mov dword [esp], ecx
mov ecx, dword [ebp - 0x27c]
sub esi, eax
mov dword [esp + 4], ecx
sar esi, 1
mov edx, esi
mov edi, esi
call sym._is_domain_legal_for_cookie
test eax, eax
je 0x1003f38b
test byte [0x10047154], 8
mov ecx, dword [ebp - 0x28c]
jne 0x1003e4ca
mov eax, dword [ebp - 0x274]
mov dword [ebp - 0x27c], esi
mov ebx, dword [ebp - 0x288]
mov dword [ebp - 0x278], eax
jmp 0x1003e032
mov dword [ebp - 0x274], ecx
mov dword [esp + 8], 5
mov dword [esp + 4], str.path
mov dword [esp], esi
call dword [sym.imp.ucrtbase.dll__wcsnicmp]
mov ecx, dword [ebp - 0x274]
test eax, eax
jne 0x1003e010
lea eax, [esi + 0xa]
mov esi, ecx
sub ebx, 5
sub esi, eax
mov dword [ebp - 0x284], eax
sar esi, 1
mov dword [ebp - 0x290], esi
mov edi, esi
test byte [0x10047154], 8
je 0x1003e032
shr eax, 0x10
mov dword [ebp - 0x274], ecx
je 0x1003eb03
mov edi, dword [ebp - 0x284]
mov dword [esp + 4], esi
mov dword [esp], edi
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov ecx, dword [ebp - 0x274]
mov edx, eax
sub esp, 8
mov eax, 0x10049043
test edx, edx
jne 0x1003e2e0
mov edx, esi
mov eax, edi
call sym._wine_dbgstr_wn.part.0
mov ecx, dword [ebp - 0x274]
mov dword [esp + 0x10], eax
mov edi, esi
mov dword [esp + 0xc], str.Parsing_new_path__s_n
mov dword [esp + 8], str.set_cookie
mov dword [esp + 4], 0x10047154
mov dword [esp], 3
mov dword [ebp - 0x274], ecx
call sym._wine_dbg_log.constprop.0
mov ecx, dword [ebp - 0x274]
jmp 0x1003e032
add esi, 0x10
mov edi, ecx
sub ebx, 8
sub edi, esi
cmp ecx, esi
jbe 0x1003e335
cmp edi, 0xfc
jbe 0x1003e566
sar edi, 1
jmp 0x1003e032
mov dword [ebp - 0x274], ecx
mov dword [esp + 8], 6
mov dword [esp + 4], str.secure
mov dword [esp], esi
call edi
mov ecx, dword [ebp - 0x274]
test eax, eax
jne 0x1003e01f
add esi, 0xc
mov edi, ecx
sub ebx, 6
sub edi, esi
sar edi, 1
test byte [0x10047154], 1
je 0x1003e032
mov dword [esp + 0xc], str.secure_not_handled_n
mov dword [esp + 8], str.set_cookie
mov dword [esp + 4], 0x10047154
mov dword [esp], 0
mov dword [ebp - 0x274], ecx
call sym._wine_dbg_log.constprop.0
mov ecx, dword [ebp - 0x274]
jmp 0x1003e032
add esi, 0x10
sub ebx, 8
test dword [ebp + 0x28], 0x2000
je 0x1003f466
mov dword [ebp - 0x29c], 0x2000
mov edi, ecx
sub edi, esi
sar edi, 1
jmp 0x1003e032
add esi, 0x10
mov edi, ecx
sub ebx, 8
sub edi, esi
sar edi, 1
test byte [0x10047154], 1
je 0x1003e032
mov eax, esi
mov dword [ebp - 0x274], ecx
shr eax, 0x10
je 0x1003f284
mov dword [esp + 4], ebx
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov ecx, dword [ebp - 0x274]
mov edx, eax
sub esp, 8
mov eax, 0x10049043
test edx, edx
jne 0x1003e435
mov edx, ebx
mov eax, esi
call sym._wine_dbgstr_wn.part.0
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x274], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.version_not_handled___s__n
jmp 0x1003e4a3
mov eax, esi
mov dword [ebp - 0x274], ecx
shr eax, 0x10
je 0x1003e8d9
mov dword [esp + 4], ebx
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov ecx, dword [ebp - 0x274]
mov edx, eax
sub esp, 8
mov eax, 0x10049043
test edx, edx
jne 0x1003e491
mov edx, ebx
mov eax, esi
call sym._wine_dbgstr_wn.part.0
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x274], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Unknown_additional_option__s_n
mov dword [esp + 8], str.set_cookie
mov dword [esp + 4], 0x10047154
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0
mov ecx, dword [ebp - 0x274]
jmp 0x1003e032
mov eax, dword [ebp - 0x274]
mov dword [ebp - 0x278], ecx
shr eax, 0x10
je 0x1003eae1
mov ebx, dword [ebp - 0x274]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov ecx, dword [ebp - 0x278]
mov edx, eax
sub esp, 8
mov eax, 0x10049043
test edx, edx
jne 0x1003e515
mov edx, esi
mov eax, ebx
call sym._wine_dbgstr_wn.part.0
mov ecx, dword [ebp - 0x278]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Parsing_new_domain__s_n
mov dword [esp + 8], str.set_cookie
mov dword [esp + 4], 0x10047154
mov dword [esp], 3
mov dword [ebp - 0x28c], ecx
call sym._wine_dbg_log.constprop.0
mov eax, dword [ebp - 0x274]
mov dword [ebp - 0x27c], esi
mov ebx, dword [ebp - 0x288]
mov ecx, dword [ebp - 0x28c]
mov dword [ebp - 0x278], eax
jmp 0x1003e032
lea edx, [ebx + ebx]
lea eax, [ebp - 0x214]
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp], eax
call sym._memcpy
lea edx, [ebp - 0x254]
mov dword [esp], esi
xor ecx, ecx
mov dword [esp + 4], edx
mov dword [esp + 8], 0
mov word [ebp + ebx*2 - 0x214], cx
call sym.wininet.dll_InternetTimeToSystemTimeW
mov ecx, dword [ebp - 0x274]
lea edx, [ebp - 0x254]
sub esp, 0xc
test eax, eax
je 0x1003e335
lea esi, [ebp - 0x26c]
mov dword [esp], edx
mov dword [esp + 4], esi
call dword [sym.imp.kernel32.dll_SystemTimeToFileTime]
lea eax, [ebp - 0x264]
sub esp, 8
mov dword [esp + 4], esi
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_CompareFileTime]
mov ecx, dword [ebp - 0x274]
sub esp, 8
test eax, eax
jle 0x1003e335
mov dword [ebp - 0x298], 1
test byte [0x10047154], 8
je 0x1003e335
mov dword [esp + 0xc], str.Cookie_already_expired._n
sar edi, 1
mov dword [esp + 8], str.set_cookie
mov dword [esp + 4], 0x10047154
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x298], 1
jmp 0x1003e032
mov edx, dword [ebp - 0x264]
mov ecx, dword [ebp - 0x260]
mov dword [esp + 4], 0x28
mov dword [esp], 1
mov ebx, dword [ebp - 0x26c]
mov dword [ebp - 0x284], edx
mov esi, dword [ebp - 0x268]
mov dword [ebp - 0x27c], ecx
call dword [sym.imp.ucrtbase.dll_calloc]
mov edi, eax
test eax, eax
je 0x1003eab0
mov ecx, dword [ebp - 0x27c]
mov edx, dword [ebp - 0x284]
mov dword [eax + 0x18], ebx
mov dword [eax + 0x1c], esi
mov dword [eax + 0x24], ecx
mov ecx, dword [ebp - 0x294]
mov dword [eax + 0x20], edx
mov eax, dword [ebp - 0x29c]
mov dword [edi + 4], edi
mov dword [edi + 0x14], eax
mov dword [edi], edi
test ecx, ecx
je 0x1003e726
mov esi, dword [ebp - 0x2a0]
xor ebx, ebx
test esi, esi
jne 0x1003e6e0
jmp 0x1003f5c8
cmp ebx, esi
je 0x1003f42a
movzx eax, word [ecx + ebx*2]
mov edx, ebx
inc ebx
test ax, ax
jne 0x1003e6d8
lea eax, [ebx + ebx]
mov ebx, edx
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_malloc]
mov esi, eax
test eax, eax
je 0x1003f601
lea eax, [ebx + ebx]
mov dword [esp], esi
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x294]
mov dword [esp + 4], eax
call sym._memcpy
xor eax, eax
mov dword [edi + 0xc], esi
mov word [esi + ebx*2], ax
mov ecx, dword [ebp - 0x280]
test ecx, ecx
je 0x1003e796
mov esi, dword [ebp - 0x2a4]
xor ebx, ebx
test esi, esi
jne 0x1003e750
jmp 0x1003f5f7
cmp esi, ebx
je 0x1003f421
movzx eax, word [ecx + ebx*2]
mov edx, ebx
inc ebx
test ax, ax
jne 0x1003e748
lea eax, [ebx + ebx]
mov ebx, edx
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_malloc]
mov esi, eax
test eax, eax
je 0x1003f619
lea eax, [ebx + ebx]
mov dword [esp], esi
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x280]
mov dword [esp + 4], eax
call sym._memcpy
xor eax, eax
mov dword [edi + 0x10], esi
mov word [esi + ebx*2], ax
mov eax, dword [ebp - 0x278]
mov edx, edi
call sym._add_cookie
mov eax, dword [ebp - 0x274]
test eax, eax
jne 0x1003dedd
jmp 0x1003df9a
mov eax, dword [ebp - 0x278]
mov ebx, dword [eax + 0xc]
test ebx, ebx
je 0x1003f504
mov eax, ebx
shr eax, 0x10
je 0x1003f4c2
mov eax, dword [ebp - 0x278]
mov edi, 0x10049043
mov esi, dword [eax + 0x10]
mov dword [esp], ebx
mov dword [esp + 4], esi
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
sub esp, 8
test eax, eax
jne 0x1003e7ff
mov edx, esi
mov eax, ebx
call sym._wine_dbgstr_wn.part.0
mov edi, eax
mov eax, dword [ebp - 0x278]
mov eax, dword [eax + 0x14]
mov ebx, dword [eax + 8]
test ebx, ebx
je 0x1003f5be
mov eax, ebx
shr eax, 0x10
je 0x1003f4a8
mov dword [esp + 4], 0xffffffff
mov esi, 0x10049043
mov dword [esp], ebx
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
sub esp, 8
test eax, eax
jne 0x1003f19f
cmp word [ebx], 0
je 0x1003f50e
mov esi, eax
lea eax, [eax + 1]
cmp word [ebx + esi*2 + 2], 0
jne 0x1003e849
mov eax, 0x224c
mov word [ebp - 0x214], ax
lea eax, [ebp - 0x212]
jmp 0x1003e8a5
cmp dx, 9
je 0x1003f2b3
cmp dx, 0xa
jne 0x1003f2d1
mov edx, 0x6e5c
add eax, 2
mov word [eax - 2], dx
lea edx, [esi - 1]
test esi, esi
jle 0x1003f171
lea ecx, [ebp - 0xf2]
cmp eax, ecx
ja 0x1003f171
mov esi, edx
movzx edx, word [ebx]
add ebx, 2
cmp dx, 0xd
je 0x1003f2a2
jbe 0x1003e86a
cmp dx, 0x22
je 0x1003f322
cmp dx, 0x5c
jne 0x1003f2c4
mov edx, 0x5c5c
add eax, 2
mov word [eax - 2], dx
jmp 0x1003e88a
movzx esi, si
mov dword [esp], 0x10049036
mov dword [esp + 4], esi
call sym._wine_dbg_sprintf.constprop.0
mov ecx, dword [ebp - 0x274]
jmp 0x1003e491
mov eax, dword [ebp - 0x280]
test eax, eax
je 0x1003f4dc
shr eax, 0x10
je 0x1003f0ef
mov eax, dword [ebp - 0x280]
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov dword [ebp - 0x29c], 0x10049043
sub esp, 8
test eax, eax
jne 0x1003e945
mov eax, dword [ebp - 0x280]
mov edx, ebx
call sym._wine_dbgstr_wn.part.0
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp - 0x294]
test eax, eax
je 0x1003f4eb
shr eax, 0x10
je 0x1003f333
mov eax, dword [ebp - 0x2a0]
mov ecx, dword [ebp - 0x294]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov dword [ebp - 0x298], 0x10049043
sub esp, 8
test eax, eax
jne 0x1003e99d
mov edx, dword [ebp - 0x2a0]
mov eax, dword [ebp - 0x294]
call sym._wine_dbgstr_wn.part.0
mov dword [ebp - 0x298], eax
test esi, esi
je 0x1003f457
mov eax, esi
shr eax, 0x10
je 0x1003f36d
mov eax, dword [ebp - 0x274]
mov dword [esp], esi
mov dword [esp + 4], eax
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov dword [ebp - 0x28c], 0x10049043
sub esp, 8
test eax, eax
jne 0x1003e9e7
mov edx, dword [ebp - 0x274]
mov eax, esi
call sym._wine_dbgstr_wn.part.0
mov dword [ebp - 0x28c], eax
test edi, edi
je 0x1003f4fa
mov eax, edi
shr eax, 0x10
je 0x1003f355
mov esi, dword [ebp - 0x288]
mov dword [esp], edi
mov dword [esp + 4], esi
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov edx, eax
sub esp, 8
mov eax, 0x10049043
test edx, edx
jne 0x1003ea24
mov edx, esi
mov eax, edi
call sym._wine_dbgstr_wn.part.0
mov edi, dword [ebp + 0x28]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str._s__s__s_s__lx_n
mov dword [esp + 0x20], edi
mov edi, dword [ebp - 0x29c]
mov dword [esp + 8], str.set_cookie
mov dword [esp + 0x1c], edi
mov edi, dword [ebp - 0x298]
mov dword [esp + 4], 0x10047154
mov dword [esp + 0x18], edi
mov edi, dword [ebp - 0x28c]
mov dword [esp], 3
mov dword [esp + 0x14], edi
call sym._wine_dbg_log.constprop.0
jmp 0x1003dd37
lea eax, [ebp - 0x214]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x278]
mov dword [esp + 8], 0x10049318
mov dword [esp + 4], 0
mov eax, dword [eax + 8]
mov dword [esp], eax
call sym.wininet.dll_CreateUrlCacheEntryW
sub esp, 0x14
test eax, eax
jne 0x1003eb25
mov dword [esp], 0x10047260
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
xor eax, eax
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
lea eax, [esi + 0x10]
mov dword [ebp - 0x274], eax
lea eax, [ebx - 8]
mov dword [ebp - 0x288], eax
jmp 0x1003e1e1
movzx eax, word [ebp - 0x274]
mov dword [esp], 0x10049036
mov dword [esp + 4], eax
call sym._wine_dbg_sprintf.constprop.0
mov ecx, dword [ebp - 0x278]
jmp 0x1003e515
movzx eax, word [ebp - 0x284]
mov dword [esp], 0x10049036
mov dword [esp + 4], eax
call sym._wine_dbg_sprintf.constprop.0
mov ecx, dword [ebp - 0x274]
jmp 0x1003e2e0
lea eax, [ebp - 0x214]
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40000000
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_CreateFileW]
sub esp, 0x1c
mov edi, eax
cmp eax, 0xffffffff
je 0x1003f0d8
mov eax, dword [ebp - 0x278]
mov esi, dword [eax + 0x18]
cmp esi, dword [ebp - 0x274]
jne 0x1003f095
jmp 0x1003f392
mov dword [esp + 8], edx
mov dword [ebp - 0x284], edx
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
sub esp, 0x20
mov dword [ebp - 0x27c], eax
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_malloc]
mov dword [ebp - 0x280], eax
mov ebx, eax
test eax, eax
je 0x1003f0a6
mov ecx, dword [ebp - 0x27c]
mov edx, dword [ebp - 0x284]
mov dword [esp + 0x10], eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x14], ecx
mov dword [esp + 8], edx
mov dword [esp + 0x18], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
mov eax, dword [sym.imp.ucrtbase.dll_strlen]
sub esp, 0x20
mov dword [esp], ebx
mov dword [ebp - 0x284], eax
call eax
lea ecx, [ebp - 0x270]
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
mov eax, dword [sym.imp.kernel32.dll_WriteFile]
mov dword [esp + 0xc], ecx
mov dword [esp + 4], ebx
mov dword [esp], edi
mov dword [ebp - 0x27c], eax
call eax
sub esp, 0x14
test eax, eax
je 0x1003f0b0
mov eax, dword [sym.imp.ucrtbase.dll_free]
mov dword [esp], ebx
mov dword [ebp - 0x280], eax
call eax
lea eax, [ebp - 0x270]
mov dword [esp], edi
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x27c]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x100492fc
call eax
sub esp, 0x14
test eax, eax
je 0x1003f160
mov edx, dword [esi + 0x10]
test edx, edx
je 0x1003f145
mov dword [esp + 8], edx
mov dword [ebp - 0x290], edx
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
sub esp, 0x20
mov dword [ebp - 0x28c], eax
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_malloc]
mov dword [ebp - 0x288], eax
mov ebx, eax
test eax, eax
je 0x1003f145
mov ecx, dword [ebp - 0x28c]
mov edx, dword [ebp - 0x290]
mov dword [esp + 0x10], eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x14], ecx
mov dword [esp + 8], edx
mov dword [esp + 0x18], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
mov eax, dword [ebp - 0x284]
sub esp, 0x20
mov dword [esp], ebx
call eax
lea ecx, [ebp - 0x270]
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x27c]
mov dword [esp + 0xc], ecx
mov dword [esp + 4], ebx
mov dword [esp], edi
call eax
sub esp, 0x14
test eax, eax
je 0x1003f14f
mov dword [esp], ebx
mov eax, dword [ebp - 0x280]
call eax
lea eax, [ebp - 0x270]
mov dword [esp], edi
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x27c]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x100492fc
call eax
sub esp, 0x14
test eax, eax
je 0x1003f160
mov eax, dword [ebp - 0x278]
mov eax, dword [eax + 0x14]
mov edx, dword [eax + 8]
test edx, edx
je 0x1003f145
mov dword [esp + 8], edx
mov dword [ebp - 0x290], edx
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
sub esp, 0x20
mov dword [ebp - 0x28c], eax
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_malloc]
mov dword [ebp - 0x288], eax
mov ebx, eax
test eax, eax
je 0x1003f145
mov ecx, dword [ebp - 0x28c]
mov edx, dword [ebp - 0x290]
mov dword [esp + 0x10], eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x14], ecx
mov dword [esp + 8], edx
mov dword [esp + 0x18], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
mov eax, dword [ebp - 0x284]
sub esp, 0x20
mov dword [esp], ebx
call eax
lea ecx, [ebp - 0x270]
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x27c]
mov dword [esp + 0xc], ecx
mov dword [esp + 4], ebx
mov dword [esp], edi
call eax
sub esp, 0x14
test eax, eax
je 0x1003f14f
mov dword [esp], ebx
mov eax, dword [ebp - 0x280]
call eax
mov ecx, dword [ebp - 0x278]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov eax, dword [ecx + 0x10]
mov dword [esp + 0xc], eax
mov eax, dword [ecx + 0xc]
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
mov dword [ebp - 0x288], eax
sub esp, 0x20
inc eax
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_malloc]
mov ebx, eax
test eax, eax
je 0x1003f5d2
mov ecx, dword [ebp - 0x278]
mov eax, dword [ebp - 0x288]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], eax
mov eax, dword [ecx + 0x10]
mov dword [esp + 0xc], eax
mov eax, dword [ecx + 0xc]
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
mov eax, dword [ebp - 0x288]
sub esp, 0x20
mov byte [ebx + eax], 0
mov eax, dword [ebp - 0x284]
mov dword [esp], ebx
call eax
lea ecx, [ebp - 0x270]
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x27c]
mov dword [esp + 0xc], ecx
mov dword [esp + 4], ebx
mov dword [esp], edi
call eax
sub esp, 0x14
test eax, eax
je 0x1003f5d2
mov dword [esp], ebx
mov eax, dword [ebp - 0x280]
lea ebx, [ebp - 0x254]
call eax
mov eax, dword [esi + 0x24]
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x20]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x1c]
mov dword [esp + 0x10], eax
mov eax, dword [esi + 0x18]
mov dword [esp + 0xc], eax
mov eax, dword [esi + 0x14]
mov dword [esp + 4], str._n_lu_n_lu_n_lu_n_lu_n_lu_n_n
mov dword [esp + 8], eax
mov dword [esp], ebx
call sym._sprintf.constprop.0
mov dword [esp], ebx
mov eax, dword [ebp - 0x284]
call eax
lea ecx, [ebp - 0x270]
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x27c]
mov dword [esp + 0xc], ecx
mov dword [esp + 4], ebx
mov dword [esp], edi
call eax
sub esp, 0x14
test eax, eax
je 0x1003f160
mov esi, dword [esi]
cmp esi, dword [ebp - 0x274]
je 0x1003f392
test byte [esi + 0x14], 2
jne 0x1003f087
mov edx, dword [esi + 0xc]
test edx, edx
jne 0x1003eb90
mov dword [ebp - 0x280], 0
mov eax, dword [ebp - 0x280]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_free]
mov dword [esp], edi
call dword [sym.imp.kernel32.dll_CloseHandle]
sub esp, 4
test byte [0x10047154], 2
jne 0x1003f581
lea eax, [ebp - 0x214]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteFileW]
sub esp, 4
jmp 0x1003eab0
movzx eax, word [ebp - 0x280]
mov dword [esp], 0x10049036
mov dword [esp + 4], eax
call sym._wine_dbg_sprintf.constprop.0
mov dword [ebp - 0x29c], eax
jmp 0x1003e945
test byte [0x10047154], 4
jne 0x1003f52f
mov eax, dword fs:[0x18]
mov dword [eax + 0x34], 0x10dd
mov dword [esp], 0x10047260
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov eax, 5
sub esp, 4
jmp 0x1003dfaf
mov dword [ebp - 0x288], 0
mov eax, dword [ebp - 0x288]
mov dword [esp], eax
mov eax, dword [ebp - 0x280]
call eax
mov dword [esp], edi
call dword [sym.imp.kernel32.dll_CloseHandle]
sub esp, 4
jmp 0x1003f0cb
mov byte [eax], 0x22
test edx, edx
jle 0x1003f527
mov ecx, 0x2e2e
mov byte [eax + 3], 0x2e
lea edx, [eax + 4]
mov word [eax + 1], cx
lea eax, [ebp - 0x214]
mov byte [edx], 0
mov dword [esp], eax
call sym.___wine_dbg_strdup
mov esi, eax
mov eax, dword [ebp - 0x280]
test eax, eax
je 0x1003f5b4
shr eax, 0x10
je 0x1003f48a
mov eax, dword [ebp - 0x2a4]
mov ecx, dword [ebp - 0x280]
mov ebx, 0x10049043
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
sub esp, 8
test eax, eax
jne 0x1003f1ee
mov edx, dword [ebp - 0x2a4]
mov eax, dword [ebp - 0x280]
call sym._wine_dbgstr_wn.part.0
mov ebx, eax
mov eax, dword [ebp - 0x294]
test eax, eax
je 0x1003f5aa
shr eax, 0x10
je 0x1003f43b
mov eax, dword [ebp - 0x2a0]
mov ecx, dword [ebp - 0x294]
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov edx, eax
sub esp, 8
mov eax, 0x10049043
test edx, edx
jne 0x1003f23d
mov edx, dword [ebp - 0x2a0]
mov eax, dword [ebp - 0x294]
call sym._wine_dbgstr_wn.part.0
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.setting_cookie__s_s_for_domain__s_path__s_n
mov dword [esp + 8], str.set_cookie
mov dword [esp + 4], 0x10047154
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0
mov eax, dword [ebp - 0x298]
test eax, eax
jne 0x1003decf
jmp 0x1003e650
movzx esi, si
mov dword [esp], 0x10049036
mov dword [esp + 4], esi
call sym._wine_dbg_sprintf.constprop.0
mov ecx, dword [ebp - 0x274]
jmp 0x1003e435
mov ecx, 0x725c
add eax, 2
mov word [eax - 2], cx
jmp 0x1003e88a
mov edx, 0x745c
add eax, 2
mov word [eax - 2], dx
jmp 0x1003e88a
lea ecx, [edx - 0x20]
cmp cx, 0x5e
jbe 0x1003f433
mov ecx, edx
mov byte [eax], 0x5c
add eax, 5
shr cx, 0xc
movzx ecx, cx
movzx ecx, byte [ecx + 0x10052220]
mov byte [eax - 4], cl
mov ecx, edx
shr cx, 8
and ecx, 0xf
movzx ecx, byte [ecx + 0x10052220]
mov byte [eax - 3], cl
mov ecx, edx
and edx, 0xf
shr cx, 4
movzx edx, byte [edx + 0x10052220]
and ecx, 0xf
movzx ecx, byte [ecx + 0x10052220]
mov byte [eax - 1], dl
mov byte [eax - 2], cl
jmp 0x1003e88a
mov ecx, 0x225c
add eax, 2
mov word [eax - 2], cx
jmp 0x1003e88a
movzx eax, word [ebp - 0x294]
mov dword [esp], 0x10049036
mov dword [esp + 4], eax
call sym._wine_dbg_sprintf.constprop.0
mov dword [ebp - 0x298], eax
jmp 0x1003e99d
movzx edi, di
mov dword [esp], 0x10049036
mov dword [esp + 4], edi
call sym._wine_dbg_sprintf.constprop.0
jmp 0x1003ea24
movzx esi, si
mov dword [esp], 0x10049036
mov dword [esp + 4], esi
call sym._wine_dbg_sprintf.constprop.0
mov dword [ebp - 0x28c], eax
jmp 0x1003e9e7
xor eax, eax
jmp 0x1003dfaf
mov dword [esp], edi
call dword [sym.imp.kernel32.dll_CloseHandle]
mov dword [ebp - 0x25c], 0
mov eax, dword [ebp - 0x25c]
mov dword [ebp - 0x258], 0
sub esp, 4
mov edx, dword [ebp - 0x258]
mov dword [esp + 0x10], eax
mov dword [esp + 8], eax
lea eax, [ebp - 0x214]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x278]
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0x10049318
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], edx
mov eax, dword [eax + 8]
mov dword [esp], eax
call sym.wininet.dll_CommitUrlCacheEntryW
sub esp, 0x2c
test eax, eax
jne 0x1003df9a
jmp 0x1003eab0
lea eax, [edx + edx + 4]
jmp 0x1003e761
lea eax, [edx + edx + 4]
jmp 0x1003e6f1
mov byte [eax], dl
inc eax
jmp 0x1003e88a
movzx eax, word [ebp - 0x294]
mov dword [esp], 0x10049036
mov dword [esp + 4], eax
call sym._wine_dbg_sprintf.constprop.0
jmp 0x1003f23d
mov dword [ebp - 0x28c], 0x1004903c
jmp 0x1003e9e7
test byte [0x10047154], 4
jne 0x1003f558
mov eax, dword fs:[0x18]
mov dword [eax + 0x34], 0x10dd
mov eax, 5
jmp 0x1003dfaf
movzx eax, word [ebp - 0x280]
mov dword [esp], 0x10049036
mov dword [esp + 4], eax
call sym._wine_dbg_sprintf.constprop.0
mov ebx, eax
jmp 0x1003f1ee
movzx ebx, bx
mov dword [esp], 0x10049036
mov dword [esp + 4], ebx
call sym._wine_dbg_sprintf.constprop.0
mov esi, eax
jmp 0x1003f19f
movzx ebx, bx
mov dword [esp], 0x10049036
mov dword [esp + 4], ebx
call sym._wine_dbg_sprintf.constprop.0
mov edi, eax
jmp 0x1003e7ff
mov dword [ebp - 0x29c], 0x1004903c
jmp 0x1003e945
mov dword [ebp - 0x298], 0x1004903c
jmp 0x1003e99d
mov eax, 0x1004903c
jmp 0x1003ea24
mov edi, 0x1004903c
jmp 0x1003e7ff
mov edx, 0x224c
mov byte [ebp - 0x212], 0x22
lea eax, [ebp - 0x212]
mov word [ebp - 0x214], dx
lea edx, [eax + 1]
jmp 0x1003f18c
mov dword [esp + 0xc], str.An_attempt_to_override_httponly_cookie_n
mov dword [esp + 8], str.set_cookie
mov dword [esp + 4], 0x10047154
mov dword [esp], 2
call sym._wine_dbg_log.constprop.0
jmp 0x1003f11e
mov dword [esp + 0xc], str.HTTP_only_cookie_added_without_INTERNET_COOKIE_HTTPONLY_flag_n
mov dword [esp + 8], str.set_cookie
mov dword [esp + 4], 0x10047154
mov dword [esp], 2
call sym._wine_dbg_log.constprop.0
jmp 0x1003f473
mov dword [esp + 0xc], str.error_saving_cookie_file_n
mov dword [esp + 8], str.save_persistent_cookie
mov dword [esp + 4], 0x10047154
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0
jmp 0x1003f0d8
mov eax, 0x1004903c
jmp 0x1003f23d
mov ebx, 0x1004903c
jmp 0x1003f1ee
mov esi, 0x1004903c
jmp 0x1003f19f
mov eax, 2
jmp 0x1003e6f1
mov dword [esp], ebx
jmp 0x1003f158
mov dword [esp + 8], 0x387
mov dword [esp + 4], str..._src_wine_dlls_wininet_cookie.c
mov dword [esp], str.str__len___len
call dword [sym.imp.ucrtbase.dll__assert]
mov eax, 2
jmp 0x1003e761
mov eax, dword [edi + 0x10]
mov ebx, dword [sym.imp.ucrtbase.dll_free]
mov dword [esp], eax
call ebx
mov dword [esp], edi
call ebx
jmp 0x1003eab0
mov eax, dword [edi + 0xc]
mov dword [edi + 0x10], 0
mov ebx, dword [sym.imp.ucrtbase.dll_free]
mov dword [esp], eax
call ebx
mov eax, dword [edi + 0x10]
mov dword [esp], eax
call ebx
mov dword [esp], edi
call ebx
jmp 0x1003eab0