Function at 0x1044f0e
Capabilities:
Parse url

Disassembly:
push 0x294
mov eax, 0x108a764
call fcn.010023ba
mov edi, ecx
xor ebx, ebx
mov dword [ebp - 0x220], edi
cmp byte [edi + 0xdc], bl
jne 0x1045103
mov byte [edi + 0xdc], 1
mov dword [ebp - 0x234], ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x23c], ebx
mov dword [ebp - 0x238], ebx
mov dword [ebp - 0x240], ebx
mov dword [ebp - 0x230], ebx
mov dword [ebp - 0x264], ebx
lea eax, [ebp - 0x234]
push eax
mov byte [ebp - 4], 5
call fcn.01042629
cmp eax, ebx
jl 0x10450a7
mov eax, dword [ebp - 0x234]
mov ecx, dword [eax]
lea edx, [ebp - 0x23c]
push edx
push eax
call dword [ecx + 0x24]
cmp eax, ebx
jl 0x10450a7
cmp dword [ebp - 0x23c], ebx
je 0x10450a7
push dword [ebp - 0x23c]
lea ecx, [ebp - 0x238]
call fcn.01042419
cmp eax, ebx
jl 0x10450a7
mov eax, dword [ebp - 0x238]
mov ecx, dword [eax]
lea edx, [ebp - 0x240]
push edx
push eax
call dword [ecx + 0xa0]
cmp eax, ebx
jl 0x10450a7
test byte [ebp + 8], 4
je 0x104525d
mov dword [ebp - 0x224], ebx
xor eax, eax
mov word [ebp - 0x250], ax
lea esi, [edi + 0x100]
mov ecx, esi
mov byte [ebp - 4], 7
call fcn.0104462e
cmp eax, ebx
jge 0x104502c
lea eax, [ebp - 0x250]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [ebp - 0x224]
mov byte [ebp - 4], 5
cmp eax, ebx
je 0x10450a7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x10450a7
push dword [esi]
lea ecx, [ebp - 0x224]
call fcn.01042026
cmp eax, ebx
jl 0x1045005
mov eax, dword [esi]
mov dword [eax + 8], 0x1045a87
mov dword [eax + 0xc], edi
push dword [ebp - 0x224]
lea ecx, [ebp - 0x250]
call fcn.01042b57
mov eax, dword [ebp - 0x238]
mov ecx, dword [eax]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x250]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
movsd dword es:[edi], dword [esi]
call dword [ecx + 0xa4]
cmp eax, ebx
jge 0x104510b
lea eax, [ebp - 0x250]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [ebp - 0x224]
mov byte [ebp - 4], 5
cmp eax, ebx
je 0x10450a1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edi, dword [ebp - 0x220]
lea ecx, [ebp - 0x264]
mov byte [edi + 0xdc], bl
mov byte [ebp - 4], 4
call fcn.010050a1
lea eax, [ebp - 0x230]
push eax
call fcn.0100229b
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 2
call fcn.010050a1
lea ecx, [ebp - 0x238]
mov byte [ebp - 4], 1
call fcn.010050a1
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], bl
call fcn.010050a1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x234]
call fcn.010050a1
call fcn.010024a1
ret 4
xor eax, eax
mov word [ebp - 0x260], ax
mov eax, dword [ebp - 0x234]
mov ecx, dword [eax]
lea edx, [ebp - 0x260]
push edx
push eax
mov byte [ebp - 4], 8
call dword [ecx + 0x1a0]
cmp eax, ebx
jge 0x104514f
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x260]
push eax
call esi
lea eax, [ebp - 0x250]
push eax
call esi
jmp 0x104508d
cmp word [ebp - 0x260], 1
jne 0x104522b
mov dword [ebp - 0x22c], ebx
mov dword [ebp - 0x228], ebx
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0xa
call fcn.0104465f
cmp eax, ebx
jge 0x10451a6
mov eax, dword [ebp - 0x228]
mov byte [ebp - 4], 9
cmp eax, ebx
je 0x1045190
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x22c]
mov byte [ebp - 4], 8
cmp eax, ebx
je 0x1045132
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x1045132
mov esi, dword [ebp - 0x228]
push esi
lea ecx, [ebp - 0x22c]
call fcn.01042026
cmp eax, ebx
jge 0x10451cc
mov byte [ebp - 4], 9
cmp esi, ebx
je 0x1045190
mov eax, dword [esi]
push esi
call dword [eax + 8]
jmp 0x1045190
push dword [ebp - 0x22c]
lea ecx, [ebp - 0x260]
call fcn.01042b57
mov eax, dword [ebp - 0x234]
mov ecx, dword [eax]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x260]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
movsd dword es:[edi], dword [esi]
call dword [ecx + 0x19c]
cmp eax, ebx
mov eax, dword [ebp - 0x228]
mov byte [ebp - 4], 9
jl 0x1045186
cmp eax, ebx
je 0x1045217
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x22c]
mov byte [ebp - 4], 8
cmp eax, ebx
je 0x104522b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x260]
push eax
call esi
lea eax, [ebp - 0x250]
push eax
call esi
mov eax, dword [ebp - 0x224]
mov byte [ebp - 4], 5
cmp eax, ebx
je 0x1045257
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edi, dword [ebp - 0x220]
test byte [ebp + 8], 2
je 0x10453fd
mov eax, dword [ebp - 0x240]
mov ecx, dword [eax]
lea edx, [ebp - 0x230]
push edx
push eax
call dword [ecx + 0x40]
cmp eax, ebx
jl 0x10450a7
mov esi, dword [ebp - 0x230]
push esi
call fcn.010100f0
test al, al
jne 0x10453fd
push 0x38
lea eax, [ebp - 0x29c]
push ebx
push eax
call sub.msvcrt.dll_memset
xor eax, eax
mov word [ebp - 0x14], ax
lea eax, [ebp - 0x21c]
add esp, 0xc
mov dword [ebp - 0x274], eax
lea eax, [ebp - 0x2a0]
push eax
push 0x80000000
push esi
mov dword [ebp - 0x270], 0x104
mov dword [ebp - 0x2a0], 0x3c
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push eax
push esi
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
test eax, eax
je 0x10453fd
mov dword [ebp - 0x220], ebx
mov dword [ebp - 0x22c], ebx
push 0x29
push dword [ebp - 0x274]
mov byte [ebp - 4], 0xc
call sub.msvcrt.dll_wcsrchr
pop ecx
pop ecx
cmp eax, ebx
je 0x1045319
xor ecx, ecx
mov word [eax], cx
push 0x22
push dword [ebp - 0x274]
call sub.msvcrt.dll_wcsrchr
pop ecx
pop ecx
cmp eax, ebx
je 0x1045331
xor ecx, ecx
mov word [eax], cx
mov esi, dword [ebp - 0x274]
mov eax, 0x105
cmp dword [ebp - 0x270], eax
jae 0x1045361
mov eax, dword [ebp - 0x270]
jmp 0x1045361
dec eax
cmp esi, ebx
je 0x1045365
movzx ecx, word [esi]
cmp cx, bx
je 0x1045365
cmp cx, 0x2f
jne 0x1045365
inc esi
inc esi
cmp eax, ebx
jne 0x104534c
push esi
mov dword [ebp - 0x228], ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
jle 0x10453a0
mov eax, dword [ebp - 0x228]
lea eax, [esi + eax*2]
cmp word [eax], 0x2f
jne 0x104538b
push 0x5c
pop ecx
mov word [eax], cx
inc dword [ebp - 0x228]
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp dword [ebp - 0x228], eax
jl 0x1045376
push esi
lea eax, [ebp - 0x230]
push eax
call fcn.01003f76
cmp eax, ebx
jge 0x10453d1
lea ecx, [ebp - 0x22c]
mov byte [ebp - 4], 0xb
call fcn.010050a1
lea eax, [ebp - 0x220]
push eax
call fcn.0100229b
jmp 0x10450a7
push dword [ebp - 0x230]
mov ecx, edi
call fcn.01045a9d
lea ecx, [ebp - 0x22c]
mov byte [ebp - 4], 0xb
call fcn.010050a1
lea eax, [ebp - 0x220]
push eax
mov byte [ebp - 4], 5
call fcn.0100229b
test byte [ebp + 8], 1
je 0x104544b
lea ecx, [edi + 0x58]
call fcn.01042bc3
mov eax, dword [edi + 4]
push 0x102737c
mov dword [ebp - 0x11c], eax
push 0x80
lea eax, [ebp - 0x114]
push eax
mov dword [ebp - 0x124], 0x110
mov dword [ebp - 0x120], 0x8200
call fcn.010022e3
push ebx
lea eax, [ebp - 0x124]
push eax
call fcn.01017665
test byte [ebp + 8], 3
je 0x104546d
mov esi, 0x102735c
push esi
push dword [edi + 4]
call fcn.0103d7be
push 0xfa
push esi
push dword [edi + 4]
call fcn.0103d79a
test byte [ebp + 8], 0x18
je 0x10450a7
push dword [edi + 0xec]
call fcn.010100f0
test al, al
jne 0x10450a7
push dword [edi + 0xf0]
call fcn.010100f0
test al, al
jne 0x10450a7
push dword [edi + 0xf4]
call fcn.010100f0
test al, al
jne 0x10450a7
push dword [edi + 0xf8]
call fcn.010100f0
test al, al
jne 0x10450a7
mov ecx, edi
call fcn.0104471d
jmp 0x10450a7