Function at 0x41dda0
Capabilities:
Parse url

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4cc66f
mov eax, dword fs:[0]
push eax
sub esp, 0x58
push ebx
push esi
push edi
mov eax, dword [0x514080]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x20]
mov eax, dword [esi + 4]
xorps xmm0, xmm0
movlpd qword [ebp - 0x60], xmm0
movlpd qword [ebp - 0x58], xmm0
movlpd qword [ebp - 0x4c], xmm0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x50], 0x64
mov dword [ebp - 0x44], 0x64
mov dword [ebp - 0x3c], 0x64
mov dword [ebp - 0x34], 0x64
mov dword [ebp - 0x2c], 0x64
mov dword [ebp - 0x64], 0x3c
push dword [eax - 0xc]
push eax
call fcn.004099f0
mov dword [ebp - 4], 0
lea eax, [ebp - 0x64]
push eax
push 0
push 0
push dword [ebp - 0x20]
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
or ebx, 0xffffffff
test eax, eax
jne 0x41de65
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
mov dword [ebp - 0x1c], ecx
mov dword [esi], ecx
jmp 0x41e446
mov esi, dword [ebp - 0x54]
mov dword [ebp - 0x18], esi
test esi, esi
je 0x41df41
mov edi, dword [ebp - 0x50]
call fcn.00404710
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x41e4ae
test esi, esi
jne 0x41de92
test edi, edi
jne 0x41e49f
mov eax, dword [eax]
push 2
push edi
mov esi, dword [eax]
mov ecx, esi
call dword [0x4e1514]
mov ecx, dword [ebp - 0x1c]
call esi
mov esi, eax
mov dword [ebp - 0x24], esi
test esi, esi
je 0x41e4b8
lea eax, [esi + 0x10]
mov dword [ebp - 0x1c], eax
test edi, edi
js 0x41e49f
cmp edi, dword [eax - 8]
jg 0x41e49f
mov dword [eax - 0xc], edi
xor ecx, ecx
add edi, edi
mov word [edi + eax], cx
test edi, edi
je 0x41df08
mov ecx, dword [ebp - 0x18]
push edi
test ecx, ecx
je 0x41deed
push ecx
push eax
call fcn.004a2690
add esp, 0xc
jmp 0x41df08
push 0
push eax
call fcn.004a2c10
add esp, 0xc
call fcn.004a609d
mov dword [eax], 0x16
call fcn.004a5f9f
mov byte [ebp - 4], 2
lea eax, [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
add ecx, 0x10
push eax
call fcn.00409970
mov byte [ebp - 4], 0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x41df41
mov edi, dword [esi]
push dword [ebp - 0x24]
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4e1514]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x38]
mov dword [ebp - 0x1c], esi
test esi, esi
je 0x41e01d
mov edi, dword [ebp - 0x34]
call fcn.00404710
mov dword [ebp - 0x24], eax
test eax, eax
je 0x41e4ae
test esi, esi
jne 0x41df6e
test edi, edi
jne 0x41e49f
mov eax, dword [eax]
push 2
push edi
mov esi, dword [eax]
mov ecx, esi
call dword [0x4e1514]
mov ecx, dword [ebp - 0x24]
call esi
mov esi, eax
mov dword [ebp - 0x18], esi
test esi, esi
je 0x41e4b8
lea eax, [esi + 0x10]
mov dword [ebp - 0x24], eax
test edi, edi
js 0x41e49f
cmp edi, dword [eax - 8]
jg 0x41e49f
mov dword [eax - 0xc], edi
xor ecx, ecx
add edi, edi
mov word [edi + eax], cx
test edi, edi
je 0x41dfe4
mov ecx, dword [ebp - 0x1c]
push edi
test ecx, ecx
je 0x41dfc9
push ecx
push eax
call fcn.004a2690
add esp, 0xc
jmp 0x41dfe4
push 0
push eax
call fcn.004a2c10
add esp, 0xc
call fcn.004a609d
mov dword [eax], 0x16
call fcn.004a5f9f
mov byte [ebp - 4], 5
lea eax, [ebp - 0x24]
mov ecx, dword [ebp - 0x10]
push eax
lea ecx, [ecx + 0x14]
call fcn.00409970
mov byte [ebp - 4], 0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x41e01d
mov edi, dword [esi]
push dword [ebp - 0x18]
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4e1514]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x48]
mov dword [ebp - 0x28], esi
test esi, esi
je 0x41e146
mov edi, dword [ebp - 0x44]
call fcn.00404710
mov dword [ebp - 0x24], eax
test eax, eax
je 0x41e486
test esi, esi
jne 0x41e04a
test edi, edi
jne 0x41e49f
mov eax, dword [eax]
push 2
push edi
mov esi, dword [eax]
mov ecx, esi
call dword [0x4e1514]
mov ecx, dword [ebp - 0x24]
call esi
mov esi, eax
mov dword [ebp - 0x1c], esi
test esi, esi
je 0x41e490
lea eax, [esi + 0x10]
mov dword [ebp - 0x24], eax
test edi, edi
js 0x41e49f
cmp edi, dword [eax - 8]
jg 0x41e49f
mov dword [eax - 0xc], edi
xor ecx, ecx
add edi, edi
mov word [edi + eax], cx
test edi, edi
je 0x41e0c0
mov ecx, dword [ebp - 0x28]
push edi
test ecx, ecx
je 0x41e0a5
push ecx
push eax
call fcn.004a2690
add esp, 0xc
jmp 0x41e0c0
push 0
push eax
call fcn.004a2c10
add esp, 0xc
call fcn.004a609d
mov dword [eax], 0x16
call fcn.004a5f9f
mov byte [ebp - 4], 9
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x18]
call fcn.0041e810
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x14], 2
lea ecx, [ecx + 0x1c]
call fcn.00409970
mov eax, 2
mov dword [ebp - 0x14], eax
and eax, 0xfffffffd
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 8
mov eax, ebx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x41e120
mov edi, dword [ecx]
push ecx
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4e1514]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x1c]
mov byte [ebp - 4], 0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x41e146
mov edi, dword [esi]
push dword [ebp - 0x1c]
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4e1514]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x40]
mov dword [ebp - 0x24], esi
test esi, esi
je 0x41e265
mov edi, dword [ebp - 0x3c]
call fcn.00404710
mov dword [ebp - 0x28], eax
test eax, eax
je 0x41e495
test esi, esi
jne 0x41e173
test edi, edi
jne 0x41e49f
mov eax, dword [eax]
push 2
push edi
mov esi, dword [eax]
mov ecx, esi
call dword [0x4e1514]
mov ecx, dword [ebp - 0x28]
call esi
mov dword [ebp - 0x18], eax
test eax, eax
je 0x41e4a9
add eax, 0x10
mov dword [ebp - 0x28], eax
test edi, edi
js 0x41e49f
cmp edi, dword [eax - 8]
jg 0x41e49f
mov dword [eax - 0xc], edi
xor ecx, ecx
add edi, edi
mov word [edi + eax], cx
test edi, edi
je 0x41e1e7
mov ecx, dword [ebp - 0x24]
push edi
test ecx, ecx
je 0x41e1cc
push ecx
push eax
call fcn.004a2690
add esp, 0xc
jmp 0x41e1e7
push 0
push eax
call fcn.004a2c10
add esp, 0xc
call fcn.004a609d
mov dword [eax], 0x16
call fcn.004a5f9f
mov byte [ebp - 4], 0xe
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x1c]
call fcn.0041e810
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x1c]
mov esi, dword [ebp - 0x14]
or esi, 1
push eax
lea ecx, [ecx + 0x20]
mov dword [ebp - 0x14], esi
call fcn.00409970
and esi, 0xfffffffe
mov dword [ebp - 0x14], esi
mov byte [ebp - 4], 0xd
mov eax, ebx
mov ecx, dword [ebp - 0x1c]
add ecx, 0xfffffff0
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x41e23e
mov edi, dword [ecx]
push ecx
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4e1514]
mov ecx, edi
call esi
mov byte [ebp - 4], 0
mov eax, ebx
mov ecx, dword [ebp - 0x18]
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x41e265
mov edi, dword [ecx]
push ecx
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4e1514]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x30]
mov dword [ebp - 0x24], esi
test esi, esi
je 0x41e341
mov edi, dword [ebp - 0x2c]
call fcn.00404710
mov dword [ebp - 0x28], eax
test eax, eax
je 0x41e4ae
test esi, esi
jne 0x41e292
test edi, edi
jne 0x41e49f
mov eax, dword [eax]
push 2
push edi
mov esi, dword [eax]
mov ecx, esi
call dword [0x4e1514]
mov ecx, dword [ebp - 0x28]
call esi
mov esi, eax
mov dword [ebp - 0x1c], esi
test esi, esi
je 0x41e4b8
lea eax, [esi + 0x10]
mov dword [ebp - 0x28], eax
test edi, edi
js 0x41e49f
cmp edi, dword [eax - 8]
jg 0x41e49f
mov dword [eax - 0xc], edi
xor ecx, ecx
add edi, edi
mov word [edi + eax], cx
test edi, edi
je 0x41e308
mov ecx, dword [ebp - 0x24]
push edi
test ecx, ecx
je 0x41e2ed
push ecx
push eax
call fcn.004a2690
add esp, 0xc
jmp 0x41e308
push 0
push eax
call fcn.004a2c10
add esp, 0xc
call fcn.004a609d
mov dword [eax], 0x16
call fcn.004a5f9f
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x28]
mov ecx, dword [ebp - 0x10]
push eax
lea ecx, [ecx + 0x18]
call fcn.00409970
mov byte [ebp - 4], 0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x41e341
mov edi, dword [esi]
push dword [ebp - 0x1c]
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4e1514]
mov ecx, edi
call esi
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x58]
mov ax, word [ebp - 0x4c]
mov dword [edx + 8], ecx
mov word [edx + 0xc], ax
cmp ecx, 5
jne 0x41e43f
lea ecx, [edx + 0x14]
mov edx, dword [ecx]
mov esi, dword [edx - 0xc]
cmp esi, 3
jle 0x41e43f
cmp word [edx], 0x5c
jne 0x41e43f
cmp word [edx + 2], 0x5c
jne 0x41e43f
cmp word [edx + 4], 0x3f
je 0x41e43f
lea eax, [esi - 2]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004089c0
mov byte [ebp - 4], 0x14
mov esi, dword [ebp - 0x10]
add esi, 0x10
push eax
mov ecx, esi
mov dword [ebp - 0x24], esi
call fcn.00409970
mov byte [ebp - 4], 0
mov eax, ebx
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x41e3db
mov edi, dword [ecx]
push ecx
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4e1514]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x24]
mov eax, dword [esi]
cmp dword [eax - 0xc], 0
jl 0x41e43f
push 0x4ee1ec
push eax
call fcn.004a22fc
add esp, 8
test eax, eax
je 0x41e43f
sub eax, dword [esi]
sar eax, 1
test eax, eax
jle 0x41e43f
push eax
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
call fcn.0040af90
mov byte [ebp - 4], 0x16
mov ecx, esi
push eax
call fcn.00409970
mov byte [ebp - 4], 0
mov eax, ebx
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x41e43f
mov edi, dword [ecx]
push ecx
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4e1514]
mov ecx, edi
call esi
mov dword [ebp - 0x1c], 0
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
lock xadd dword [eax + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x41e471
mov edi, dword [eax]
push eax
mov edx, dword [edi]
mov esi, dword [edx + 4]
mov ecx, esi
call dword [0x4e1514]
mov ecx, edi
call esi
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.00402740
call fcn.00402760
push 0x80004005
call fcn.00402740
push 0x80070057
call fcn.00402740
call fcn.00402760
push 0x80004005
call fcn.00402740
call fcn.00402760
int3