Function at 0x1054fb3
Capabilities:
Resolve dns

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10dc3f4
mov eax, dword fs:[0]
push eax
mov eax, 0x151c
call fcn.010a12e0
mov eax, dword [0x10ed860]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x144c], ecx
mov dword [ebp - 0x1428], ebx
mov dword [ebp - 0x1454], esi
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x105502b
test byte [eax + 0x1c], 1
je 0x105502b
cmp byte [eax + 0x19], 5
jb 0x105502b
push esi
push ebx
push 0x1005120
push 0x24
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0102cb22
xor edi, edi
mov edx, 0x80000000
cmp dword [0x10efc7c], edi
je 0x1055086
mov al, byte [0x10efc80]
cmp al, 4
jae 0x1055047
test al, al
jne 0x1055086
mov ecx, dword [0x10efc6c]
and ecx, edx
xor eax, eax
or eax, ecx
je 0x1055086
mov ecx, dword [0x10efc74]
mov eax, ecx
and eax, edx
cmp edi, dword [0x10efc70]
jne 0x1055086
cmp eax, ecx
jne 0x1055086
push esi
push ebx
push dword [ebp + 8]
push 0x10025f8
push dword [0x10efc54]
push dword [0x10efc50]
call fcn.0104e1fc
lea ecx, [ebp - 0x1488]
call fcn.010a726a
mov dword [ebp - fcn.010aa497], 0x1003568
lea ecx, [ebp - 0x1464]
mov dword [ebp - 4], edi
call fcn.010a726a
mov dword [ebp - 0x1464], 0x1003244
lea ecx, [ebp - 0x1490]
mov byte [ebp - 4], 1
call fcn.010a726a
mov dword [ebp - fcn.010aa497], 0x10032f4
lea eax, [ebp - 0x1488]
cmp dword [ebp + 8], edi
jne 0x10550dd
lea eax, [ebp - 0x1490]
mov dword [ebp - 0x1448], eax
mov dword [ebp - 0x1470], edi
mov dword [ebp - 0x1474], edi
mov dword [ebp - 0x1434], edi
mov dword [ebp - 0x1438], edi
mov dword [ebp - 0x1478], edi
mov ebx, 0x10f1178
push ebx
lea ecx, [ebp - 0x1450]
mov byte [ebp - 4], 7
call fcn.0102847f
push ebx
lea ecx, [ebp - 0x143c]
mov byte [ebp - 4], 8
call fcn.0102847f
push ebx
lea ecx, [ebp - 0x1458]
mov byte [ebp - 4], 9
call fcn.0102847f
xor eax, eax
mov esi, 0x1fe
push esi
mov word [ebp - 0x210], ax
lea eax, [ebp - 0x20e]
push edi
push eax
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x1430], edi
mov dword [ebp - 0x1444], edi
call sub.msvcrt.dll_memset
xor eax, eax
push esi
mov word [ebp - 0x410], ax
lea eax, [ebp - 0x40e]
push edi
push eax
call sub.msvcrt.dll_memset
add esp, 0x18
push ebx
lea ecx, [ebp - 0x146c]
mov dword [ebp - 0x147c], edi
mov dword [ebp - 0x1480], edi
mov byte [ebp - 0x1429], 0
mov dword [ebp - 0x145c], edi
mov dword [ebp - 0x1468], edi
call fcn.0102847f
push 0x10efed8
mov byte [ebp - 4], 0xb
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov esi, dword [0x10eff04]
push 0x10efed8
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp esi, 1
jne 0x105535a
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10551ff
test byte [eax + 0x1c], 4
je 0x10551ff
cmp byte [eax + 0x19], 4
jb 0x10551ff
push 0x1005120
push 0x25
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01027e15
mov eax, dword [0x10ed030]
mov ebx, 0x8007045b
cmp dword [0x10efc7c], edi
je 0x105526c
mov cl, byte [0x10efc80]
cmp cl, 4
jae 0x105521b
test cl, cl
jne 0x105526c
mov edx, dword [0x10efc6c]
mov esi, 0x80000000
and edx, esi
xor ecx, ecx
or ecx, edx
je 0x105526c
mov edx, dword [0x10efc74]
mov ecx, edx
and ecx, esi
cmp edi, dword [0x10efc70]
jne 0x105526c
cmp ecx, edx
jne 0x105526c
push ebx
push edi
push edi
push edi
push dword [ebp - 0x1428]
push dword [ebp + 8]
push 0x1002608
push dword [0x10efc54]
push dword [0x10efc50]
call fcn.0104e258
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x1055292
test byte [eax + 0x1c], 1
je 0x1055292
cmp byte [eax + 0x19], 2
jb 0x1055292
push ebx
push 0x1005120
push 0x26
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010294b2
mov ecx, dword [ebp - 0x146c]
add ecx, 0xfffffff0
call fcn.01028079
mov ecx, dword [ebp - 0x1458]
add ecx, 0xfffffff0
call fcn.01028079
mov ecx, dword [ebp - 0x143c]
add ecx, 0xfffffff0
call fcn.01028079
mov ecx, dword [ebp - 0x1450]
add ecx, 0xfffffff0
call fcn.01028079
push dword [ebp - 0x1478]
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call esi
push dword [ebp - 0x1438]
call esi
push dword [ebp - 0x1434]
call esi
mov eax, dword [ebp - 0x1474]
mov byte [ebp - 4], 3
cmp eax, edi
je 0x10552fc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x1470]
mov byte [ebp - 4], 2
cmp eax, edi
je 0x1055310
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov esi, ebx
mov ecx, dword [ebp - 0x148c]
add ecx, 0xfffffff0
call fcn.01028079
mov ecx, dword [ebp - 0x1460]
add ecx, 0xfffffff0
call fcn.01028079
mov ecx, dword [ebp - 0x1484]
add ecx, 0xfffffff0
call fcn.01028079
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.010a0c4b
leave
ret 0xc
mov eax, dword [ebp - 0x1428]
mov ecx, dword [eax]
lea edx, [ebp - 0x1470]
push edx
push 0x100a7a8
push eax
call dword [ecx]
mov esi, eax
cmp esi, edi
jge 0x10555a6
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10553b1
test byte [eax + 0x1c], 2
je 0x10553b1
cmp byte [eax + 0x19], 2
jb 0x10553b1
push esi
push dword [ebp - 0x1428]
push 0x1005120
push 0x27
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0102cb22
mov eax, dword [0x10ed030]
mov edi, 0x1005120
xor ebx, ebx
cmp dword [ebp + 8], ebx
je 0x10553f6
mov ecx, dword [ebp - 0x1450]
cmp dword [ecx - 0xc], ebx
je 0x10553f6
mov ecx, dword [ebp - 0x143c]
cmp dword [ecx - 0xc], ebx
je 0x10553f6
lea eax, [ebp - 0x143c]
push eax
lea eax, [ebp - 0x1450]
push eax
mov ecx, 0x10eff3c
call fcn.01054deb
cmp esi, ebx
jl 0x10553f1
mov esi, eax
mov eax, dword [0x10ed030]
cmp dword [ebp - 0x1468], ebx
je 0x105540f
push dword [ebp - 0x1468]
call dword [sym.imp.WS2_32.dll_FreeAddrInfoW]
mov eax, dword [0x10ed030]
cmp dword [ebp - 0x147c], 1
jne 0x1055430
mov ecx, dword [ebp - 0x1448]
push ebx
push ebx
push dword [ebp - 0x1430]
call fcn.010a804c
mov eax, dword [0x10ed030]
cmp dword [ebp - 0x1480], ebx
je 0x1055450
push ebx
push ebx
push dword [ebp - 0x1444]
lea ecx, [ebp - 0x1464]
call fcn.010a804c
mov eax, dword [0x10ed030]
cmp dword [ebp - 0x145c], ebx
je 0x105546a
mov ecx, dword [ebp - 0x145c]
push 1
call fcn.01050b55
mov eax, dword [0x10ed030]
cmp dword [0x10efc7c], ebx
je 0x10554ee
mov cl, byte [0x10efc80]
cmp cl, 4
jae 0x1055481
test cl, cl
jne 0x10554ee
mov edx, dword [0x10efc6c]
and edx, 0x80000000
xor ecx, ecx
or ecx, edx
je 0x10554ee
mov edx, dword [0x10efc74]
mov ecx, edx
xor ebx, ebx
and ecx, 0x80000000
cmp ebx, dword [0x10efc70]
jne 0x10554ec
cmp ecx, edx
jne 0x10554ec
xor eax, eax
cmp byte [ebp - 0x1429], al
push esi
setne al
push eax
push dword [ebp - 0x146c]
push dword [ebp - 0x143c]
push dword [ebp - 0x1428]
push dword [ebp + 8]
push 0x1002608
push dword [0x10efc54]
push dword [0x10efc50]
call fcn.0104e258
mov eax, dword [0x10ed030]
xor ebx, ebx
cmp eax, 0x10ed030
je 0x105551f
test byte [eax + 0x1c], 1
je 0x105551f
movzx ecx, byte [eax + 0x19]
xor edx, edx
cmp esi, ebx
setl dl
dec edx
and edx, 3
inc edx
inc edx
cmp ecx, edx
jl 0x105551f
push esi
push edi
push 0x47
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010294b2
mov ecx, dword [ebp - 0x146c]
add ecx, 0xfffffff0
call fcn.01028079
mov ecx, dword [ebp - 0x1458]
add ecx, 0xfffffff0
call fcn.01028079
mov ecx, dword [ebp - 0x143c]
add ecx, 0xfffffff0
call fcn.01028079
mov ecx, dword [ebp - 0x1450]
add ecx, 0xfffffff0
call fcn.01028079
push dword [ebp - 0x1478]
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call edi
push dword [ebp - 0x1438]
call edi
push dword [ebp - 0x1434]
call edi
mov eax, dword [ebp - 0x1474]
mov byte [ebp - 4], 3
cmp eax, ebx
je 0x1055589
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x1470]
mov byte [ebp - 4], 2
cmp eax, ebx
je 0x1055312
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x1055312
mov eax, dword [ebp - 0x1470]
mov ecx, dword [eax]
lea edx, [ebp - 0x1438]
push edx
push eax
call dword [ecx + 0xc]
mov esi, eax
cmp esi, edi
jge 0x10555f6
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10553b1
test byte [eax + 0x1c], 2
je 0x10553b1
cmp byte [eax + 0x19], 2
jb 0x10553b1
push esi
push dword [ebp - 0x1428]
push 0x1005120
push 0x28
jmp 0x10553a1
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x105562d
test byte [eax + 0x1c], 2
je 0x105562d
cmp byte [eax + 0x19], 4
jb 0x105562d
push esi
push dword [ebp - 0x1438]
push dword [ebp - 0x1428]
push 0x1005120
push 0x29
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01040af4
push 0x3c
pop esi
push esi
lea eax, [ebp - 0x1508]
push edi
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
push dword [ebp - 0x1438]
lea eax, [ebp - 0x210]
mov dword [ebp - 0x1508], esi
mov dword [ebp - 0x14f8], eax
mov dword [ebp - 0x14f4], 0xff
call dword [sym.imp.OLEAUT32.dll_VariantInit]
lea ecx, [ebp - 0x1508]
push ecx
push 0x10000000
push eax
push dword [ebp - 0x1438]
call dword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
test eax, eax
jne 0x10556e6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10556ca
test byte [eax + 0x1c], 2
je 0x10556ca
cmp byte [eax + 0x19], 2
jb 0x10556ca
push ebx
push dword [ebp - 0x1428]
push dword [ebp - 0x1438]
push 0x1005120
push 0x2a
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010a6cc7
mov eax, dword [0x10ed030]
cmp ebx, edi
mov edi, 0x1005120
jle 0x10556df
and ebx, 0xffff
or ebx, 0x80070000
mov esi, ebx
jmp 0x10553b6
cmp dword [ebp - 0x14fc], 1
je 0x105573c
mov esi, 0x80070057
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10553b1
test byte [eax + 0x1c], 2
je 0x10553b1
cmp byte [eax + 0x19], 2
jb 0x10553b1
push esi
push dword [ebp - 0x1428]
push dword [ebp - 0x1438]
push 0x1005120
push 0x2b
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010a6cc7
jmp 0x10553ac
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x105576d
test byte [eax + 0x1c], 4
je 0x105576d
cmp byte [eax + 0x19], 4
jb 0x105576d
lea ecx, [ebp - 0x210]
push ecx
push 0x1005120
push 0x2c
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01027e3b
push 8
pop ecx
xor eax, eax
lea edi, [ebp - 0x1528]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x1468]
push eax
lea eax, [ebp - 0x1528]
push eax
push 0
lea eax, [ebp - 0x210]
push eax
mov dword [ebp - 0x1528], 4
call dword [sym.imp.WS2_32.dll_GetAddrInfoW]
mov dword [ebp - 0x1440], eax
test eax, eax
je 0x105586e
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov ebx, eax
mov esi, ebx
test ebx, ebx
jle 0x10557c9
and esi, 0xffff
or esi, 0x80070000
test esi, esi
jl 0x105581c
mov esi, 0x80004005
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10553b1
test byte [eax + 0x1c], 2
je 0x1055821
cmp byte [eax + 0x19], 2
jb 0x1055821
push ebx
push dword [ebp - 0x1428]
lea ecx, [ebp - 0x210]
push dword [ebp - 0x1438]
mov edi, 0x1005120
push ecx
push edi
push 0x2d
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01061181
mov eax, dword [0x10ed030]
jmp 0x1055826
mov eax, dword [0x10ed030]
mov edi, 0x1005120
cmp eax, 0x10ed030
je 0x10553b1
test byte [eax + 0x1c], 4
je 0x10553b1
movzx ecx, byte [eax + 0x19]
xor edx, edx
test esi, esi
setl dl
dec edx
and edx, 3
inc edx
inc edx
cmp ecx, edx
jl 0x10553b1
push ebx
push esi
push edi
push 0x2e
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0102cb22
mov eax, dword [0x10ed030]
jmp 0x10553b6
lea ecx, [ebp - 0x141c]
call fcn.01060f4c
mov esi, dword [ebp - 0x1468]
push 6
pop edi
mov dword [ebp - 0x1424], edi
test esi, esi
je 0x105591f
lea eax, [ebp - 0x1424]
push eax
lea eax, [ebp - 0x141c]
push eax
push dword [esi + 0x18]
call fcn.0104f27d
mov ecx, eax
test ecx, ecx
je 0x10558b9
mov esi, dword [esi + 0x1c]
mov dword [ebp - 0x1424], edi
test esi, esi
jne 0x1055890
test esi, esi
jne 0x1055929
test ecx, ecx
jle 0x1055925
mov esi, ecx
and esi, 0xffff
or esi, 0x80070000
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10553b1
test byte [eax + 0x1c], 2
je 0x10553b1
cmp byte [eax + 0x19], 2
jb 0x10553b1
push ecx
push dword [ebp - 0x1428]
lea ecx, [ebp - 0x210]
push dword [ebp - 0x1438]
mov edi, 0x1005120
push ecx
push edi
push 0x2f
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01061181
jmp 0x1055864
mov ecx, dword [ebp - 0x1440]
mov esi, ecx
jmp 0x10558cf
lea eax, [ebp - 0x1450]
push eax
lea ecx, [ebp - 0x141c]
call fcn.01060fb7
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x1055974
test byte [eax + 0x1c], 4
je 0x1055974
cmp byte [eax + 0x19], 4
jb 0x1055974
push dword [ebp - 0x1428]
mov edi, 0x1005120
push dword [ebp - 0x1450]
push edi
push 0x30
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01059d60
jmp 0x1055979
mov edi, 0x1005120
mov eax, dword [ebp - 0x1428]
mov ecx, dword [eax]
lea edx, [ebp - 0x1434]
push edx
push eax
call dword [ecx + 0x30]
mov esi, eax
test esi, esi
jl 0x105679c
push dword [ebp - 0x1434]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x1056797
push dword [ebp - 0x1434]
lea ecx, [ebp - 0x143c]
call fcn.01028ac9
mov esi, dword [ebp - 0x143c]
push 0xffffffffffffffff
push 0x10057c8
push 5
push esi
push 1
push 0x7f
call dword [sym.imp.KERNEL32.dll_CompareStringW]
cmp eax, 2
je 0x1055a2e
mov esi, 0x80070057
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10553b6
test byte [eax + 0x1c], 2
je 0x10553b6
cmp byte [eax + 0x19], 2
jb 0x10553b6
push dword [ebp - 0x143c]
push dword [ebp - 0x1450]
push dword [ebp - 0x1428]
push dword [ebp - 0x1438]
push edi
push 0x32
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0104e907
jmp 0x1055864
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x1055a60
test byte [eax + 0x1c], 2
je 0x1055a60
cmp byte [eax + 0x19], 4
jb 0x1055a60
push dword [ebp - 0x1450]
push dword [ebp - 0x1434]
push edi
push 0x33
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0102c7ee
cmp dword [ebp + 8], 0
lea eax, [esi + 0xa]
mov dword [ebp - 0x1444], eax
je 0x1055a75
mov eax, dword [ebp - 0x1450]
cmp dword [0x10efc9c], 0
mov dword [ebp - 0x1430], eax
je 0x1055ab8
push eax
lea ecx, [ebp - 0x1424]
call fcn.01028b87
mov ecx, dword [0x10efc9c]
lea eax, [ebp - 0x1424]
push eax
mov byte [ebp - 4], 0xc
call fcn.0102d7cf
mov ecx, dword [ebp - 0x1424]
add ecx, 0xfffffff0
mov byte [ebp - 4], 0xb
call fcn.01028079
push 0x10efed8
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push dword [ebp - 0x1430]
mov ecx, dword [ebp - 0x1448]
xor esi, esi
mov dword [ebp - 0x1418], esi
call fcn.010a7c54
test eax, eax
jne 0x1055b6a
push dword [ebp - 0x1430]
mov ecx, dword [ebp - 0x1448]
call fcn.010a7e80
cmp eax, 0xb7
je 0x1055c3b
mov dword [ebp - 0x147c], 1
test eax, eax
je 0x1055c3b
jle 0x1055b1e
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x1055c33
test byte [eax + 0x1c], 2
je 0x1055c33
cmp byte [eax + 0x19], 2
jb 0x1055c33
push esi
push dword [ebp - 0x1430]
push dword [ebp - 0x1428]
push dword [ebp - 0x1438]
push edi
push 0x34
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0109bfd7
jmp 0x1055c33
and dword [ebp - 0x147c], esi
push ebx
lea ecx, [ebp - 0x1440]
call fcn.0102847f
mov ecx, dword [ebp - 0x1448]
lea eax, [ebp - 0x1440]
push eax
mov esi, 0x1005800
push esi
push dword [ebp - 0x1430]
mov byte [ebp - 4], 0xd
call fcn.010a8af5
mov dword [ebp - 0x1424], eax
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x1055bd0
test byte [eax + 0x1c], 4
je 0x1055bd0
cmp byte [eax + 0x19], 4
jb 0x1055bd0
push dword [ebp - 0x1424]
push edi
push 0x35
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010294b2
cmp dword [ebp - 0x1424], 0
jne 0x1055c1b
mov ecx, dword [ebp - 0x1448]
push esi
push dword [ebp - 0x1430]
call fcn.010a97b2
mov ecx, dword [0x10ed030]
cmp ecx, 0x10ed030
je 0x1055c14
test byte [ecx + 0x1c], 4
je 0x1055c14
cmp byte [ecx + 0x19], 4
jb 0x1055c14
push eax
push edi
push 0x36
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.010294b2
and dword [ebp - 0x1418], 0
mov ecx, dword [ebp - 0x1440]
add ecx, 0xfffffff0
mov byte [ebp - 4], 0xb
call fcn.01028079
mov esi, dword [ebp - 0x1418]
test esi, esi
jl 0x1055ce9
cmp dword [ebp + 8], 0
je 0x1055ce9
push dword [ebp - 0x1444]
lea ecx, [ebp - 0x1464]
call fcn.010a7c54
test eax, eax
jne 0x1055cc7
push dword [ebp - 0x1444]
lea ecx, [ebp - 0x1464]
call fcn.010a7e80
cmp eax, 0xb7
je 0x1055cc7
mov dword [ebp - 0x1480], 1
test eax, eax
je 0x1055cc7
jle 0x1055c8c
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x1055cc7
test byte [eax + 0x1c], 2
je 0x1055cc7
cmp byte [eax + 0x19], 2
jb 0x1055cc7
push esi
push dword [ebp - 0x1444]
push dword [ebp - 0x1428]
push dword [ebp - 0x1438]
push edi
push 0x37
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0109bfd7
test esi, esi
jl 0x1055ce9
push 1
push dword [ebp - 0x1430]
lea ecx, [ebp - 0x1464]
push 0x10057e8
push dword [ebp - 0x1444]
call fcn.010a9399
push 0x10efed8
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test esi, esi
jl 0x1055864
cmp dword [ebp + 8], 0
je 0x1055d56
push dword [ebp - 0x1428]
mov ecx, dword [ebp - 0x144c]
call fcn.010524a9
xor ecx, ecx
test al, al
setne cl
mov esi, 0x10052cc
mov byte [ebp - 0x1429], al
push ecx
push esi
push dword [ebp - 0x1430]
mov dword [ebp - 0x1424], ecx
mov ecx, dword [ebp - 0x1448]
call fcn.010a8ca2
push dword [ebp - 0x1424]
lea ecx, [ebp - 0x1464]
push esi
push dword [ebp - 0x1444]
call fcn.010a8ca2
mov esi, dword [ebp - 0x1428]
mov ecx, dword [ebp - 0x144c]
lea eax, [ebp - 0x146c]
push eax
push dword [ebp - 0x1430]
push dword [ebp - 0x1448]
push esi
call fcn.01052816
push dword [ebp - 0x1454]
mov ecx, dword [ebp - 0x144c]
push dword [ebp - 0x1430]
push dword [ebp - 0x1448]
push esi
call fcn.01052c43
cmp dword [ebp + 8], 0
je 0x1055dfc
push ebx
lea ecx, [ebp - 0x1424]
call fcn.0102847f
mov ecx, dword [ebp - 0x144c]
lea eax, [ebp - 0x1424]
push eax
push dword [ebp - 0x1444]
lea eax, [ebp - 0x1464]
push eax
push esi
mov byte [ebp - 4], 0xe
call fcn.01052816
push dword [ebp - 0x1454]
mov ecx, dword [ebp - 0x144c]
push dword [ebp - 0x1444]
lea eax, [ebp - 0x1464]
push eax
push esi
call fcn.01052c43
mov ecx, dword [ebp - 0x1424]
add ecx, 0xfffffff0
call fcn.01028079
and dword [ebp - 0x1424], 0
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x1454], 0x10051f0
mov dword [ebp - 0x1440], 0x1005130
push dword [ebp - 0x1440]
lea ecx, [ebp - 0x144c]
call fcn.0102e3bb
push dword [ebp - 0x144c]
mov byte [ebp - 4], 0xf
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
jne 0x1055e4d
push dword [ebp - 0x144c]
jmp 0x1055fca
push dword [ebp - 0x1434]
call esi
mov eax, dword [ebp - 0x1428]
mov ecx, dword [eax]
and dword [ebp - 0x1434], 0
lea edx, [ebp - 0x1434]
push edx
push 0x18
push 0x30
push 0x30
push dword [ebp - 0x144c]
push eax
call dword [ecx + 0x60]
push dword [ebp - 0x144c]
mov dword [ebp - 0x1418], eax
call esi
and dword [ebp - 0x144c], 0
cmp dword [ebp - 0x1418], 0
jl 0x1055fb9
push dword [ebp - 0x1434]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x1055fb9
xor eax, eax
push 0x1000
push eax
mov word [ebp - 0x1414], ax
lea eax, [ebp - 0x1412]
push eax
call sub.msvcrt.dll_memset
push 0x3c
lea eax, [ebp - 0x14cc]
push 0
push eax
call sub.msvcrt.dll_memset
lea eax, [ebp - 0x410]
add esp, 0x18
push dword [ebp - 0x1434]
mov dword [ebp - 0x14bc], eax
lea eax, [ebp - 0x1414]
mov dword [ebp - 0x14cc], 0x3c
mov dword [ebp - 0x14a0], eax
mov dword [ebp - 0x149c], 0x800
mov dword [ebp - 0x14b8], 0xff
call dword [sym.imp.OLEAUT32.dll_VariantInit]
lea ecx, [ebp - 0x14cc]
push ecx
push 0x10000000
push eax
push dword [ebp - 0x1434]
call dword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
test eax, eax
jne 0x1055f56
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x1055f52
and eax, 0xffff
or eax, 0x80070000
mov ecx, eax
jmp 0x1055f8c
cmp dword [ebp - 0x14c0], 1
je 0x1055f66
mov ecx, 0x80070057
jmp 0x1055f90
push 0xffffffffffffffff
lea eax, [ebp - 0x410]
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x210]
push eax
push 1
push 0x7f
call dword [sym.imp.KERNEL32.dll_CompareStringW]
cmp eax, 2
je 0x1055ffa
mov ecx, 0x80070057
test ecx, ecx
jge 0x1055fc8
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x1055fc8
test byte [eax + 0x1c], 2
je 0x1055fc8
cmp byte [eax + 0x19], 2
jb 0x1055fc8
push ecx
push edi
push 0x38
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010294b2
jmp 0x1055fc8
push dword [ebp - 0x1434]
call esi
and dword [ebp - 0x1434], 0
push 0
mov byte [ebp - 4], 0xb
call esi
add dword [ebp - 0x1424], 0x20
add dword [ebp - 0x1440], 0x20
add dword [ebp - 0x1454], 0xa
cmp dword [ebp - 0x1424], 0xc0
jb 0x1055e1d
jmp 0x10561ab
push 0x18
call fcn.010a09e7
pop ecx
test eax, eax
je 0x1056017
mov ecx, eax
call fcn.010505c0
mov esi, eax
mov dword [ebp - 0x145c], eax
jmp 0x105601f
xor esi, esi
mov dword [ebp - 0x145c], esi
test esi, esi
je 0x105619f
push dword [ebp - 0x1434]
mov ecx, esi
call fcn.01028b27
lea ecx, [esi + 4]
push 0x104
mov dword [ebp - 0x1418], ecx
call fcn.010286c1
push 0x104
push eax
call fcn.0104de1c
test eax, eax
jne 0x1056192
cmp dword [ebp - 0x1454], eax
je 0x1056192
push ebx
lea ecx, [ebp - 0x1440]
call fcn.0102847f
mov ecx, dword [ebp - 0x1418]
push 0xffffffffffffffff
mov byte [ebp - 4], 0x10
call fcn.0102f2bd
push dword [ebp - 0x1430]
lea ecx, [ebp - 0x1440]
call fcn.01028ac9
push dword [ebp - 0x1454]
lea ecx, [ebp - 0x1440]
call fcn.01028aa3
mov ecx, dword [ebp - 0x1418]
push 0x1005620
call fcn.01028aa3
cmp dword [ebp + 8], 0
je 0x105611d
push ebx
lea ecx, [ebp - 0x1424]
call fcn.0102847f
lea eax, [ebp - 0x1424]
push eax
push dword [ebp - 0x1444]
mov byte [ebp - 4], 0x11
call fcn.010a7bb0
test eax, eax
jne 0x105610b
push dword [ebp - 0x1418]
lea ebx, [esi + 8]
mov ecx, ebx
call fcn.01028aef
push dword [ebp - 0x1424]
mov ecx, ebx
call fcn.01052376
push dword [ebp - 0x1454]
mov ecx, ebx
call fcn.01033a08
mov ecx, dword [ebp - 0x1424]
add ecx, 0xfffffff0
mov byte [ebp - 4], 0x10
call fcn.01028079
mov eax, dword [ebp - 0x1440]
push dword [eax - 0xc]
mov ecx, dword [ebp - 0x1418]
push eax
call fcn.0102895b
push dword [ebp - 0x1430]
lea ecx, [esi + 0xc]
call fcn.01028b27
push dword [ebp - 0x1444]
lea ecx, [esi + 0x10]
call fcn.01028b27
mov eax, dword [ebp + 8]
mov ebx, 0x10efef4
push ebx
mov dword [esi + 0x14], eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push 0x10
push esi
push 0x10515b2
call dword [sym.imp.KERNEL32.dll_QueueUserWorkItem]
test eax, eax
je 0x105617b
and dword [ebp - 0x145c], 0
jmp 0x1056182
push ebx
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
mov ecx, dword [ebp - 0x1440]
add ecx, 0xfffffff0
call fcn.01028079
jmp 0x105619f
mov ecx, dword [ebp - 0x1418]
push 0
call fcn.01028125
push 0
mov byte [ebp - 4], 0xb
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x1428]
mov ecx, dword [eax]
lea edx, [ebp - 0x1474]
push edx
push 0x100a7b8
push eax
call dword [ecx]
mov esi, eax
test esi, esi
jge 0x1056206
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10553b6
test byte [eax + 0x1c], 2
je 0x10553b6
cmp byte [eax + 0x19], 2
jb 0x10553b6
push esi
push dword [ebp - 0x1428]
push edi
push 0x39
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0102cb22
jmp 0x1055864
mov eax, dword [ebp - 0x1474]
mov ecx, dword [eax]
lea edx, [ebp - 0x1478]
push edx
push eax
call dword [ecx + 0xc]
mov esi, eax
test esi, esi
jge 0x105624f
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10553b6
test byte [eax + 0x1c], 2
je 0x10553b6
cmp byte [eax + 0x19], 2
jb 0x10553b6
push esi
push dword [ebp - 0x1428]
push edi
push 0x3a
jmp 0x10561f6
push dword [ebp + 8]
mov ebx, dword [ebp - 0x1430]
push ebx
push dword [ebp - 0x1478]
call fcn.01053633
push 0x10efed8
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [ebp + 8], 0
je 0x1056384
push ebx
push dword [ebp - 0x143c]
mov ecx, 0x10ed270
call fcn.0104ce25
mov eax, dword [0x10ed030]
mov esi, 0x10ed030
cmp eax, esi
je 0x10562be
test byte [eax + 0x1c], 4
je 0x10562be
cmp byte [eax + 0x19], 5
jb 0x10562be
push ebx
push dword [ebp - 0x143c]
push edi
push 0x3b
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0102c7ee
mov eax, dword [0x10ed030]
mov ecx, dword [0x10ed274]
mov dword [0x10eff28], ecx
mov dword [0x10eff24], ecx
cmp eax, esi
je 0x10562f4
test byte [eax + 0x1c], 4
je 0x10562f4
cmp byte [eax + 0x19], 5
jb 0x10562f4
push ecx
push edi
push 0x3c
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010294b2
mov eax, dword [0x10ed030]
cmp byte [ebp - 0x1429], 0
je 0x1056350
push 0
push dword [ebp - 0x143c]
mov ebx, 0x10ed2a0
mov ecx, ebx
call fcn.0102ee0d
test eax, eax
jne 0x105634b
push dword [ebp - 0x143c]
mov ecx, ebx
call fcn.010372b0
mov eax, dword [0x10ed030]
cmp eax, esi
je 0x1056350
test byte [eax + 0x1c], 4
je 0x1056350
cmp byte [eax + 0x19], 5
jb 0x1056350
push dword [ebp - 0x143c]
push edi
push 0x3d
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01027e3b
mov eax, dword [0x10ed030]
mov ecx, dword [0x10ed2a8]
mov dword [0x10eff30], ecx
mov dword [0x10eff34], ecx
cmp eax, esi
je 0x10563ff
test byte [eax + 0x1c], 4
je 0x10563ff
cmp byte [eax + 0x19], 5
jb 0x10563ff
push ecx
push edi
push 0x3e
jmp 0x10563f4
push 0
mov esi, 0x10ed258
push ebx
mov ecx, esi
call fcn.0102ee0d
test eax, eax
jne 0x10563ca
push ebx
mov ecx, esi
call fcn.010372b0
mov eax, dword [0x10ed030]
mov esi, 0x10ed030
cmp eax, esi
je 0x10563d4
test byte [eax + 0x1c], 4
je 0x10563d4
cmp byte [eax + 0x19], 5
jb 0x10563d4
push ebx
push edi
push 0x3f
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01027e3b
jmp 0x10563cf
mov esi, 0x10ed030
mov eax, dword [0x10ed030]
mov ecx, dword [0x10ed260]
mov dword [0x10eff2c], ecx
cmp eax, esi
je 0x10563ff
test byte [eax + 0x1c], 4
je 0x10563ff
cmp byte [eax + 0x19], 5
jb 0x10563ff
push ecx
push edi
push 0x40
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010294b2
push dword [ebp - 0x14f8]
lea ecx, [ebp - 0x1458]
call fcn.01028ac9
push 0x5b
lea ecx, [ebp - 0x1458]
call fcn.01051950
push 0x5d
lea ecx, [ebp - 0x1458]
call fcn.01051950
push dword [ebp - 0x1458]
mov ecx, dword [ebp - 0x1448]
mov ebx, 0x10057d4
push ebx
push dword [ebp - 0x1430]
call fcn.010a8ea4
cmp dword [ebp + 8], 0
je 0x1056465
push dword [ebp - 0x1458]
lea ecx, [ebp - 0x1464]
push ebx
push dword [ebp - 0x1444]
call fcn.010a8ea4
mov ecx, dword [ebp - 0x1448]
push 1
mov ebx, 0x10041d4
push ebx
push dword [ebp - 0x1430]
call fcn.010a8ca2
cmp dword [ebp + 8], 0
je 0x1056498
push 1
push ebx
push dword [ebp - 0x1444]
lea ecx, [ebp - 0x1464]
call fcn.010a8ca2
xor eax, eax
mov dword [ebp - 0x1420], eax
mov dword [ebp - 0x141c], eax
mov dword [ebp - 0x1418], eax
mov dword [ebp - 0x1424], 0x1003598
cmp dword [ebp + 8], eax
jne 0x10564c5
mov dword [ebp - 0x1424], 0x1003328
push 0x20106
push dword [ebp - 0x1424]
lea ecx, [ebp - 0x1420]
push 0x80000002
call fcn.010292e8
mov ebx, eax
mov eax, dword [0x10ed030]
cmp eax, esi
je 0x105651a
test byte [eax + 0x1c], 2
je 0x105651a
movzx ecx, byte [eax + 0x19]
mov edx, ebx
neg edx
sbb edx, edx
and edx, 0xfffffffd
add edx, 5
cmp ecx, edx
jl 0x105651a
push dword [ebp - 0x1424]
push ebx
push edi
push 0x41
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01059cca
test ebx, ebx
jne 0x1056616
lea ecx, [ebp - 0x1420]
cmp dword [ebp + 8], ebx
je 0x10565cd
push dword [0x10eff28]
push 0x1004270
call fcn.0102c71e
mov ecx, dword [0x10ed030]
cmp ecx, esi
je 0x105657a
test byte [ecx + 0x1c], 2
je 0x105657a
movzx edx, byte [ecx + 0x19]
mov ebx, eax
neg ebx
sbb ebx, ebx
and ebx, 0xfffffffd
add ebx, 5
cmp edx, ebx
jl 0x105657a
push dword [0x10eff28]
push eax
push edi
push 0x42
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.0102cb22
cmp byte [ebp - 0x1429], 0
je 0x1056616
push dword [0x10eff30]
lea ecx, [ebp - 0x1420]
push 0x1004248
call fcn.0102c71e
mov ecx, dword [0x10ed030]
cmp ecx, esi
je 0x1056616
test byte [ecx + 0x1c], 2
je 0x1056616
movzx edx, byte [ecx + 0x19]
mov ebx, eax
neg ebx
sbb ebx, ebx
and ebx, 0xfffffffd
add ebx, 5
cmp edx, ebx
jl 0x1056616
push dword [0x10eff30]
push eax
push edi
push 0x43
jmp 0x105660b
push dword [0x10eff2c]
push 0x1004224
call fcn.0102c71e
mov ecx, dword [0x10ed030]
cmp ecx, esi
je 0x1056616
test byte [ecx + 0x1c], 2
je 0x1056616
movzx edx, byte [ecx + 0x19]
mov ebx, eax
neg ebx
sbb ebx, ebx
and ebx, 0xfffffffd
add ebx, 5
cmp edx, ebx
jl 0x1056616
push dword [0x10eff2c]
push eax
push edi
push 0x44
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.0102cb22
lea ecx, [ebp - 0x1420]
call fcn.010292ca
xor ebx, ebx
cmp dword [ebp + 8], ebx
je 0x105670b
push 0x20106
push 0x1003278
push 0x80000002
lea ecx, [ebp - 0x1420]
mov dword [ebp - 0x1420], ebx
mov dword [ebp - 0x141c], ebx
mov dword [ebp - 0x1418], ebx
call fcn.010292e8
cmp eax, ebx
jne 0x1056700
push dword [0x10eff24]
lea ecx, [ebp - 0x1420]
push 0x1004270
call fcn.0102c71e
mov ecx, dword [0x10ed030]
cmp ecx, esi
je 0x10566b1
test byte [ecx + 0x1c], 2
je 0x10566b1
movzx edx, byte [ecx + 0x19]
mov ebx, eax
neg ebx
sbb ebx, ebx
and ebx, 0xfffffffd
add ebx, 5
cmp edx, ebx
jl 0x10566af
push dword [0x10eff24]
push eax
push edi
push 0x45
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.0102cb22
xor ebx, ebx
push dword [0x10eff34]
lea ecx, [ebp - 0x1420]
push 0x1004248
call fcn.0102c71e
mov ecx, dword [0x10ed030]
cmp ecx, esi
je 0x1056700
test byte [ecx + 0x1c], 2
je 0x1056700
movzx edx, byte [ecx + 0x19]
mov esi, eax
neg esi
sbb esi, esi
and esi, 0xfffffffd
add esi, 5
cmp edx, esi
jl 0x1056700
push dword [0x10eff34]
push eax
push edi
push 0x46
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.0102cb22
lea ecx, [ebp - 0x1420]
call fcn.010292ca
cmp dword [0x10efc7c], ebx
je 0x1056779
mov al, byte [0x10efc80]
cmp al, 4
jae 0x1056720
test al, al
jne 0x1056779
mov ecx, dword [0x10efc6c]
mov edx, 0x80000000
and ecx, edx
xor eax, eax
or eax, ecx
je 0x1056779
mov ecx, dword [0x10efc74]
mov eax, ecx
and eax, edx
xor edx, edx
cmp edx, dword [0x10efc70]
jne 0x1056779
cmp eax, ecx
jne 0x1056779
push dword [0x10eff34]
push dword [0x10eff24]
push dword [0x10eff30]
push dword [0x10eff28]
push 0x1002618
push dword [0x10efc54]
push dword [0x10efc50]
call fcn.01083d3a
push 0x10efed8
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov dword [ebp - 0x147c], ebx
mov dword [ebp - 0x1480], ebx
xor esi, esi
jmp 0x1055864
mov esi, 0x80070057
mov eax, dword [0x10ed030]
cmp eax, 0x10ed030
je 0x10553b1
test byte [eax + 0x1c], 2
je 0x10553b1
cmp byte [eax + 0x19], 2
jb 0x10553b1
push esi
push dword [ebp - 0x1450]
push dword [ebp - 0x1428]
push dword [ebp - 0x1438]
push edi
push 0x31
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0109bfd7
jmp 0x1055864