Function at 0x1016668
Capabilities:
Start http server

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1026279
mov eax, dword fs:[0]
push eax
mov eax, 0x2434
call fcn.01024b80
mov eax, dword [0x102b01c]
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 + 8]
mov edi, ecx
xor esi, esi
cmp dword [edi + 0x2424], esi
jne 0x10166cc
push esi
push 0x54f
push 0x1004b4c
push 0x62c
push 0x10045e8
call fcn.0100a7b1
xor eax, eax
jmp 0x1016a9d
cmp ebx, esi
jne 0x10166e2
push esi
push 0x54f
push 0x1004b40
push 0x62d
jmp 0x10166bb
mov eax, dword [0x102b00c]
cmp eax, 0x102b00c
je 0x101670a
test dword [eax + 0x1c], 0x200000
je 0x101670a
push edi
push 0x10045d4
push 0x3f
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01019984
mov ecx, dword [edi + 0x2428]
lea eax, [ebp - 0x2424]
push eax
push ebx
mov dword [ebp - 0x2424], esi
call fcn.0101bb25
test eax, eax
je 0x10166c5
cmp dword [ebp - 0x2424], esi
je 0x1016776
mov eax, dword [0x102b00c]
cmp eax, 0x102b00c
je 0x1016756
test dword [eax + 0x1c], 0x400000
je 0x1016756
push 0x10045d4
push 0x40
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0100904c
mov eax, dword [ebx]
push 0x4033c413
mov esi, 0x8033808a
push esi
push ebx
call dword [eax + 0x1c]
add esp, 0xc
push esi
call dword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x10166c5
xor eax, eax
inc eax
mov dword [ebp - 0x2414], eax
mov dword [ebp - 0x2420], esi
cmp dword [ebp + 0xc], esi
jne 0x1016a56
mov word [ebp - 0x2418], ax
push esi
xor eax, eax
push 2
mov word [ebp - 0x2416], ax
push dword [ebp - 0x2418]
call dword [sym.imp.HTTPAPI.dll_HttpInitialize]
cmp eax, esi
jne 0x10167bd
mov dword [ebp - 0x2420], 1
jmp 0x10167f4
cmp eax, 5
jne 0x10167cb
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x10]
jmp 0x10167ee
cmp eax, 0xe
jne 0x10167d9
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0xc]
jmp 0x10167ee
mov ecx, dword [ebx]
push eax
push 0x1004b20
push 0x4033c360
push eax
push ebx
call dword [ecx + 0x1c]
add esp, 0x14
mov dword [ebp - 0x2414], esi
lea ecx, [ebp - 0x2440]
mov dword [ebp - 0x2418], esi
call fcn.0100fddb
mov dword [ebp - 4], esi
cmp dword [ebp - 0x2414], esi
je 0x1016959
mov ecx, dword [edi + 0x2428]
push ebx
lea eax, [ebp - 0x2440]
push eax
call fcn.0101f246
mov dword [ebp - 0x2414], eax
cmp eax, esi
je 0x10168ef
mov ecx, dword [edi + 0x2428]
push esi
lea eax, [ebp - 0x2418]
push eax
lea eax, [ebp - 0x1410]
push eax
mov esi, 0x400
push esi
push 0xbb9
push ebx
call fcn.0101e427
mov dword [ebp - 0x2414], eax
test eax, eax
je 0x10168ed
mov ecx, dword [edi + 0x2428]
push 0
lea eax, [ebp - 0x2418]
push eax
lea eax, [ebp - 0x810]
push eax
push esi
push 0xbba
push ebx
call fcn.0101e427
mov dword [ebp - 0x2414], eax
test eax, eax
je 0x10168ed
mov ecx, dword [edi + 0x2428]
push 0
lea eax, [ebp - 0x2418]
push eax
lea eax, [ebp - 0x1c10]
push eax
push esi
push 0xbbd
push ebx
call fcn.0101e427
mov dword [ebp - 0x2414], eax
test eax, eax
je 0x10168ed
mov ecx, dword [edi + 0x2428]
push 0
lea eax, [ebp - 0x2418]
push eax
lea eax, [ebp - 0x2410]
push eax
push esi
push 0xbbe
push ebx
call fcn.0101e427
mov dword [ebp - 0x2414], eax
test eax, eax
jne 0x1016908
xor esi, esi
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
push eax
mov ecx, edi
call fcn.01012e3b
cmp dword [ebp - 0x2414], esi
je 0x1016959
jmp 0x101690a
xor esi, esi
mov edx, 0x1001c58
lea eax, [ebp - 0x2410]
mov cx, word [eax]
cmp cx, word [edx]
jne 0x101693b
cmp cx, si
je 0x1016937
mov cx, word [eax + 2]
cmp cx, word [edx + 2]
jne 0x101693b
add eax, 4
add edx, 4
cmp cx, si
jne 0x1016915
xor eax, eax
jmp 0x1016940
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
je 0x1016959
lea eax, [ebp - 0x810]
push eax
lea eax, [ebp - 0x2440]
push eax
mov ecx, edi
call fcn.0101302f
mov dword [ebp - 0x241c], esi
mov byte [ebp - 4], 2
cmp dword [ebp - 0x2414], esi
je 0x10169f9
push esi
lea eax, [ebp - 0x1c10]
push eax
lea eax, [ebp - 0x810]
push eax
lea eax, [ebp - 0x1410]
push eax
push ebx
call fcn.0100c8c4
push eax
lea ecx, [ebp - 0x241c]
call fcn.0101424f
cmp dword [ebp - 0x241c], esi
jne 0x10169ac
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0xc]
mov dword [ebp - 0x2414], esi
cmp dword [ebp - 0x2414], esi
je 0x10169f9
lea eax, [ebp - 0x2428]
push eax
push dword [ebp - 0x241c]
lea eax, [ebp - 0x2440]
push eax
push ebx
mov ecx, edi
call fcn.01016299
test eax, eax
je 0x10169f9
cmp dword [ebp - 0x2428], esi
jne 0x10169f9
push dword [ebp - 0x241c]
mov ecx, edi
push ebx
call fcn.010165cb
test eax, eax
jne 0x10169f9
push dword [ebp - 0x241c]
call fcn.010103d0
cmp dword [ebp - 0x2420], esi
je 0x1016a38
push esi
push 2
call dword [sym.imp.HTTPAPI.dll_HttpTerminate]
cmp eax, esi
je 0x1016a38
mov ecx, dword [0x102b00c]
cmp ecx, 0x102b00c
je 0x1016a38
test dword [ecx + 0x1c], 0x400000
je 0x1016a38
push eax
push 0x10045d4
push 0x41
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.01019984
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x241c]
call fcn.0100c51b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2440]
call fcn.0100fe23
lea eax, [ebp - 0xc10]
push eax
push ebx
mov ecx, edi
call fcn.01013557
cmp eax, esi
je 0x1016a89
push 1
lea eax, [ebp - 0xc10]
push eax
push ebx
call fcn.0101ae2d
cmp eax, esi
je 0x1016a89
cmp dword [ebp + 0x10], esi
je 0x1016a89
push ebx
mov ecx, edi
call fcn.0101af7a
cmp dword [ebp - 0x2414], esi
je 0x1016a97
mov dword [ebp - 0x2414], eax
mov eax, dword [ebp - 0x2414]
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.0100a071
leave
ret 0xc