Function at 0x4694fc
Capabilities:
Initialize winhttp library
Make an http request with a cookie
Prepare http request
Read http header
Receive http response
Resolve function by parsing pe exports
Send data
Send http request
Set http header

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x490c63
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x1140
call fcn.00485c60
mov eax, dword [0x4b14c4]
xor eax, esp
mov dword [esp + 0x113c], eax
push esi
push edi
mov eax, dword [0x4b14c4]
xor eax, esp
push eax
lea eax, [esp + 0x1150]
mov dword fs:[0], eax
mov eax, dword [ebx + 0x18]
xor edi, edi
cmp eax, edi
ja 0x469558
mov dword [ebx + 0x11c], 3
jmp 0x46a388
push ecx
lea esi, [esp + 0xec]
call fcn.00405b15
mov dword [esp + 0x1158], edi
cmp dword [esp + 0xfc], 8
mov eax, dword [esp + 0xe8]
jae 0x46957f
mov eax, esi
push 0x49e26c
push eax
call fcn.0047a398
pop ecx
pop ecx
test eax, eax
jne 0x469597
mov esi, 0x49e26c
jmp 0x4695c5
cmp dword [esp + 0xfc], 8
mov eax, dword [esp + 0xe8]
jae 0x4695af
lea eax, [esp + 0xe8]
mov esi, str.POST
push esi
push eax
call fcn.0047a398
pop ecx
pop ecx
test eax, eax
jne 0x46a36e
push esi
call fcn.0047519c
pop ecx
mov ecx, esi
lea esi, [esp + 0xe8]
call fcn.00401827
mov byte [esp + 0x13], 1
cmp dword [ebx], edi
jne 0x469613
lea eax, [ebx + 0x13c]
cmp dword [eax + 0x14], 8
jb 0x4695f1
mov eax, dword [eax]
push edi
push edi
push edi
push edi
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov dword [ebx], eax
cmp eax, edi
jne 0x469613
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebx + 0x11c], eax
jmp 0x46a378
push dword [ebx + 0x1bc]
push dword [ebx + 0x1b8]
push dword [ebx + 0x1b4]
push dword [ebx + 0x1b0]
push dword [ebx]
call dword [sym.imp.WINHTTP.dll_WinHttpSetTimeouts]
xor eax, eax
push 0x206
mov word [esp + 0x310], ax
lea eax, [esp + 0x312]
push edi
push eax
call fcn.00474d90
add esp, 0xc
xor eax, eax
push 0xa26
mov word [esp + 0x720], ax
lea eax, [esp + 0x722]
push edi
push eax
call fcn.00474d90
add esp, 0xc
push 0x3c
pop esi
push esi
lea eax, [esp + 0x94]
push edi
push eax
call fcn.00474d90
mov ecx, dword [ebx + 0x18]
lea eax, [esp + 0x318]
mov dword [esp + 0xac], eax
lea eax, [esp + 0x728]
mov dword [esp + 0xc8], eax
lea eax, [ebx + 8]
add esp, 0xc
cmp dword [eax + 0x14], 8
mov dword [esp + 0x90], esi
mov dword [esp + 0xa4], 0x104
mov dword [esp + 0xc0], 0x514
mov dword [esp + 0x98], 1
jb 0x4696da
mov eax, dword [eax]
lea edx, [esp + 0x90]
push edx
push edi
push ecx
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
test eax, eax
je 0x46a358
lea eax, [esp + 0x30c]
push eax
call fcn.0047519c
pop ecx
lea esi, [ebx + 0x24]
lea ecx, [esp + 0x30c]
call fcn.00401827
push edi
push dword [esp + 0xac]
lea eax, [esp + 0x314]
push eax
push dword [ebx]
call dword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov dword [esp + 0x58], eax
cmp eax, edi
je 0x46a358
cmp dword [esp + 0x9c], 2
jne 0x469745
mov ecx, 0x800000
jmp 0x469747
xor ecx, ecx
cmp dword [esp + 0xfc], 8
mov eax, dword [esp + 0xe8]
jae 0x46975f
lea eax, [esp + 0xe8]
push ecx
push edi
push edi
push edi
push dword [esp + 0xcc]
push eax
push dword [esp + 0x70]
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov dword [esp + 0x14], eax
cmp eax, edi
je 0x46a34e
cmp byte [ebx + 4], 0
jne 0x4697a9
cmp dword [esp + 0x9c], 2
jne 0x4697a9
push 4
lea ecx, [esp + 0x30]
push ecx
push 0x1f
push eax
mov dword [esp + 0x3c], 0x3100
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov byte [esp + 0x12], 0
mov dword [esp + 0x2c], edi
mov eax, dword [esp + 0x2c]
inc dword [esp + 0x2c]
cmp eax, 3
jae 0x46a338
mov ecx, dword [ebx + 0xf4]
cmp ecx, edi
jbe 0x4697fe
lea eax, [ebx + 0xe4]
cmp dword [eax + 0x14], 8
jb 0x4697e1
mov eax, dword [eax]
push 0x1000000
push ecx
push eax
push dword [esp + 0x20]
call dword [sym.imp.WINHTTP.dll_WinHttpAddRequestHeaders]
test eax, eax
jne 0x4697fe
call esi
mov dword [ebx + 0x11c], eax
cmp dword [ebx + 0xd0], edi
jbe 0x469892
push str.Cookie:
lea eax, [esp + 0xd0]
call fcn.00401556
push edi
lea eax, [ebx + 0xc0]
push eax
or eax, 0xffffffff
lea esi, [esp + 0xd4]
mov byte [esp + 0x1160], 1
call fcn.00406680
cmp dword [esp + 0xe0], 8
mov eax, dword [esp + 0xcc]
jae 0x46984d
mov eax, esi
push 0x1000000
push dword [esp + 0xe0]
push eax
push dword [esp + 0x20]
call dword [sym.imp.WINHTTP.dll_WinHttpAddRequestHeaders]
test eax, eax
jne 0x469874
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebx + 0x11c], eax
push 1
xor edi, edi
lea esi, [esp + 0xd0]
mov byte [esp + 0x115c], 0
call fcn.0040162a
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [ebx + 0x110], edi
jbe 0x46999e
push 0xc
lea eax, [esp + 0x88]
push edi
push eax
call fcn.00474d90
add esp, 0xc
xor eax, eax
push 0x206
mov word [esp + 0x108], ax
lea eax, [esp + 0x10a]
push edi
push eax
mov dword [esp + 0x90], 3
call fcn.00474d90
lea eax, [ebx + 0x100]
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x4698ea
mov eax, dword [eax]
push eax
lea eax, [esp + 0x108]
push 0x104
push eax
call fcn.00479a15
add esp, 0xc
lea eax, [esp + 0x104]
push 0xc
mov dword [esp + 0x8c], eax
lea eax, [esp + 0x88]
push eax
push 0x26
push dword [esp + 0x20]
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x469930
call esi
mov dword [ebx + 0x11c], eax
mov ecx, dword [ebx + 0x16c]
cmp ecx, edi
jbe 0x46999e
lea eax, [ebx + 0x15c]
cmp dword [eax + 0x14], 8
jb 0x469948
mov eax, dword [eax]
add ecx, ecx
push ecx
push eax
push 0x1002
push dword [esp + 0x20]
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x469967
call esi
mov dword [ebx + 0x11c], eax
mov ecx, dword [ebx + 0x188]
cmp ecx, edi
jbe 0x46999e
lea eax, [ebx + 0x178]
cmp dword [eax + 0x14], 8
jb 0x46997f
mov eax, dword [eax]
add ecx, ecx
push ecx
push eax
push 0x1003
push dword [esp + 0x20]
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x46999e
call esi
mov dword [ebx + 0x11c], eax
push edi
push edi
push edi
push edi
push edi
push edi
push dword [esp + 0x2c]
mov byte [esp + 0x47], 0
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
jne 0x469bdc
push 0x10
lea eax, [esp + 0x4c]
push edi
push eax
call fcn.00474d90
add esp, 0xc
lea eax, [esp + 0x48]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpGetIEProxyConfigForCurrentUser]
test eax, eax
je 0x469bc9
cmp dword [esp + 0x4c], edi
je 0x469ac2
push 0x18
lea eax, [esp + 0xd0]
push edi
push eax
call fcn.00474d90
mov ecx, dword [esp + 0x58]
xor eax, eax
add esp, 0xc
inc eax
push 0xc
mov dword [esp + 0xd4], eax
mov dword [esp + 0xe4], eax
lea eax, [esp + 0x70]
push edi
push eax
mov dword [esp + 0xd8], 3
mov dword [esp + 0xe0], ecx
mov dword [esp + 0xe8], edi
mov dword [esp + 0xe4], edi
call fcn.00474d90
lea eax, [ebx + 8]
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x469a4b
mov eax, dword [eax]
lea ecx, [esp + 0x6c]
push ecx
lea ecx, [esp + 0xd0]
push ecx
push eax
push dword [ebx]
call dword [sym.imp.WINHTTP.dll_WinHttpGetProxyForUrl]
test eax, eax
je 0x469b8f
push 0xc
lea eax, [esp + 0x70]
push eax
push 0x26
push dword [esp + 0x20]
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
je 0x469a99
push edi
push edi
push edi
push edi
push edi
push edi
push dword [esp + 0x2c]
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
je 0x469a99
mov byte [esp + 0x2b], 1
cmp dword [esp + 0x70], edi
je 0x469aa9
push dword [esp + 0x70]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp dword [esp + 0x74], edi
je 0x469b97
push dword [esp + 0x74]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
jmp 0x469b97
cmp dword [esp + 0x50], edi
je 0x469bb7
push 0xc
lea eax, [esp + 0x7c]
push edi
push eax
call fcn.00474d90
add esp, 0xc
xor eax, eax
push 0x206
mov word [esp + 0x108], ax
lea eax, [esp + 0x10a]
push edi
push eax
mov dword [esp + 0x84], 3
call fcn.00474d90
add esp, 0xc
push dword [esp + 0x50]
lea eax, [esp + 0x108]
push 0x104
push eax
call fcn.00479a15
add esp, 0xc
lea eax, [esp + 0x104]
mov dword [esp + 0x7c], eax
cmp dword [esp + 0x54], edi
je 0x469b78
xor eax, eax
push 0x206
mov word [esp + 0x518], ax
lea eax, [esp + 0x51a]
push edi
push eax
call fcn.00474d90
add esp, 0xc
push dword [esp + 0x54]
lea eax, [esp + 0x518]
push 0x104
push eax
call fcn.00479a15
lea eax, [esp + 0x520]
add esp, 0xc
mov dword [esp + 0x80], eax
push 0xc
lea eax, [esp + 0x7c]
push eax
push 0x26
push dword [esp + 0x20]
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x469b97
call esi
mov dword [ebx + 0x11c], eax
cmp dword [esp + 0x4c], edi
je 0x469ba7
push dword [esp + 0x4c]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp dword [esp + 0x50], edi
je 0x469bb7
push dword [esp + 0x50]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp dword [esp + 0x54], edi
je 0x469bd1
push dword [esp + 0x54]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
jmp 0x469bd1
call esi
mov dword [ebx + 0x11c], eax
cmp byte [esp + 0x2b], 0
je 0x46a326
mov eax, dword [ebx + 0xdc]
cmp eax, edi
je 0x469c0c
lea ecx, [esp + 0x18]
push ecx
push dword [ebx + 0xe0]
mov dword [esp + 0x20], edi
push eax
push dword [esp + 0x20]
call dword [sym.imp.WINHTTP.dll_WinHttpWriteData]
test eax, eax
jne 0x469c0c
call esi
mov dword [ebx + 0x11c], eax
push edi
push dword [esp + 0x18]
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
je 0x46a31e
push edi
lea eax, [esp + 0x20]
push eax
push edi
push edi
push 0x16
push dword [esp + 0x28]
mov dword [esp + 0x34], edi
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
cmp eax, edi
jne 0x469c46
call esi
cmp eax, 0x7a
jne 0x469ee9
mov eax, dword [esp + 0x1c]
xor ecx, ecx
push 2
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00473d4a
mov esi, eax
xor edi, edi
pop ecx
mov dword [esp + 0x44], esi
cmp esi, edi
je 0x469ee9
mov eax, dword [esp + 0x1c]
add eax, eax
push eax
push edi
push esi
call fcn.00474d90
add esp, 0xc
push edi
lea eax, [esp + 0x20]
push eax
push esi
push edi
push 0x16
push dword [esp + 0x28]
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
test eax, eax
je 0x469ee2
push esi
call fcn.0047519c
pop ecx
mov ecx, esi
lea esi, [ebx + 0x40]
call fcn.00401827
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], edi
push 0x49bf80
lea eax, [esp + 0xd0]
mov byte [esp + 0x115c], 2
call fcn.00401556
mov byte [esp + 0x1158], 3
cmp byte [ebx + 0x158], 0
jne 0x469d32
mov esi, str.charset_A_Za_z0_9___
push esi
call fcn.0047519c
pop ecx
mov ecx, esi
lea esi, [esp + 0xcc]
call fcn.00401827
lea eax, [esp + 0x34]
push eax
lea edx, [ebx + 0x40]
mov ecx, esi
call fcn.00469013
pop ecx
test al, al
je 0x469d32
mov eax, dword [esp + 0x38]
sub eax, dword [esp + 0x34]
push 0x1c
cdq
pop ecx
idiv ecx
test eax, eax
je 0x469d32
mov eax, dword [esp + 0x34]
push 0xffffffffffffffff
lea ecx, [ebx + 0x78]
push edi
call fcn.00401590
mov esi, str.Content_Length:__0_9_
push esi
call fcn.0047519c
pop ecx
mov ecx, esi
lea esi, [esp + 0xcc]
call fcn.00401827
lea eax, [esp + 0x34]
push eax
lea edx, [ebx + 0x40]
mov ecx, esi
call fcn.00469013
pop ecx
test al, al
je 0x469d89
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
sub eax, ecx
push 0x1c
cdq
pop esi
idiv esi
test eax, eax
je 0x469d89
cmp dword [ecx + 0x14], 8
jb 0x469d7c
mov ecx, dword [ecx]
push ecx
call fcn.00478f81
pop ecx
mov dword [ebx + 0xa0], eax
mov esi, str.Location:__0_9_
push esi
call fcn.0047519c
pop ecx
mov ecx, esi
lea esi, [esp + 0xcc]
call fcn.00401827
lea eax, [esp + 0x34]
push eax
lea edx, [ebx + 0x40]
mov ecx, esi
call fcn.00469013
pop ecx
test al, al
je 0x469ddb
mov eax, dword [esp + 0x38]
sub eax, dword [esp + 0x34]
push 0x1c
cdq
pop ecx
idiv ecx
test eax, eax
je 0x469ddb
mov eax, dword [esp + 0x34]
push 0xffffffffffffffff
push edi
lea ecx, [ebx + 0x194]
call fcn.00401590
mov esi, str.Set_Cookie:_b.__n
push esi
call fcn.0047519c
pop ecx
mov ecx, esi
lea esi, [esp + 0xcc]
call fcn.00401827
lea eax, [esp + 0x34]
push eax
lea edx, [ebx + 0x40]
mov ecx, esi
call fcn.00469013
pop ecx
test al, al
je 0x469ebd
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
sub eax, ecx
push 0x1c
cdq
pop esi
idiv esi
mov dword [esp + 0x24], eax
cmp eax, edi
jbe 0x469ebd
mov dword [esp + 0x20], edi
lea esi, [ebx + 0xa4]
mov dword [esp + 0x18], ecx
push edi
push dword [esp + 0x1c]
or eax, 0xffffffff
call fcn.00406680
mov eax, dword [esp + 0x24]
dec eax
cmp dword [esp + 0x20], eax
je 0x469e67
mov edi, 0x4a4bcc
push edi
call fcn.0047519c
pop ecx
push edi
mov edi, eax
mov eax, esi
call fcn.00406553
xor edi, edi
inc dword [esp + 0x20]
mov eax, dword [esp + 0x20]
add dword [esp + 0x18], 0x1c
cmp eax, dword [esp + 0x24]
jb 0x469e37
mov ecx, dword [ebx + 0xb4]
cmp ecx, edi
jbe 0x469ebd
cmp dword [ebx + 0xb8], 8
jb 0x469e95
mov eax, dword [ebx + 0xa4]
jmp 0x469e9b
lea eax, [ebx + 0xa4]
cmp word [eax + ecx*2 - 2], 0x3b
je 0x469ebd
mov edi, 0x4a4bd4
push edi
call fcn.0047519c
pop ecx
push edi
mov edi, eax
lea eax, [ebx + 0xa4]
call fcn.00406553
push 1
xor edi, edi
lea esi, [esp + 0xd0]
call fcn.0040162a
lea esi, [esp + 0x34]
mov byte [esp + 0x1158], 0
call fcn.00406513
mov esi, dword [esp + 0x44]
push esi
call fcn.0047501b
pop ecx
push edi
lea eax, [esp + 0x20]
push eax
push edi
push edi
push 0x13
push dword [esp + 0x28]
mov dword [esp + 0x34], edi
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
cmp eax, edi
jne 0x469f10
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x469f7e
mov eax, dword [esp + 0x1c]
xor ecx, ecx
push 2
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00473d4a
mov esi, eax
xor edi, edi
pop ecx
mov dword [esp + 0x18], esi
cmp esi, edi
je 0x469f7e
mov eax, dword [esp + 0x1c]
add eax, eax
push eax
push edi
push esi
call fcn.00474d90
add esp, 0xc
push edi
lea eax, [esp + 0x20]
push eax
push esi
push edi
push 0x13
push dword [esp + 0x28]
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
test eax, eax
je 0x469f74
push esi
call fcn.0047519c
pop ecx
mov ecx, dword [esp + 0x18]
lea esi, [ebx + 0x120]
call fcn.00401827
push dword [esp + 0x18]
call fcn.0047501b
pop ecx
mov eax, dword [ebx + 0x94]
xor esi, esi
mov dword [esp + 0x18], 0x2800
cmp eax, edi
je 0x469f9f
push eax
call fcn.0047501b
pop ecx
mov dword [ebx + 0x94], edi
push 0x2800
call fcn.00473d4a
pop ecx
mov dword [ebx + 0x94], eax
cmp eax, edi
je 0x46a333
push 0x2800
push edi
push eax
call fcn.00474d90
add esp, 0xc
lea eax, [esp + 0x1c]
push eax
push dword [esp + 0x18]
mov dword [esp + 0x24], edi
call dword [sym.imp.WINHTTP.dll_WinHttpQueryDataAvailable]
test eax, eax
je 0x46a0be
push esi
mov ecx, ebx
call fcn.0046a413
mov eax, dword [esp + 0x1c]
inc eax
push eax
call fcn.00473d4a
pop ecx
mov dword [esp + 0x20], eax
cmp eax, edi
je 0x46a0ca
mov eax, dword [esp + 0x1c]
inc eax
push eax
push edi
push dword [esp + 0x28]
call fcn.00474d90
add esp, 0xc
lea eax, [esp + 0x30]
push eax
push dword [esp + 0x20]
mov dword [esp + 0x38], edi
push dword [esp + 0x28]
push dword [esp + 0x20]
call dword [sym.imp.WINHTTP.dll_WinHttpReadData]
test eax, eax
je 0x46a0b2
mov eax, dword [esp + 0x30]
add eax, esi
cmp eax, dword [esp + 0x18]
jbe 0x46a095
mov eax, dword [ebx + 0x94]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x18]
add eax, eax
push eax
mov dword [esp + 0x48], eax
call fcn.00473d4a
pop ecx
mov dword [ebx + 0x94], eax
cmp eax, edi
je 0x46a0d6
mov ecx, dword [esp + 0x44]
push ecx
push edi
push eax
mov dword [esp + 0x24], ecx
call fcn.00474d90
add esp, 0xc
push esi
push dword [esp + 0x28]
push dword [ebx + 0x94]
call fcn.004751c0
add esp, 0xc
push dword [esp + 0x24]
call fcn.0047501b
pop ecx
push dword [esp + 0x30]
mov eax, dword [ebx + 0x94]
push dword [esp + 0x24]
add eax, esi
push eax
call fcn.004751c0
add esp, 0xc
add esi, dword [esp + 0x30]
push dword [esp + 0x20]
call fcn.0047501b
pop ecx
jmp 0x46a0ca
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebx + 0x11c], eax
cmp dword [esp + 0x1c], edi
ja 0x469fc7
jmp 0x46a0e5
mov eax, dword [esp + 0x24]
mov dword [ebx + 0x94], eax
mov byte [esp + 0x13], 0
push esi
mov ecx, ebx
call fcn.0046a413
lea eax, [ebx + 0x78]
mov dword [ebx + 0x98], esi
cmp dword [eax + 0x14], 8
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], 1
jb 0x46a10a
mov eax, dword [eax]
push 5
push 0x4a4bd8
push eax
call fcn.00479e03
add esp, 0xc
test eax, eax
jne 0x46a12a
mov dword [esp + 0x24], 0xfde9
mov dword [esp + 0x20], edi
mov eax, dword [ebx + 0x98]
push edi
push edi
inc eax
push eax
push dword [ebx + 0x94]
push dword [esp + 0x30]
push dword [esp + 0x38]
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov esi, eax
cmp esi, edi
jg 0x46a17b
mov ecx, dword [ebx + 0x98]
push edi
xor eax, eax
inc eax
push edi
inc ecx
push ecx
push dword [ebx + 0x94]
mov dword [esp + 0x34], edi
push eax
push edi
mov dword [esp + 0x38], eax
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov esi, eax
cmp esi, edi
jle 0x46a237
xor ecx, ecx
push 2
pop edx
mov eax, esi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00473d4a
xor edi, edi
pop ecx
mov dword [esp + 0x18], eax
cmp eax, edi
je 0x46a237
lea eax, [esi + esi]
push eax
push edi
push dword [esp + 0x20]
call fcn.00474d90
mov eax, dword [ebx + 0x98]
add esp, 0xc
push esi
push dword [esp + 0x1c]
inc eax
push eax
push dword [ebx + 0x94]
push dword [esp + 0x30]
push dword [esp + 0x38]
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
cmp eax, edi
jle 0x46a22d
mov eax, dword [ebx + 0x98]
and dword [esp + 0xdc], edi
xor ecx, ecx
mov word [esp + 0xcc], cx
mov ecx, dword [esp + 0x18]
inc eax
lea esi, [esp + 0xcc]
mov dword [esp + 0xe0], 7
call fcn.00401827
push 0xffffffffffffffff
push edi
lea ecx, [ebx + 0x5c]
mov eax, esi
mov byte [esp + 0x1160], 4
call fcn.00401590
push 1
mov byte [esp + 0x115c], 0
call fcn.0040162a
push dword [esp + 0x18]
call fcn.0047501b
pop ecx
push 0x49e26c
lea esi, [esp + 0xec]
mov byte [esp + 0x16], 1
call fcn.00401c1b
pop ecx
test al, al
je 0x46a344
push str._html_
lea eax, [esp + 0xd0]
call fcn.00401556
mov dword [esp + 0x5c], edi
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], edi
lea eax, [esp + 0x5c]
push eax
lea edx, [ebx + 0x5c]
lea ecx, [esp + 0xd0]
mov byte [esp + 0x115c], 6
call fcn.00469013
pop ecx
test al, al
je 0x46a2f5
mov eax, dword [esp + 0x60]
sub eax, dword [esp + 0x5c]
push 0x1c
cdq
pop ecx
idiv ecx
test eax, eax
je 0x46a2f5
mov esi, str.__html_
push esi
call fcn.0047519c
pop ecx
mov ecx, esi
lea esi, [esp + 0xcc]
call fcn.00401827
lea eax, [esp + 0x5c]
push eax
lea edx, [ebx + 0x5c]
mov ecx, esi
call fcn.00469013
pop ecx
test al, al
je 0x46a2e6
mov eax, dword [esp + 0x60]
sub eax, dword [esp + 0x5c]
push 0x1c
cdq
pop ecx
idiv ecx
test eax, eax
jne 0x46a2f5
mov dword [ebx + 0x11c], 0xd
mov byte [esp + 0x12], 0
lea esi, [esp + 0x5c]
call fcn.00406513
push 1
xor edi, edi
lea esi, [esp + 0xd0]
mov byte [esp + 0x115c], 0
call fcn.0040162a
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x46a326
call esi
mov dword [ebx + 0x11c], eax
cmp byte [esp + 0x12], 0
je 0x4697b8
jmp 0x46a338
mov byte [esp + 0x13], 0
cmp byte [esp + 0x12], 0
jne 0x46a344
mov byte [esp + 0x13], 0
push dword [esp + 0x14]
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
push dword [esp + 0x58]
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
push 1
xor edi, edi
lea esi, [esp + 0xec]
call fcn.0040162a
mov al, byte [esp + 0x13]
jmp 0x46a38a
mov dword [ebx + 0x11c], 0x57
push 1
xor edi, edi
lea esi, [esp + 0xec]
call fcn.0040162a
xor al, al
mov ecx, dword [esp + 0x1150]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [esp + 0x113c]
xor ecx, esp
call fcn.00474c58
mov esp, ebp
pop ebp
ret