Function at 0x4310f0
Capabilities:
Reference google public dns server

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push 0x402346
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x90
push ebx
push esi
push edi
mov dword [ebp - 8], esp
mov dword [ebp - 4], 0x402320
mov eax, dword [0x434160]
xor edi, edi
cmp eax, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x58], edi
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x7c], edi
jne 0x431178
push 0x434160
push 0x405bf8
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov eax, dword [0x434160]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x308]
lea edx, [ebp - 0x54]
push eax
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaObjSet]
mov esi, eax
lea ecx, [ebp - 0x58]
push ecx
push 6
mov eax, dword [esi]
push esi
call dword [eax + 0x40]
cmp eax, edi
fnclex
jge 0x4311b3
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
push 0x40
push 0x409980
push esi
push eax
call ebx
jmp 0x4311b9
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov eax, dword [ebp - 0x58]
push edi
push eax
mov esi, eax
mov edx, dword [eax]
call dword [edx + 0x8c]
cmp eax, edi
fnclex
jge 0x4311dc
push 0x8c
push 0x409990
push esi
push eax
call ebx
lea eax, [ebp - 0x58]
lea ecx, [ebp - 0x54]
push eax
push ecx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObjList]
mov eax, dword [0x434160]
add esp, 0xc
cmp eax, edi
jne 0x43120d
push 0x434160
push 0x405bf8
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov eax, dword [0x434160]
mov edx, dword [eax]
push eax
call dword [edx + 0x304]
push eax
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaObjSet]
mov esi, eax
lea edx, [ebp - 0x58]
push edx
push 0xc
mov ecx, dword [esi]
push esi
call dword [ecx + 0x40]
cmp eax, edi
fnclex
jge 0x431240
push 0x40
push 0x409980
push esi
push eax
call ebx
mov eax, dword [ebp - 0x58]
lea edx, [ebp - 0x34]
push edx
push eax
mov ecx, dword [eax]
mov esi, eax
call dword [ecx + 0xa0]
cmp eax, edi
fnclex
jge 0x431266
push 0xa0
push 0x4099bc
push esi
push eax
call ebx
mov edx, dword [ebp - 0x34]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
mov ecx, 0x4343b4
mov dword [ebp - 0x34], edi
call esi
lea eax, [ebp - 0x58]
lea ecx, [ebp - 0x54]
push eax
push ecx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObjList]
mov eax, dword [0x434160]
add esp, 0xc
cmp eax, edi
jne 0x4312aa
push 0x434160
push 0x405bf8
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov eax, dword [0x434160]
mov edx, dword [eax]
push eax
call dword [edx + 0x304]
push eax
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaObjSet]
mov edi, eax
lea edx, [ebp - 0x58]
push edx
push 0xd
mov ecx, dword [edi]
push edi
call dword [ecx + 0x40]
test eax, eax
fnclex
jge 0x4312dd
push 0x40
push 0x409980
push edi
push eax
call ebx
mov eax, dword [ebp - 0x58]
lea edx, [ebp - 0x34]
push edx
push eax
mov ecx, dword [eax]
mov edi, eax
call dword [ecx + 0xa0]
test eax, eax
fnclex
jge 0x431303
push 0xa0
push 0x4099bc
push edi
push eax
call ebx
mov edx, dword [ebp - 0x34]
mov ecx, 0x4343b8
mov dword [ebp - 0x34], 0
call esi
lea eax, [ebp - 0x58]
lea ecx, [ebp - 0x54]
push eax
push ecx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObjList]
mov eax, dword [0x434160]
add esp, 0xc
test eax, eax
jne 0x431345
push 0x434160
push 0x405bf8
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov eax, dword [0x434160]
mov edx, dword [eax]
push eax
call dword [edx + 0x30c]
push eax
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaObjSet]
mov edi, eax
lea edx, [ebp - 0x7c]
push edx
push edi
mov ecx, dword [edi]
call dword [ecx + 0xe0]
test eax, eax
fnclex
jge 0x43137c
push 0xe0
push 0x40b48c
push edi
push eax
call ebx
movsx eax, word [ebp - 0x7c]
mov ecx, dword [0x4343a8]
mov dword [ecx + 0xc], eax
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObj]
mov edx, dword [0x4343a8]
mov eax, dword [edx + 0xc]
test eax, eax
mov eax, dword [0x434c78]
jne 0x431448
test eax, eax
jne 0x4313bc
push 0x434c78
push 0x409d6c
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov edi, dword [0x434c78]
lea ecx, [ebp - 0x54]
push ecx
push edi
mov eax, dword [edi]
call dword [eax + 0x14]
test eax, eax
fnclex
jge 0x4313dd
push 0x14
push 0x409d5c
push edi
push eax
call ebx
mov eax, dword [ebp - 0x54]
lea ecx, [ebp - 0x34]
push ecx
push eax
mov edx, dword [eax]
mov edi, eax
call dword [edx + 0x50]
test eax, eax
fnclex
jge 0x4313fd
push 0x50
push 0x409d7c
push edi
push eax
call ebx
mov edx, dword [ebp - 0x34]
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaStrCat]
push 0x8003
push edx
push 0x40e5d4
call ebx
mov edx, eax
lea ecx, [ebp - 0x38]
call esi
push eax
call fcn.00431b70
mov edx, eax
lea ecx, [ebp - 0x14]
call esi
lea eax, [ebp - 0x38]
lea ecx, [ebp - 0x34]
push eax
push ecx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
add esp, 0xc
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObj]
jmp 0x4314e7
test eax, eax
jne 0x43145c
push 0x434c78
push 0x409d6c
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov edi, dword [0x434c78]
lea eax, [ebp - 0x54]
push eax
push edi
mov edx, dword [edi]
call dword [edx + 0x14]
test eax, eax
fnclex
jge 0x43147d
push 0x14
push 0x409d5c
push edi
push eax
call ebx
mov eax, dword [ebp - 0x54]
lea edx, [ebp - 0x34]
push edx
push eax
mov ecx, dword [eax]
mov edi, eax
call dword [ecx + 0x50]
test eax, eax
fnclex
jge 0x43149d
push 0x50
push 0x409d7c
push edi
push eax
call ebx
mov eax, dword [ebp - 0x34]
push 0x8003
push eax
push 0x40e7dc
call dword [sym.imp.MSVBVM60.DLL___vbaStrCat]
mov edx, eax
lea ecx, [ebp - 0x38]
call esi
push eax
call fcn.00431b70
mov edx, eax
lea ecx, [ebp - 0x14]
call esi
lea ecx, [ebp - 0x38]
lea edx, [ebp - 0x34]
push ecx
push edx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
add esp, 0xc
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObj]
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaStrCat]
lea ecx, [ebp - 0x78]
lea edx, [ebp - 0x68]
lea eax, [ebp - 0x14]
push ecx
push edx
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x78], 0x4008
call dword [sym.imp.MSVBVM60.DLL_rtcLowerCaseVar]
lea eax, [ebp - 0x68]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaStrVarMove]
mov edx, eax
lea ecx, [ebp - 0x14]
call esi
lea ecx, [ebp - 0x68]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
mov ecx, dword [ebp - 0x14]
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaStrCmp]
push ecx
push 0x40e838
call edi
mov edx, eax
mov eax, dword [ebp - 0x14]
neg edx
sbb edx, edx
push eax
inc edx
push 0x40e7f0
mov dword [ebp - 0xa0], edx
call edi
mov edi, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x14]
neg eax
sbb eax, eax
push ecx
inc eax
push 0x40e880
or edi, eax
neg edi
sbb edi, edi
neg edi
call dword [sym.imp.MSVBVM60.DLL___vbaStrCmp]
neg eax
sbb eax, eax
inc eax
or edi, eax
jne 0x431652
mov eax, dword [0x434160]
test eax, eax
jne 0x431592
push 0x434160
push 0x405bf8
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov eax, dword [0x434160]
mov edx, dword [eax]
push eax
call dword [edx + 0x308]
push eax
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaObjSet]
mov edi, eax
lea edx, [ebp - 0x58]
push edx
push 6
mov ecx, dword [edi]
push edi
call dword [ecx + 0x40]
test eax, eax
fnclex
jge 0x4315c9
push 0x40
push 0x409980
push edi
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov eax, dword [ebp - 0x58]
push 0x40e8c8
push 0
mov dword [ebp - 0x8c], eax
mov edi, dword [eax]
call dword [sym.imp.MSVBVM60.DLL___vbaStrI4]
mov edx, eax
lea ecx, [ebp - 0x34]
call esi
push eax
call ebx
mov edx, eax
lea ecx, [ebp - 0x38]
call esi
push eax
push 0x408bb4
call ebx
mov edx, eax
lea ecx, [ebp - 0x3c]
call esi
mov esi, dword [ebp - 0x8c]
push eax
push esi
call dword [edi + 0x54]
test eax, eax
fnclex
jge 0x431621
push 0x54
push 0x409990
push esi
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
lea eax, [ebp - 0x3c]
lea ecx, [ebp - 0x38]
push eax
lea edx, [ebp - 0x34]
push ecx
push edx
push 3
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
lea eax, [ebp - 0x58]
lea ecx, [ebp - 0x54]
push eax
push ecx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObjList]
add esp, 0x1c
push 0x431b53
jmp 0x431b3d
mov edx, dword [0x4343a8]
mov eax, dword [edx + 0xc]
test eax, eax
jne 0x431713
push 0x40e8d8
call dword [sym.imp.MSVBVM60.DLL___vbaI4Str]
mov edx, 0x40e8e8
lea ecx, [ebp - 0x2c]
mov ebx, eax
call dword [sym.imp.MSVBVM60.DLL___vbaStrCopy]
mov eax, dword [ebp - 0x2c]
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaStrToAnsi]
lea ecx, [ebp - 0x34]
push eax
push ecx
call edi
push eax
push ebx
call fcn.0040cab4
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov edx, dword [ebp - 0x34]
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaStrToUnicode]
lea eax, [ebp - 0x2c]
push edx
push eax
call ebx
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
mov ecx, dword [0x4343b8]
lea edx, [ebp - 0x38]
push ecx
push edx
call edi
push eax
mov eax, dword [0x4343b4]
lea ecx, [ebp - 0x34]
push eax
push ecx
call edi
push eax
call fcn.0040cb24
mov edi, eax
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov edx, dword [ebp - 0x34]
push edx
push 0x4343b4
call ebx
mov eax, dword [ebp - 0x38]
push eax
push 0x4343b8
call ebx
lea ecx, [ebp - 0x38]
lea edx, [ebp - 0x34]
push ecx
push edx
push 2
mov dword [ebp - 0x18], edi
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaStrCat]
add esp, 0xc
jmp 0x43187e
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaStrToAnsi]
push 0x1e
push 0x3640
lea eax, [ebp - 0x34]
push 0x40e930
push eax
call edi
push eax
call fcn.0040cc54
mov dword [ebp - 0x80], eax
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov ecx, dword [0x4343a8]
mov edx, dword [ebp - 0x80]
mov dword [ecx + 8], edx
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea eax, [ebp - 0x1c]
lea ecx, [ebp - 0x30]
push eax
mov eax, dword [0x4343b8]
lea edx, [ebp - 0x20]
push ecx
push edx
lea ecx, [ebp - 0x38]
push eax
push ecx
call edi
mov edx, dword [0x4343b4]
push eax
lea eax, [ebp - 0x34]
push edx
push eax
call edi
mov ecx, dword [0x4343a8]
push eax
mov edx, dword [ecx + 8]
push edx
call fcn.0040ccdc
mov edi, eax
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov eax, dword [ebp - 0x34]
push eax
push 0x4343b4
call dword [sym.imp.MSVBVM60.DLL___vbaStrToUnicode]
mov ecx, dword [ebp - 0x38]
push ecx
push 0x4343b8
call dword [sym.imp.MSVBVM60.DLL___vbaStrToUnicode]
push edi
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaStrI4]
call edi
mov edx, eax
lea ecx, [ebp - 0x28]
call esi
lea edx, [ebp - 0x38]
lea eax, [ebp - 0x34]
push edx
push eax
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
mov ecx, dword [ebp - 0x28]
add esp, 0xc
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaLenBstr]
test eax, eax
jle 0x43187e
mov edx, dword [ebp - 0x20]
push 0x40e944
push edx
call edi
mov edx, eax
lea ecx, [ebp - 0x34]
call esi
push eax
call ebx
mov edx, eax
lea ecx, [ebp - 0x38]
call esi
push eax
push 0x40e958
call ebx
mov edx, eax
lea ecx, [ebp - 0x3c]
call esi
push eax
mov eax, dword [ebp - 0x30]
push eax
call edi
mov edx, eax
lea ecx, [ebp - 0x40]
call esi
push eax
call ebx
mov edx, eax
lea ecx, [ebp - 0x44]
call esi
push eax
push 0x40e96c
call ebx
mov edx, eax
lea ecx, [ebp - 0x48]
call esi
mov ecx, dword [ebp - 0x1c]
push eax
push ecx
call edi
mov edx, eax
lea ecx, [ebp - 0x4c]
call esi
push eax
call ebx
mov edx, eax
lea ecx, [ebp - 0x50]
call esi
lea edx, [ebp - 0x50]
push edx
call fcn.0040f810
lea eax, [ebp - 0x50]
lea ecx, [ebp - 0x4c]
push eax
lea edx, [ebp - 0x48]
push ecx
lea eax, [ebp - 0x44]
push edx
lea ecx, [ebp - 0x40]
push eax
lea edx, [ebp - 0x3c]
push ecx
lea eax, [ebp - 0x38]
push edx
lea ecx, [ebp - 0x34]
push eax
push ecx
push 8
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
add esp, 0x24
mov edx, dword [ebp - 0x28]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaLenBstr]
test eax, eax
jg 0x431a0b
mov eax, dword [ebp - 0x18]
test eax, eax
jg 0x431a0b
mov eax, dword [0x434160]
test eax, eax
jne 0x4318b9
push 0x434160
push 0x405bf8
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov eax, dword [0x434160]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x308]
lea edx, [ebp - 0x54]
push eax
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaObjSet]
mov edi, eax
lea ecx, [ebp - 0x58]
push ecx
push 6
mov eax, dword [edi]
push edi
call dword [eax + 0x40]
test eax, eax
fnclex
jge 0x4318f0
push 0x40
push 0x409980
push edi
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x18]
push 0x40e8c8
push edx
mov edi, dword [eax]
mov dword [ebp - 0x8c], eax
call dword [sym.imp.MSVBVM60.DLL___vbaStrI4]
mov edx, eax
lea ecx, [ebp - 0x34]
call esi
push eax
call ebx
mov edx, eax
lea ecx, [ebp - 0x38]
call esi
push eax
push 0x408bb4
call ebx
mov edx, eax
lea ecx, [ebp - 0x3c]
call esi
mov esi, dword [ebp - 0x8c]
push eax
push esi
call dword [edi + 0x54]
test eax, eax
fnclex
jge 0x43194e
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
push 0x54
push 0x409990
push esi
push eax
call edi
jmp 0x431954
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
lea eax, [ebp - 0x3c]
lea ecx, [ebp - 0x38]
push eax
lea edx, [ebp - 0x34]
push ecx
push edx
push 3
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaFreeObjList]
lea eax, [ebp - 0x58]
lea ecx, [ebp - 0x54]
push eax
push ecx
push 2
call ebx
mov eax, dword [0x434160]
add esp, 0x1c
test eax, eax
jne 0x43199b
push 0x434160
push 0x405bf8
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov eax, dword [0x434160]
mov edx, dword [eax]
push eax
call dword [edx + 0x308]
push eax
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaObjSet]
mov esi, eax
lea edx, [ebp - 0x58]
push edx
push 6
mov ecx, dword [esi]
push esi
call dword [ecx + 0x40]
test eax, eax
fnclex
jge 0x4319ce
push 0x40
push 0x409980
push esi
push eax
call edi
mov eax, dword [ebp - 0x58]
push 0xffffffffffffffff
push eax
mov esi, eax
mov ecx, dword [eax]
call dword [ecx + 0x8c]
test eax, eax
fnclex
jge 0x4319f2
push 0x8c
push 0x409990
push esi
push eax
call edi
lea edx, [ebp - 0x58]
lea eax, [ebp - 0x54]
push edx
push eax
push 2
call ebx
add esp, 0xc
push 0x431b53
jmp 0x431b3d
mov eax, dword [0x434160]
test eax, eax
jne 0x431a29
push 0x434160
push 0x405bf8
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov eax, dword [0x434160]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x308]
lea edx, [ebp - 0x54]
push eax
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaObjSet]
mov edi, eax
lea ecx, [ebp - 0x58]
push ecx
push 6
mov eax, dword [edi]
push edi
call dword [eax + 0x40]
test eax, eax
fnclex
jge 0x431a60
push 0x40
push 0x409980
push edi
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x18]
push 0x40e97c
push edx
mov edi, dword [eax]
mov dword [ebp - 0x8c], eax
call dword [sym.imp.MSVBVM60.DLL___vbaStrI4]
mov edx, eax
lea ecx, [ebp - 0x34]
call esi
push eax
call ebx
mov edx, eax
lea ecx, [ebp - 0x38]
call esi
push eax
push 0x408bb4
call ebx
mov edx, eax
lea ecx, [ebp - 0x3c]
call esi
mov esi, dword [ebp - 0x8c]
push eax
push esi
call dword [edi + 0x54]
test eax, eax
fnclex
jge 0x431aba
push 0x54
push 0x409990
push esi
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
lea eax, [ebp - 0x3c]
lea ecx, [ebp - 0x38]
push eax
lea edx, [ebp - 0x34]
push ecx
push edx
push 3
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
lea eax, [ebp - 0x58]
lea ecx, [ebp - 0x54]
push eax
push ecx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObjList]
add esp, 0x1c
mov ecx, 1
call dword [sym.imp.MSVBVM60.DLL___vbaUI1I2]
mov byte [0x434394], al
push 0x431b53
jmp 0x431b3d
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea ecx, [ebp - 0x14]
call esi
lea ecx, [ebp - 0x28]
call esi
lea ecx, [ebp - 0x2c]
call esi
ret