Function at 0x40103f
Capabilities:
Check http status code
Connect to http server
Create directory
Create http request
Delete file
Download and write a file
Get common file path
Get file size
Get http content length
Parse url
Print debug messages
Read data from internet
Receive and write data from server to client
Receive data
Send data
Send http request
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x419538
push 0x40b8d0
mov eax, dword fs:[0]
push eax
push ecx
push ecx
mov eax, 0x5710
call fcn.00412d00
mov eax, dword [0x41b044]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x1c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x56a4], edi
mov esi, edx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x56b0], eax
xor ebx, ebx
mov dword [ebp - 0x5690], ebx
mov dword [ebp - 0x568c], ebx
mov dword [ebp - 0x565c], ebx
or dword [ebp - 0x566c], 0xffffffff
mov dword [ebp - 0x5664], ebx
mov dword [ebp - 0x5680], ebx
movsx eax, byte [eax]
push eax
push str.__c:_
push 5
lea eax, [ebp - 0x24]
push eax
call fcn.00406ec6
add esp, 0x10
lea eax, [ebp - 0x14c]
mov dword [ebp - 0x150], eax
push 3
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x150]
push eax
call fcn.00401e0a
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x5678], eax
lea ecx, [ebp - 0x14c]
cmp eax, ecx
je 0x401107
push eax
call fcn.00406d67
pop ecx
cmp dword [edi], ebx
je 0x40111c
push str.SaaSbeeTestMode00123578
push str.srid
push esi
call dword [sym.imp.WININET.dll_InternetSetCookieA]
mov dword [ebp - 4], ebx
push str.file:__
push esi
call fcn.00406e40
pop ecx
pop ecx
test eax, eax
je 0x40113f
mov dword [ebp - 0x5664], 1
jmp 0x401d4e
cmp dword [ebp + 0xc], ebx
je 0x401151
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
push dword [edi + 0x10]
push dword [edi + 8]
call dword [eax]
push ebx
push ebx
push ebx
push ebx
push str.Zoom.Launcher.Win
call dword [sym.imp.WININET.dll_InternetOpenA]
mov dword [ebp - 0x5690], eax
cmp eax, ebx
jne 0x4011bc
mov dword [ebp - 0x5664], 1
mov byte [ebp - 0x4b8], bl
push 0xff
push ebx
lea eax, [ebp - 0x4b7]
push eax
call fcn.004070d0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.InternetOpen_API_failed__error_code:__d
lea eax, [ebp - 0x4b8]
push eax
call fcn.00406bee
lea eax, [ebp - 0x4b8]
add esp, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jmp 0x401d4e
push 0x3c
push ebx
lea eax, [ebp - 0x5714]
push eax
call fcn.004070d0
add esp, 0xc
mov dword [ebp - 0x5714], 0x3c
lea eax, [ebp - 0x4658]
mov dword [ebp - 0x5704], eax
mov eax, 0x800
mov dword [ebp - 0x5700], eax
xor ecx, ecx
mov word [ebp - 0x56fc], cx
lea ecx, [ebp - 0x4e58]
mov dword [ebp - 0x56e8], ecx
mov dword [ebp - 0x56e4], eax
lea ecx, [ebp - 0x5658]
mov dword [ebp - 0x56e0], ecx
mov dword [ebp - 0x56dc], eax
lea eax, [ebp - 0x5714]
push eax
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push esi
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
push ebx
push ebx
push 3
mov eax, 0x417cc6
push eax
push eax
push dword [ebp - 0x56fc]
push dword [ebp - 0x5704]
push dword [ebp - 0x5690]
call dword [sym.imp.WININET.dll_InternetConnectA]
mov dword [ebp - 0x568c], eax
cmp eax, ebx
jne 0x4012a8
mov dword [ebp - 0x5664], 1
mov byte [ebp - 0x3b8], bl
push 0xff
push ebx
lea eax, [ebp - 0x3b7]
push eax
call fcn.004070d0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.InternetConnect_API_failed__error_code:__d
lea eax, [ebp - 0x3b8]
push eax
call fcn.00406bee
lea eax, [ebp - 0x3b8]
jmp 0x4011ad
lea eax, [ebp - 0x1eb8]
cmp dword [ebp - 0x56e4], ebx
je 0x4012be
push dword [ebp - 0x56e8]
jmp 0x4012c3
push 0x417d60
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp dword [ebp - 0x56dc], ebx
je 0x4012e5
push dword [ebp - 0x56e0]
lea eax, [ebp - 0x1eb8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov dword [ebp - 0x5660], ebx
mov dword [ebp - 0x5688], ebx
mov dword [ebp - 0x5684], 0x3c
mov esi, dword [sym.imp.WININET.dll_HttpQueryInfoA]
mov dword [ebp - 0x5660], ebx
mov eax, 0x1bb
xor ecx, ecx
cmp word [ebp - 0x56fc], ax
setne cl
dec ecx
and ecx, 0x800000
add ecx, 0x84401000
mov eax, ecx
push ebx
push eax
push ebx
push 0x417cc6
push str.HTTP_1.1
lea eax, [ebp - 0x1eb8]
push eax
push 0x417d70
push dword [ebp - 0x568c]
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov dword [ebp - 0x565c], eax
cmp eax, ebx
jne 0x40139e
mov dword [ebp - 0x5664], 1
mov byte [ebp - 0x5b8], bl
push 0xff
push ebx
lea eax, [ebp - 0x5b7]
push eax
call fcn.004070d0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.HttpOpenRequest_API_failed__error_code:__d
lea eax, [ebp - 0x5b8]
push eax
call fcn.00406bee
lea eax, [ebp - 0x5b8]
jmp 0x4011ad
push ebx
push 0x20
push 4
push ebx
push ebx
push 0x40000000
push dword [ebp - 0x56b0]
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x566c], eax
cmp eax, 0xffffffff
jne 0x401430
cmp dword [ebp + 0xc], ebx
je 0x4013e8
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
push dword [ebp - 0x5678]
call dword [eax + 4]
cmp eax, 4
jne 0x4013e8
mov dword [ebp - 0x5660], 1
jmp 0x401301
mov dword [ebp - 0x5664], 1
mov byte [ebp - 0x6b8], bl
push 0xff
push ebx
lea eax, [ebp - 0x6b7]
push eax
call fcn.004070d0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.CreateFile_API_failed__error_code:__d
lea eax, [ebp - 0x6b8]
push eax
call fcn.00406bee
lea eax, [ebp - 0x6b8]
jmp 0x4011ad
push ebx
push dword [ebp - 0x566c]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x5668], eax
xor eax, eax
cmp eax, ebx
jne 0x40144f
mov dword [ebp - 0x5668], ebx
mov dword [ebp - 0x56a8], ebx
cmp dword [ebp - 0x5668], ebx
je 0x4014fd
cmp dword [ebp - 0x5668], 0xffffffff
je 0x4014fd
lea eax, [ebp - 0x56d8]
push eax
push ebx
push ebx
push dword [ebp - 0x566c]
call dword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
je 0x4014fd
lea eax, [ebp - 0x56c0]
push eax
lea eax, [ebp - 0x56d8]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
push 0x1e
lea eax, [ebp - 0x44]
push eax
push ebx
lea eax, [ebp - 0x56c0]
push eax
call dword [sym.imp.WININET.dll_InternetTimeFromSystemTime]
lea eax, [ebp - 0x44]
push eax
push dword [ebp - 0x5668]
push str.Range:_bytes_d__r_nIf_Range:__s_r_n
lea eax, [ebp - 0x1b8]
push eax
call fcn.00406bee
add esp, 0x10
push 0xa0000000
lea eax, [ebp - 0x1b8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp - 0x1b8]
push eax
push dword [ebp - 0x565c]
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersA]
mov dword [ebp - 0x56a8], 1
mov dword [ebp - 0x5674], 1
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x565c]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
jne 0x4015bd
cmp dword [ebp - 0x5674], ebx
je 0x4015c5
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
sub eax, 0x2ee2
je 0x401570
sub eax, 5
je 0x401570
sub eax, 0x16
je 0x401570
mov dword [ebp - 0x5674], ebx
cmp dword [ebp + 0xc], ebx
je 0x4015b2
push ebx
push 7
push esi
push dword [ebp - 0x565c]
push ebx
call dword [sym.imp.WININET.dll_InternetErrorDlg]
test eax, eax
jne 0x4015b2
mov dword [ebp - 0x5674], 1
jmp 0x4015b2
mov dword [ebp - 0x5674], ebx
cmp dword [ebp + 0xc], ebx
je 0x4015b2
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
call dword [eax + 0x24]
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
cmp esi, 0x2ee2
jne 0x401595
call dword [eax + 8]
jmp 0x401598
call dword [eax + 0xc]
mov dword [ebp - 0x5660], eax
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
call dword [eax + 0x20]
mov eax, dword [ebp - 0x5660]
mov dword [ebp - 0x5674], eax
mov esi, dword [sym.imp.WININET.dll_HttpQueryInfoA]
jmp 0x401507
cmp dword [ebp - 0x5674], ebx
jne 0x40160d
mov dword [ebp - 0x5664], 1
mov byte [ebp - 0x150], bl
push 0xff
push ebx
lea eax, [ebp - 0x14f]
push eax
call fcn.004070d0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.HttpSendRequest_API_failed__error_code:__d
lea eax, [ebp - 0x150]
push eax
call fcn.00406bee
lea eax, [ebp - 0x150]
jmp 0x4011ad
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x567c], ebx
mov dword [ebp - 0x569c], 4
push ebx
lea eax, [ebp - 0x569c]
push eax
lea eax, [ebp - 0x567c]
push eax
push 0x20000013
push dword [ebp - 0x565c]
call esi
test eax, eax
jne 0x401649
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x5674], 1
cmp dword [ebp - 0x567c], 0x197
je 0x40166b
cmp dword [ebp - 0x567c], 0x191
jne 0x4016d8
cmp dword [ebp - 0x5674], ebx
je 0x4016d8
push ebx
push 7
push 0x2eee
push dword [ebp - 0x565c]
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.WININET.dll_InternetErrorDlg]
cmp eax, 0x4c7
jne 0x40169d
mov dword [ebp - 0x5674], ebx
jmp 0x401653
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x565c]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
mov dword [ebp - 0x569c], 4
push ebx
lea eax, [ebp - 0x569c]
push eax
lea eax, [ebp - 0x567c]
push eax
push 0x20000013
push dword [ebp - 0x565c]
call esi
jmp 0x401653
mov byte [ebp - 0x2b8], bl
push 0xff
push ebx
lea eax, [ebp - 0x2b7]
push eax
call fcn.004070d0
push dword [ebp - 0x567c]
push str.HttpQueryInfo_status:__d
lea eax, [ebp - 0x2b8]
push eax
call fcn.00406bee
add esp, 0x18
lea eax, [ebp - 0x2b8]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp - 0x567c]
cmp eax, 0xc8
je 0x401aa1
cmp eax, 0xce
je 0x401aa1
cmp eax, 0x1a0
jne 0x40174f
cmp dword [ebp - 0x5668], ebx
je 0x40174f
cmp dword [ebp - 0x5668], 0xffffffff
jne 0x401b94
cmp eax, 0x193
jne 0x40198a
mov dword [ebp - 0x5668], ebx
mov dword [ebp - 0x56c4], 4
push ebx
lea eax, [ebp - 0x56c4]
push eax
lea eax, [ebp - 0x5668]
push eax
push 0x20000005
push dword [ebp - 0x565c]
call esi
mov eax, dword [ebp - 0x5668]
cmp eax, ebx
jbe 0x401969
add eax, 5
push eax
call fcn.00406c89
pop ecx
mov dword [ebp - 0x5670], eax
mov ecx, dword [ebp - 0x5668]
mov byte [eax + ecx], bl
mov dword [ebp - 0x5678], ebx
lea ecx, [ebp - 0x5678]
push ecx
push dword [ebp - 0x5668]
push eax
push dword [ebp - 0x565c]
call dword [sym.imp.WININET.dll_InternetReadFile]
mov eax, dword [ebp - 0x5678]
cmp eax, dword [ebp - 0x5668]
jne 0x401957
push 0x10
push ebx
lea eax, [ebp - 0x56c0]
push eax
call fcn.004070d0
add esp, 0xc
lea eax, [ebp - 0x56c0]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push 0x2f
mov esi, dword [ebp - 0x56a4]
push dword [esi + 0xc]
call fcn.00407340
pop ecx
pop ecx
mov edi, eax
cmp edi, ebx
jne 0x401824
push 0x5c
push dword [esi + 0xc]
call fcn.00407340
pop ecx
pop ecx
mov edi, eax
mov byte [ebp - 0xeb8], bl
mov esi, 0x3ff
push esi
push ebx
lea eax, [ebp - 0xeb7]
push eax
call fcn.004070d0
add esp, 0xc
cmp edi, ebx
lea eax, [edi + 1]
jne 0x40184c
mov eax, str.NULL
push eax
movzx eax, word [ebp - 0x56b4]
push eax
movzx eax, word [ebp - 0x56b6]
push eax
movzx eax, word [ebp - 0x56b8]
push eax
movzx eax, word [ebp - 0x56ba]
push eax
movzx eax, word [ebp - 0x56be]
push eax
movzx eax, word [ebp - 0x56c0]
push eax
push str.launcher_downloader_403___d__d__d___d__d__d___s.log
push 0x3e8
lea eax, [ebp - 0xeb8]
push eax
call fcn.00406c6b
mov byte [ebp - 0xab8], bl
push esi
push ebx
lea eax, [ebp - 0xab7]
push eax
call fcn.004070d0
add esp, 0x34
push ebx
push 0x1a
lea eax, [ebp - 0xab8]
push eax
push ebx
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
cmp eax, ebx
je 0x401957
mov edi, 0x417e70
push edi
mov esi, 0x400
push esi
lea eax, [ebp - 0xab8]
push eax
call fcn.0040736d
push str.zlauncher
push esi
lea eax, [ebp - 0xab8]
push eax
call fcn.0040736d
add esp, 0x18
push ebx
lea eax, [ebp - 0xab8]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push edi
push esi
lea eax, [ebp - 0xab8]
push eax
call fcn.0040736d
lea eax, [ebp - 0xeb8]
push eax
push esi
lea eax, [ebp - 0xab8]
push eax
call fcn.0040736d
push 0x417e80
lea eax, [ebp - 0xab8]
push eax
call fcn.00407039
add esp, 0x20
mov esi, eax
cmp esi, ebx
je 0x401957
push esi
push dword [ebp - 0x5678]
push 1
push dword [ebp - 0x5670]
call fcn.004072b7
push esi
call fcn.004074a9
add esp, 0x14
push dword [ebp - 0x5670]
call fcn.0040714a
pop ecx
mov edi, dword [ebp - 0x56a4]
cmp dword [ebp + 0xc], ebx
je 0x401130
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
push 0x417e84
call dword [eax + 0x14]
mov dword [ebp - 0x5660], eax
jmp 0x401130
lea ecx, [eax - 0x190]
cmp ecx, 0xc7
ja 0x401a5b
cmp eax, 0x1f4
jne 0x4019ca
cmp dword [ebp + 0xc], ebx
je 0x4019bb
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
push 0x417e8c
call dword [eax + 0x18]
mov dword [ebp - 0x5660], eax
mov dword [ebp - 0x5664], 1
jmp 0x401a86
cmp eax, 0x1f7
jne 0x401a5b
cmp dword [ebp - 0x5688], 5
jge 0x401a2a
mov eax, dword [ebp - 0x5684]
mov dword [ebp - 0x56a0], eax
cmp dword [ebp - 0x56a0], ebx
jl 0x401a18
cmp dword [ebp + 0xc], ebx
je 0x401a05
push str.Retry
xor eax, eax
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
dec dword [ebp - 0x56a0]
jmp 0x4019ea
inc dword [ebp - 0x5688]
add dword [ebp - 0x5684], 0x1e
jmp 0x4013d9
cmp dword [ebp + 0xc], ebx
je 0x401a86
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
push 0x417e9c
call dword [eax + 0x1c]
mov dword [ebp - 0x5660], eax
cmp eax, ebx
je 0x401a86
mov dword [ebp - 0x5688], ebx
mov dword [ebp - 0x5684], 0x3c
jmp 0x401d42
cmp dword [ebp + 0xc], ebx
je 0x401a86
push eax
push 0x417ea4
push 0xa
lea eax, [ebp - 0x3c]
push eax
call fcn.00406c94
add esp, 0x10
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
lea edx, [ebp - 0x3c]
push edx
call dword [eax + 0x18]
mov dword [ebp - 0x5660], eax
cmp dword [ebp - 0x5660], ebx
jne 0x401d0c
mov dword [ebp - 0x5664], 1
jmp 0x401d0c
mov dword [ebp - 0x5680], ebx
mov dword [ebp - 0x56d0], 4
push ebx
lea eax, [ebp - 0x56d0]
push eax
lea eax, [ebp - 0x5680]
push eax
push 0x20000005
push dword [ebp - 0x565c]
call esi
mov eax, dword [ebp - 0x5680]
cmp eax, ebx
ja 0x401ae6
mov dword [ebp - 0x5680], 0xe4e1c0
jmp 0x401bb9
cmp dword [ebp - 0x56a8], ebx
je 0x401bb9
cmp dword [ebp - 0x5668], ebx
je 0x401bb9
cmp eax, dword [ebp - 0x5668]
jne 0x401bb9
mov dword [ebp - 0x56ac], 0x100
push ebx
lea eax, [ebp - 0x56ac]
push eax
lea eax, [ebp - 0x2b8]
push eax
push 0x35
push dword [ebp - 0x565c]
call esi
test eax, eax
jne 0x401bb9
push ebx
lea eax, [ebp - 0x56ac]
push eax
lea eax, [ebp - 0x2b8]
push eax
push 0xb
push dword [ebp - 0x565c]
call esi
push ebx
test eax, eax
je 0x401b9f
lea eax, [ebp - 0x5724]
push eax
lea eax, [ebp - 0x2b8]
push eax
call dword [sym.imp.WININET.dll_InternetTimeToSystemTime]
lea eax, [ebp - 0x56c8]
push eax
lea eax, [ebp - 0x5724]
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
lea eax, [ebp - 0x56c8]
push eax
lea eax, [ebp - 0x56d8]
push eax
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
cmp eax, 1
jne 0x401bb9
mov dword [ebp - 0x5664], ebx
jmp 0x401d4e
push ebx
push ebx
push dword [ebp - 0x566c]
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push dword [ebp - 0x566c]
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
mov esi, 0x1fa0
mov dword [ebp - 0x5670], ebx
mov dword [ebp - 0x5698], ebx
mov dword [ebp - 0x5694], ebx
cmp dword [ebp - 0x567c], 0xce
jne 0x401bee
push 2
push ebx
push ebx
push dword [ebp - 0x566c]
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
jmp 0x401c09
push ebx
push ebx
push ebx
push dword [ebp - 0x566c]
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push dword [ebp - 0x566c]
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
mov dword [ebp - 0x5670], ebx
lea eax, [ebp - 0x5670]
push eax
push esi
lea eax, [ebp - 0x3e58]
push eax
push dword [ebp - 0x565c]
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x401cf6
cmp dword [ebp - 0x5670], ebx
je 0x401c9e
mov dword [ebp - 0x56cc], ebx
push ebx
lea eax, [ebp - 0x56cc]
push eax
push dword [ebp - 0x5670]
lea eax, [ebp - 0x3e58]
push eax
push dword [ebp - 0x566c]
call dword [sym.imp.KERNEL32.dll_WriteFile]
cmp eax, ebx
jne 0x401c9e
cmp dword [ebp + 0xc], ebx
je 0x401ce8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [edi + 0x14]
push dword [ebp - 0x5678]
cmp eax, 0x70
mov eax, dword [ecx]
jne 0x401c85
call dword [eax + 0x10]
jmp 0x401c88
call dword [eax + 4]
mov dword [ebp - 0x5660], eax
cmp eax, ebx
jne 0x401ce8
mov dword [ebp - 0x5664], 1
jmp 0x401d00
mov eax, dword [ebp - 0x5670]
add dword [ebp - 0x5698], eax
mov eax, dword [edi + 0x14]
mov ecx, dword [eax]
push dword [ebp - 0x5670]
push eax
call dword [ecx + 0x28]
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
call dword [eax + 0x30]
test eax, eax
je 0x401ce8
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
push dword [ebp - 0x5698]
push dword [ebp - 0x5680]
call dword [eax + 0x34]
mov dword [ebp - 0x5694], 1
jmp 0x401130
cmp dword [ebp - 0x5670], ebx
jne 0x401c09
jmp 0x401d00
mov dword [ebp - 0x5694], 1
cmp dword [ebp - 0x5694], ebx
jne 0x401130
cmp dword [ebp - 0x565c], ebx
je 0x401d26
push dword [ebp - 0x565c]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [ebp - 0x565c], ebx
cmp dword [ebp - 0x566c], 0xffffffff
je 0x401d42
push dword [ebp - 0x566c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
or dword [ebp - 0x566c], 0xffffffff
cmp dword [ebp - 0x5660], ebx
jne 0x4012fb
mov dword [ebp - 4], 0xfffffffe
call fcn.00401d7d
cmp dword [ebp - 0x5664], ebx
jne 0x401dcf
cmp dword [edi + 0x14], ebx
je 0x401d71
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
push 1
call dword [eax + 0x38]
xor eax, eax
jmp 0x401dee
push dword [ebp - 0x56b0]
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp dword [edi + 0x14], ebx
je 0x401de9
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
push ebx
call dword [eax + 0x38]
mov eax, 0x80004005
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.00406bdf
leave
ret 8