Function at 0x1003913
Capabilities:
Parse url

Disassembly:
push 0x9b0
mov eax, 0x101431a
call fcn.010083eb
mov eax, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x978], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x964], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x960], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x980], eax
lea eax, [ebp - 0x428]
xor ebx, ebx
mov dword [ebp - 0x42c], eax
mov eax, 0x80
mov dword [ebp - 0x970], ebx
mov dword [ebp - 0x95c], ebx
mov dword [ebp - 0x438], ebx
mov dword [ebp - 0x430], eax
mov dword [ebp - 0x434], ebx
lea ecx, [ebp - 0x538]
mov dword [ebp - 4], ebx
mov dword [ebp - 0x96c], esi
mov dword [ebp - 0x548], ebx
mov dword [ebp - 0x53c], ecx
mov dword [ebp - 0x540], eax
mov dword [ebp - 0x544], ebx
push 0x3c
pop edi
push edi
lea eax, [ebp - 0x9bc]
push ebx
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x218]
mov dword [ebp - 0x9ac], eax
lea eax, [ebp - 0x9bc]
push eax
push ebx
push ebx
push esi
mov dword [ebp - 0x9bc], edi
mov dword [ebp - 0x9a8], 0x104
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
cmp eax, ebx
jne 0x1003a0f
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebx
jle 0x10039f9
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
lea ecx, [ebp - 0x548]
call fcn.01002a06
or dword [ebp - 4], 0xffffffff
jmp 0x1003da9
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x328]
push dword [ebp - 0x9ac]
call fcn.010035af
mov esi, dword [ebp - 0x328]
cmp esi, ebx
mov byte [ebp - 4], 2
jge 0x1003a41
lea ecx, [ebp - 0x328]
call fcn.01002a06
jmp 0x10039fb
lea eax, [ebp - 0x974]
push eax
lea eax, [ebp - 0x968]
push eax
lea eax, [ebp - 0x438]
push eax
push dword [ebp + 0x10]
mov dword [ebp - 0x968], ebx
push dword [ebp - 0x978]
mov dword [ebp - 0x974], ebx
call fcn.0100b0f4
mov esi, eax
cmp esi, ebx
jl 0x1003a34
cmp dword [ebp - 0x974], ebx
je 0x1003a85
mov esi, 0x80070005
jmp 0x1003a34
or edi, 0xffffffff
cmp dword [ebp - 0x968], ebx
jne 0x1003ab2
push edi
lea ecx, [ebp - 0x328]
call fcn.0100345b
push eax
lea ecx, [ebp - 0x438]
call fcn.010034eb
mov dword [ebp - 0x968], 1
mov esi, dword [ebp - 0x438]
cmp esi, ebx
jl 0x1003d90
cmp dword [ebp + 0x10], ebx
je 0x1003c3a
lea eax, [ebp - 0x548]
push eax
push 0x10014f4
push ebx
call fcn.0100b325
test eax, eax
jl 0x1003b52
lea ecx, [ebp - 0x548]
call fcn.0100345b
push edi
push eax
lea ecx, [ebp - 0x328]
mov dword [ebp - 0x324], ebx
mov dword [ebp - 0x328], ebx
call fcn.010034eb
mov esi, dword [ebp - 0x328]
cmp esi, ebx
lea ecx, [ebp - 0x328]
jl 0x1003d96
call fcn.0100345b
mov esi, eax
push ebx
push esi
call fcn.01002833
cmp eax, ebx
je 0x1003b31
sub eax, esi
dec eax
dec eax
sar eax, 1
jmp 0x1003b37
mov eax, dword [ebp - 0x324]
push eax
push esi
lea ecx, [ebp - 0x438]
mov dword [ebp - 0x434], ebx
mov dword [ebp - 0x438], ebx
call fcn.010034eb
jmp 0x1003b70
push edi
push 0x10014e0
push ebx
lea ecx, [ebp - 0x328]
mov dword [ebp - 0x324], ebx
mov dword [ebp - 0x328], ebx
call fcn.010032e9
push edi
push 0x10014cc
push ebx
lea ecx, [ebp - 0x438]
call fcn.010032e9
mov esi, dword [ebp - 0x438]
cmp esi, ebx
lea ecx, [ebp - 0x328]
jl 0x1003d96
call fcn.0100345b
push 7
mov esi, 0x10014bc
mov edi, eax
push esi
push edi
call dword [sym.imp.msvcrt.dll__wcsnicmp]
add esp, 0xc
test eax, eax
lea ecx, [ebp - 0x328]
je 0x1003bc5
call fcn.0100345b
mov edi, eax
add edi, 0xe
jmp 0x1003bef
push 8
push 0x10014a8
call fcn.0100345b
push eax
call dword [sym.imp.msvcrt.dll__wcsnicmp]
add esp, 0xc
test eax, eax
je 0x1003bef
lea ecx, [ebp - 0x328]
call fcn.0100345b
mov edi, eax
add edi, 0x10
push 0xffffffffffffffff
push esi
push ebx
lea ecx, [ebp - 0x548]
mov dword [ebp - 0x544], ebx
mov dword [ebp - 0x548], ebx
call fcn.010032e9
push 0xffffffffffffffff
push edi
lea ecx, [ebp - 0x548]
call fcn.010034eb
mov esi, dword [ebp - 0x548]
cmp esi, ebx
jl 0x1003a34
lea ecx, [ebp - 0x548]
call fcn.0100345b
mov dword [ebp - 0x96c], eax
or edi, 0xffffffff
mov eax, dword [ebp - 0x96c]
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
cmp cx, bx
jne 0x1003c43
sub eax, edx
sar eax, 1
lea esi, [eax + 1]
push esi
lea ecx, [ebp - 0x958]
call fcn.010034c0
push esi
lea ecx, [ebp - 0x750]
mov byte [ebp - 4], 3
call fcn.010034c0
cmp dword [ebp - 0x750], ebx
mov byte [ebp - 4], 4
je 0x1003d6d
cmp dword [ebp - 0x958], ebx
je 0x1003d6d
lea eax, [ebp - 0x97c]
push eax
push esi
push dword [ebp - 0x750]
mov dword [ebp - 0x97c], 0x50
push esi
push dword [ebp - 0x958]
push dword [ebp - 0x96c]
call fcn.0100a9ea
mov esi, eax
cmp esi, ebx
jl 0x1003d72
push 0x40
call sub.msvcrt.dll_void____cdecl_operator_new_unsigned_int_
pop ecx
mov dword [ebp - 0x978], eax
cmp eax, ebx
mov byte [ebp - 4], 5
je 0x1003ce1
mov ecx, eax
call fcn.01002c7f
mov esi, eax
jmp 0x1003ce3
xor esi, esi
cmp esi, ebx
mov byte [ebp - 4], 4
mov dword [ebp - 0x970], esi
je 0x1003d6d
mov ecx, esi
call fcn.0100b89b
lea eax, [ebp - 0x95c]
push eax
lea ecx, [ebp - 0x438]
call fcn.0100345b
push eax
push dword [ebp - 0x750]
mov ecx, esi
push dword [ebp + 0x10]
call fcn.0100d345
test eax, eax
jge 0x1003d26
mov esi, 0x80070002
jmp 0x1003d72
mov ecx, dword [ebp - 0x95c]
mov eax, dword [ecx]
push 1
push dword [ebp - 0x964]
call dword [eax + 0xc]
mov esi, eax
cmp esi, ebx
jl 0x1003d72
mov ecx, dword [ebp - 0x95c]
push dword [ebp - 0x960]
mov eax, dword [ecx]
call dword [eax + 0x14]
mov esi, eax
cmp esi, ebx
jl 0x1003d72
mov ecx, dword [ebp - 0x95c]
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, dword [ebp - 0x980]
mov dword [ecx], eax
xor esi, esi
jmp 0x1003d72
mov esi, 0x8007000e
lea ecx, [ebp - 0x750]
mov byte [ebp - 4], 3
call fcn.010029e3
lea ecx, [ebp - 0x958]
mov byte [ebp - 4], 2
call fcn.010029e3
lea ecx, [ebp - 0x328]
call fcn.01002a06
lea ecx, [ebp - 0x548]
call fcn.01002a06
mov dword [ebp - 4], edi
lea ecx, [ebp - 0x438]
call fcn.01002a06
mov eax, dword [ebp - 0x95c]
cmp eax, ebx
je 0x1003dca
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 0x95c], ebx
mov ecx, dword [ebp - 0x970]
cmp ecx, ebx
je 0x1003ddb
push 1
call fcn.01002d1b
cmp esi, ebx
jge 0x1003e47
mov eax, dword [ebp - 0x964]
cmp dword [eax], ebx
jge 0x1003ded
xor eax, eax
jmp 0x1003df0
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 0x964]
lea edi, [eax + eax]
call fcn.0100345b
cmp edi, ebx
je 0x1003e08
mov byte [eax], bl
inc eax
dec edi
jne 0x1003e02
mov eax, dword [ebp - 0x960]
cmp dword [eax], ebx
jge 0x1003e16
xor eax, eax
jmp 0x1003e19
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 0x960]
lea edi, [eax + eax]
call fcn.0100345b
cmp edi, ebx
je 0x1003e31
mov byte [eax], bl
inc eax
dec edi
jne 0x1003e2b
mov eax, dword [ebp - 0x964]
mov dword [eax + 4], ebx
mov dword [eax], ebx
mov eax, dword [ebp - 0x960]
mov dword [eax + 4], ebx
mov dword [eax], ebx
mov eax, esi
call fcn.0100843f
ret 0x18