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

Disassembly:
sub esp, 0x244
mov eax, dword [0x6370c0]
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 0x46f423
cmp dword [edi + 0x35c], 0
jne 0x46f423
push dword [ebx + 0x6f4]
push str.Could_not_DOH_resolve:__s
push edi
call fcn.00441e00
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.0042db10
add esp, 0x244
ret
cmp dword [edi + 0x578], 0
jne 0x46f663
mov dword [esp + 0xc], 0
mov ebx, 2
mov dword [esp + 0x10], 0
push dword [esi]
push dword [edi + 0x78]
call fcn.004339c0
push esi
call fcn.0043d1a0
add esp, 0xc
add esi, 0x21c
sub ebx, 1
jne 0x46f445
push 0x22c
lea eax, [esp + 0x24]
push ebx
push eax
call fcn.00477660
add esp, 0xc
mov dword [esp + 0x244], getsockopt
lea esi, [esp + 0x20]
mov ebx, 4
nop word [eax + eax]
push 0x100
push esi
call fcn.00438580
add esp, 8
add esi, 0x10
sub ebx, 1
jne 0x46f490
push ebp
xor ebp, ebp
lea ebx, [edi + 0x144]
nop
mov eax, dword [ebx]
test eax, eax
je 0x46f52d
lea ecx, [esp + 0x24]
push ecx
push eax
lea esi, [ebx + 0x208]
push esi
call fcn.004385a0
add esp, 4
push eax
push esi
call fcn.004385b0
add esp, 4
push eax
call fcn.0046f7d0
push esi
mov dword [esp + 0x2c], eax
mov dword [esp + ebp*4 + 0x24], eax
call fcn.00438550
mov eax, dword [esp + 0x2c]
add esp, 0x14
test eax, eax
je 0x46f52d
cmp eax, 0xc
ja 0x46f502
mov ecx, dword [eax*4 + 0x5bad80]
jmp 0x46f507
mov ecx, str.bad_error_code
push dword [edi + 0x57c]
cmp dword [ebx], 1
mov edx, str.AAAA
mov eax, 0x5baf34
cmovne eax, edx
push eax
push ecx
push str.DOH:__s_type__s_for__s_n
push edi
call fcn.00441ee0
add esp, 0x14
inc ebp
add ebx, 0x21c
cmp ebp, 2
jl 0x46f4b0
cmp dword [esp + 0x10], 0
mov ebx, 6
je 0x46f554
cmp dword [esp + 0x14], 0
jne 0x46f637
push dword [edi + 0x57c]
push str.DOH_Host_name:__s_n
push edi
call fcn.00441ee0
lea eax, [esp + 0x30]
push eax
push edi
call fcn.00470250
push dword [edi + 0x580]
lea eax, [esp + 0x3c]
push dword [edi + 0x57c]
push eax
call fcn.0046f680
mov ebp, eax
add esp, 0x20
test ebp, ebp
jne 0x46f5d4
xor esi, esi
cmp dword [esp + 0x24c], esi
jle 0x46f5b6
lea edi, [esp + 0x24]
nop
push edi
call fcn.00438550
inc esi
add esp, 4
add edi, 0x10
cmp esi, dword [esp + 0x24c]
jl 0x46f5a0
mov eax, 0x1b
pop ebp
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x240]
xor ecx, esp
call fcn.0042db10
add esp, 0x244
ret
cmp dword [edi + 0x80], 0
je 0x46f5ea
push 2
push 3
push edi
call fcn.00445850
add esp, 0xc
push dword [edi + 0x580]
push dword [edi + 0x57c]
push ebp
push edi
call fcn.00448c00
add esp, 0x10
mov esi, eax
cmp dword [edi + 0x80], 0
je 0x46f616
push 3
push edi
call fcn.00445890
add esp, 8
test esi, esi
jne 0x46f625
push ebp
call fcn.00453840
add esp, 4
jmp 0x46f637
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 0x46f65c
lea edi, [esp + 0x24]
push edi
call fcn.00438550
inc esi
add esp, 4
add edi, 0x10
cmp esi, dword [esp + 0x24c]
jl 0x46f646
mov eax, ebx
jmp 0x46f5bb
mov ecx, dword [esp + 0x24c]
xor eax, eax
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0042db10
add esp, 0x244
ret