Function at 0x10037190
Capabilities:
Reference cloudflare dns server

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 0xc], ecx
cmp dword [ebp + 8], 0
je 0x100372bb
mov eax, dword [ebp + 8]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
cmp dword [ecx + 4], 0x100007f
jne 0x100371bc
mov al, 1
jmp 0x100373ff
mov edx, dword [ebp - 4]
cmp dword [edx + 4], 0
jne 0x100371cc
mov al, 1
jmp 0x100373ff
mov eax, dword [ebp - 4]
cmp dword [eax + 4], 0x1010101
jne 0x100371df
mov al, 1
jmp 0x100373ff
mov ecx, dword [ebp - 4]
cmp dword [ecx + 4], 0xffffffff
jne 0x100371ef
mov al, 1
jmp 0x100373ff
mov edx, dword [ebp - 4]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x1003720c
xor al, al
jmp 0x100373ff
movsx ecx, byte [0x10121bc8]
test ecx, ecx
je 0x10037233
push 0x10121bc8
mov edx, dword [ebp - 8]
push edx
call fcn.10008260
add esp, 8
test eax, eax
jne 0x10037233
mov al, 1
jmp 0x100373ff
movsx eax, byte [0x101277e0]
test eax, eax
je 0x10037290
mov ecx, dword [ebp - 8]
movsx edx, byte [ecx]
test edx, edx
je 0x10037290
mov eax, dword [ebp - 8]
push eax
push 0x101277e0
call fcn.10008370
add esp, 8
test eax, eax
je 0x1003728e
cmp dword [0x1011fd7c], 0x68
je 0x1003726f
cmp dword [0x1011fd7c], 2
jne 0x10037287
mov ecx, dword [ebp - 8]
push ecx
push 0x101277e0
push str.CSendMonitorDDX::isMyIP_g_tc_ExceptIP_:__s__strAddr_:__s
push 0
call fcn.1003b7a0
add esp, 0x10
mov al, 1
jmp 0x100373ff
jmp 0x100372b4
mov edx, dword [ebp - 8]
movsx eax, byte [edx]
test eax, eax
je 0x100372b4
mov ecx, dword [ebp - 8]
push ecx
call fcn.10015e30
add esp, 4
movzx edx, al
test edx, edx
je 0x100372b4
mov al, 1
jmp 0x100373ff
xor al, al
jmp 0x100373ff
cmp dword [ebp + 0xc], 0
jne 0x100372c8
xor al, al
jmp 0x100373ff
movsx eax, byte [0x10121bc8]
test eax, eax
je 0x100372ef
push 0x10121bc8
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.10008260
add esp, 8
test eax, eax
jne 0x100372ef
mov al, 1
jmp 0x100373ff
push 8
push str.169.254.
mov edx, dword [ebp + 0xc]
push edx
call fcn.100082c0
add esp, 0xc
test eax, eax
jne 0x10037317
mov dword [0x10067500], 0x1f2e3d4c
mov al, 1
jmp 0x100373ff
push 0x100601f0
mov eax, dword [ebp + 0xc]
push eax
call fcn.10008260
add esp, 8
test eax, eax
jne 0x10037333
mov al, 1
jmp 0x100373ff
push str.0.0.0.0
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.10008260
add esp, 8
test eax, eax
jne 0x1003734f
mov al, 1
jmp 0x100373ff
push str.1.1.1.1
mov edx, dword [ebp + 0xc]
push edx
call fcn.10008260
add esp, 8
test eax, eax
jne 0x1003736b
mov al, 1
jmp 0x100373ff
push str.255.255.255.255
mov eax, dword [ebp + 0xc]
push eax
call fcn.10008260
add esp, 8
test eax, eax
jne 0x10037384
mov al, 1
jmp 0x100373ff
movsx ecx, byte [0x101277e0]
test ecx, ecx
je 0x100373dc
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
test eax, eax
je 0x100373dc
mov ecx, dword [ebp + 0xc]
push ecx
push 0x101277e0
call fcn.10008370
add esp, 8
test eax, eax
je 0x100373dc
cmp dword [0x1011fd7c], 0x68
je 0x100373c0
cmp dword [0x1011fd7c], 2
jne 0x100373d8
mov edx, dword [ebp + 0xc]
push edx
push 0x101277e0
push str.CSendMonitorDDX::isMyIP2_g_tc_ExceptIP_:__s__addr_:__s
push 0
call fcn.1003b7a0
add esp, 0x10
mov al, 1
jmp 0x100373ff
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
test ecx, ecx
je 0x100373fd
mov edx, dword [ebp + 0xc]
push edx
call fcn.10015e30
add esp, 4
movzx eax, al
test eax, eax
je 0x100373fd
mov al, 1
jmp 0x100373ff
xor al, al
mov esp, ebp
pop ebp
ret 8