Function at 0x50e880
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x244
mov eax, dword [0x8606e0]
xor eax, esp
mov dword [esp + 0x240], eax
mov eax, dword [esp + 0x24c]
push ebx
mov ebx, dword [esp + 0x24c]
push esi
push edi
mov dword [esp + 0x18], ebx
mov edi, dword [ebx]
lea esi, [edi + 0x140]
mov dword [eax], 0
cmp dword [esi], 0
mov dword [esp + 0x1c], eax
jne 0x50e903
cmp dword [edi + 0x35c], 0
jne 0x50e903
push dword [ebx + 0x6f4]
push str.Could_not_DOH_resolve:__s
push edi
call fcn.004e2270
add esp, 0xc
xor eax, eax
cmp byte [ebx + 0x51a], al
sete al
pop edi
pop esi
add eax, 5
pop ebx
mov ecx, dword [esp + 0x240]
xor ecx, esp
call fcn.004ccd8f
add esp, 0x244
ret
cmp dword [edi + 0x578], 0
jne 0x50eb43
mov dword [esp + 0xc], 0
mov ebx, 2
mov dword [esp + 0x10], 0
push dword [esi]
push dword [edi + 0x78]
call fcn.004d3e70
push esi
call fcn.004dd600
add esp, 0xc
add esi, 0x21c
sub ebx, 1
jne 0x50e925
push 0x22c
lea eax, [esp + 0x24]
push ebx
push eax
call fcn.0062ff20
add esp, 0xc
mov dword [esp + 0x244], VariantInit
lea esi, [esp + 0x20]
mov ebx, 4
nop word [eax + eax]
push 0x100
push esi
call fcn.004d8a10
add esp, 8
add esi, 0x10
sub ebx, 1
jne 0x50e970
push ebp
xor ebp, ebp
lea ebx, [edi + 0x144]
nop
mov eax, dword [ebx]
test eax, eax
je 0x50ea0d
lea ecx, [esp + 0x24]
push ecx
push eax
lea esi, [ebx + 0x208]
push esi
call fcn.00525610
add esp, 4
push eax
push esi
call fcn.0054fba0
add esp, 4
push eax
call fcn.0050ecb0
push esi
mov dword [esp + 0x2c], eax
mov dword [esp + ebp*4 + 0x24], eax
call fcn.004d89e0
mov eax, dword [esp + 0x2c]
add esp, 0x14
test eax, eax
je 0x50ea0d
cmp eax, 0xc
ja 0x50e9e2
mov ecx, dword [eax*4 + 0x78fa8c]
jmp 0x50e9e7
mov ecx, str.bad_error_code
push dword [edi + 0x57c]
cmp dword [ebx], 1
mov edx, str.AAAA
mov eax, 0x78fc40
cmovne eax, edx
push eax
push ecx
push str.DOH:__s_type__s_for__s_n
push edi
call fcn.004e2350
add esp, 0x14
inc ebp
add ebx, 0x21c
cmp ebp, 2
jl 0x50e990
cmp dword [esp + 0x10], 0
mov ebx, 6
je 0x50ea34
cmp dword [esp + 0x14], 0
jne 0x50eb17
push dword [edi + 0x57c]
push str.DOH_Host_name:__s_n
push edi
call fcn.004e2350
lea eax, [esp + 0x30]
push eax
push edi
call fcn.0050f730
push dword [edi + 0x580]
lea eax, [esp + 0x3c]
push dword [edi + 0x57c]
push eax
call fcn.0050eb60
mov ebp, eax
add esp, 0x20
test ebp, ebp
jne 0x50eab4
xor esi, esi
cmp dword [esp + 0x24c], esi
jle 0x50ea96
lea edi, [esp + 0x24]
nop
push edi
call fcn.004d89e0
inc esi
add esp, 4
add edi, 0x10
cmp esi, dword [esp + 0x24c]
jl 0x50ea80
mov eax, 0x1b
pop ebp
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x240]
xor ecx, esp
call fcn.004ccd8f
add esp, 0x244
ret
cmp dword [edi + 0x80], 0
je 0x50eaca
push 2
push 3
push edi
call fcn.004e5cc0
add esp, 0xc
push dword [edi + 0x580]
push dword [edi + 0x57c]
push ebp
push edi
call fcn.004ea440
add esp, 0x10
mov esi, eax
cmp dword [edi + 0x80], 0
je 0x50eaf6
push 3
push edi
call fcn.004e5d00
add esp, 8
test esi, esi
jne 0x50eb05
push ebp
call fcn.004f3c80
add esp, 4
jmp 0x50eb17
mov eax, dword [esp + 0x1c]
xor ebx, ebx
mov dword [eax + 0x6fc], esi
mov eax, dword [esp + 0x20]
mov dword [eax], esi
xor esi, esi
cmp dword [esp + 0x24c], esi
jle 0x50eb3c
lea edi, [esp + 0x24]
push edi
call fcn.004d89e0
inc esi
add esp, 4
add edi, 0x10
cmp esi, dword [esp + 0x24c]
jl 0x50eb26
mov eax, ebx
jmp 0x50ea9b
mov ecx, dword [esp + 0x24c]
xor eax, eax
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004ccd8f
add esp, 0x244
ret