Function at 0x10009cf0
Capabilities:
Parse url

Disassembly:
push 0xffffffffffffffff
push 0x10035568
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x550
mov eax, dword [esp + 0x564]
mov ecx, dword [eax]
push ebx
push ebp
push esi
push edi
push ecx
lea ecx, [esp + 0x1c]
call fcn.1000b480
mov edx, dword [esp + 0x578]
mov eax, dword [edx]
xor ebx, ebx
push eax
lea ecx, [esp + 0x18]
mov dword [esp + 0x56c], ebx
call fcn.1000b480
push 0xfe
lea ecx, [esp + 0x65]
push ebx
push ecx
mov byte [esp + 0x574], 1
mov byte [esp + 0x6c], bl
call fcn.10021df0
push 0xfe
lea edx, [esp + 0x171]
push ebx
push edx
mov byte [esp + 0x178], bl
call fcn.10021df0
push 0xfe
lea eax, [esp + 0x27d]
push ebx
push eax
mov byte [esp + 0x284], bl
call fcn.10021df0
push 0x1ff
lea ecx, [esp + 0x389]
push ebx
push ecx
mov byte [esp + 0x390], bl
call fcn.10021df0
add esp, 0x30
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov ebp, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
mov ecx, 0x1003810d
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10009de8
cmp dl, bl
je 0x10009de4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10009de8
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x10009dc8
xor eax, eax
jmp 0x10009ded
sbb eax, eax
sbb eax, 0xffffffff
mov edi, dword [esp + 0x14]
xor edx, edx
cmp eax, ebx
sete dl
mov ecx, edi
mov esi, edx
mov edx, 0x1003810e
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x10009e21
cmp al, bl
je 0x10009e1d
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x10009e21
add ecx, 2
add edx, 2
cmp al, bl
jne 0x10009e01
xor eax, eax
jmp 0x10009e26
sbb eax, eax
sbb eax, 0xffffffff
xor ecx, ecx
cmp eax, ebx
sete cl
mov eax, ecx
cmp esi, ebx
jne 0x10009fc8
cmp eax, ebx
jne 0x10009fc8
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x10009e44
sub eax, edx
mov esi, eax
lea eax, [esi + esi*4]
add eax, eax
push eax
mov dword [esp + 0x14], eax
call fcn.10020e3f
mov edx, dword [esp + 0x14]
push edx
mov edi, eax
push ebx
push edi
call fcn.10021df0
mov eax, dword [esp + 0x24]
add esp, 0x10
push esi
push eax
lea ecx, [esp + 0x18]
push ecx
push edi
call fcn.1001af20
push 0x3c
lea edx, [esp + 0x28]
push ebx
push edx
call fcn.10021df0
lea eax, [esp + 0x6c]
lea ecx, [esp + 0x16c]
mov dword [esp + 0x40], eax
mov eax, 0xff
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x44], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x68], eax
lea edx, [esp + 0x26c]
mov eax, ecx
add esp, 0xc
mov dword [esp + 0x24], 0x3c
mov dword [esp + 0x58], edx
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x10009ed0
lea edx, [esp + 0x24]
push edx
push ebx
sub eax, esi
push eax
push ecx
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
lea eax, [esp + 0x260]
push eax
lea ecx, [esp + 0x164]
push ecx
push 0x100383d4
lea edx, [esp + 0x36c]
push 0x200
push edx
call dword [sym.imp.SHLWAPI.dll_wnsprintfA]
push ebp
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0x380]
push edx
push 0x50
lea eax, [esp + 0x88]
push eax
push str.Accept_Encoding:_deflate
push ecx
push edi
push 0x100383f8
call fcn.1000dd20
lea edx, [esp + 0x39c]
push edx
lea eax, [esp + 0xa0]
push eax
call fcn.1000dbc0
add esp, 0x44
test al, al
je 0x10009faa
mov eax, dword [esp + 0x20]
lea eax, [eax + eax*4]
add eax, eax
push eax
mov dword [esp + 0x14], eax
call fcn.10020e3f
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
add esp, 4
push ecx
mov esi, eax
push edx
lea eax, [esp + 0x18]
push eax
push esi
call fcn.1001add0
push esi
call fcn.10003900
mov ecx, dword [esp + 0x580]
push esi
mov dword [ecx], eax
call fcn.10021e6a
add esp, 8
push edi
call fcn.10021e6a
jmp 0x10009fdb
mov edx, dword [esp + 0x1c]
push edx
call fcn.10003900
mov ecx, dword [esp + 0x580]
add esp, 4
push edi
mov dword [ecx], eax
call fcn.10021e6a
jmp 0x10009fdb
push 0x100383d0
call fcn.10003900
mov ecx, dword [esp + 0x580]
mov dword [ecx], eax
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
or ecx, 0xffffffff
lea edx, [eax + 0xc]
mov byte [esp + 0x56c], bl
add esp, 4
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x1000a005
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov dword [esp + 0x568], edx
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1000a02c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esp + 0x560]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
mov dword fs:[0], ecx
add esp, 0x55c
ret 0x10