Function at 0x468f90
Capabilities:
Resolve dns

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b8771
mov eax, dword fs:[0]
push eax
sub esp, 0x2dc
mov eax, dword [0x61f138]
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
xor edi, edi
mov dword [ebp - 0xb4], edi
mov dword [ebp - 4], edi
mov dword [ebp - 0xd0], edi
mov dword [ebp - 0xcc], edi
mov dword [ebp - 0xc8], edi
mov byte [ebp - 4], 1
lea eax, [ebp - 0xac]
mov dword [ebp - 0xc4], edi
lea ecx, [ebp - 0xd0]
push dword [ebp - 0xc4]
mov byte [ebp - 0xad], 0x73
push eax
lea eax, [ebp - 0xad]
push eax
push edi
call fcn.00465ce0
mov edx, str.mw_statbar_noadapters
lea ecx, [ebp - 0xd0]
call fcn.004fbb40
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xcc]
sub ecx, eax
push ecx
mov ecx, dword [0x6c4dcc]
push eax
call fcn.004faf10
lea eax, [ebp - 0x64]
push eax
call fcn.005025a0
mov ecx, eax
call fcn.00468b80
mov edx, dword [ebp - 0x50]
mov esi, dword [eax + 0x10]
cmp edx, 0x10
jb 0x46907e
mov ecx, dword [ebp - 0x64]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x469074
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46988b
push edx
push ecx
call fcn.0056eec5
add esp, 8
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
test esi, esi
je 0x469158
lea eax, [ebp - 0x7c]
push eax
call fcn.005025a0
mov ecx, eax
call fcn.00468b80
mov esi, eax
cmp esi, 0x6aad74
je 0x4690fe
mov ecx, 0x6aad74
call fcn.004414e0
mov ecx, dword [esi]
mov dword [0x6aad74], ecx
mov ecx, dword [esi + 4]
mov dword [0x6aad78], ecx
mov eax, dword [esi + 8]
mov dword [0x6aad7c], eax
mov eax, dword [esi + 0xc]
mov dword [0x6aad80], eax
mov eax, dword [esi + 0x10]
mov dword [0x6aad84], eax
mov eax, dword [esi + 0x14]
mov dword [0x6aad88], eax
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov edx, dword [ebp - 0x68]
cmp edx, 0x10
jb 0x469132
mov ecx, dword [ebp - 0x7c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x469128
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469890
push edx
push ecx
call fcn.0056eec5
add esp, 8
call fcn.005025a0
push 0
add eax, 0x210
push eax
lea eax, [ebp - 0x188]
push eax
call fcn.004498f0
mov eax, dword [eax + 4]
mov dword [0x6c4ddc], eax
jmp 0x469833
mov eax, dword [0x6c4ddc]
cmp eax, 0x1bb
jne 0x469173
mov dword [0x6c4ddc], 0x1f90
jmp 0x469833
cmp eax, 0x1f90
jne 0x469189
mov dword [0x6c4ddc], 0x1621
jmp 0x469833
test eax, eax
jne 0x469199
mov dword [0x61fba0], 0xa
jmp 0x4691b2
cmp dword [0x61fba0], 0xa
mov edi, dword [ebp - 0xb4]
jne 0x4691b2
mov dword [0x61fba0], 0xc8
mov edx, dword [0x6aad9c]
mov dword [0x6c4ddc], 0x1bb
test edx, edx
je 0x4692cb
mov ecx, 0x6aad74
cmp ecx, 0x6aad8c
je 0x4691f1
cmp dword [0x6aada0], 0x10
mov eax, 0x6aad8c
push edx
cmovae eax, dword [0x6aad8c]
push eax
call fcn.004462c0
cmp dword [0x6aada0], 0x10
lea ecx, [ebp - 0x238]
mov eax, 0x6aad8c
mov dword [0x6aad9c], 0
cmovae eax, dword [0x6aad8c]
sub esp, 8
mov byte [eax], 0
call fcn.00443510
mov edx, str.Manual_reconnect_to
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x228]
call fcn.00449a40
cmp dword [0x6aad88], 0x10
mov edx, 0x6aad74
push dword [0x6aad84]
cmovae edx, dword [0x6aad74]
mov ecx, eax
call fcn.0044d730
add esp, 4
lea eax, [ebp - 0x94]
lea ecx, [ebp - 0x238]
push eax
call fcn.004433d0
push 0x89
mov edx, str.authserverselector.cpp
mov byte [ebp - 4], 6
mov ecx, eax
call fcn.004c2da0
mov byte [ebp - 4], 5
add esp, 4
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x4692bb
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4692b1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x469895
push edx
push ecx
call fcn.0056eec5
add esp, 8
lea ecx, [ebp - 0x238]
call fcn.0043aef0
jmp 0x469833
xor ebx, ebx
cmp dword [0x6c4de0], 0x3ff
mov esi, 0xa
jne 0x4693e7
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xb8], 0
mov byte [ebp - 4], 8
lea eax, [ebp - 0xad]
push dword [ebp - 0xc4]
lea ecx, [ebp - 0xc0]
mov byte [ebp - 0xae], 0x73
push eax
lea eax, [ebp - 0xae]
push eax
push 0
call fcn.00465ce0
call fcn.00468c40
lea ecx, [ebp - 0xc0]
test al, al
je 0x4696fb
mov edx, str.mw_statbar_connecting
call fcn.004fbb40
mov eax, dword [ebp - 0xbc]
mov esi, dword [ebp - 0xc0]
sub eax, esi
mov ecx, dword [0x6c4dcc]
push eax
push esi
call fcn.004faf10
mov dword [0x6c4de0], 0
mov dword [0x6c4ddc], 0x1bb
call fcn.00469c10
inc ebx
mov byte [ebp - 4], 1
cmp ebx, 0x3e8
mov eax, 0x3e8
cmovg ebx, eax
test esi, esi
je 0x4693e2
mov ecx, dword [ebp - 0xb8]
mov eax, esi
sub ecx, esi
cmp ecx, 0x1000
jb 0x4693ba
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46988b
push ecx
push esi
call fcn.0056eec5
add esp, 8
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xb8], 0
mov esi, 0xa
call fcn.005988f5
cdq
idiv esi
mov eax, 1
mov ecx, edx
mov edx, dword [0x6c4de0]
shl eax, cl
test edx, eax
jne 0x4693e7
bts edx, ecx
mov dword [0x6c4de0], edx
cmp ecx, 0xa
ja case.0x469410.0
jmp dword [ecx*4 + 0x4698a0]
push 0x14
push str.auth11.aeroadmin.com
jmp 0x469478
push 0x14
push str.auth12.aeroadmin.com
jmp 0x469478
push 0x14
push str.auth13.aeroadmin.com
jmp 0x469478
push 0x14
push str.auth14.aeroadmin.com
jmp 0x469478
push 0x14
push str.auth15.aeroadmin.com
jmp 0x469478
push 0x14
push str.auth16.aeroadmin.com
jmp 0x469478
push 0x14
push str.auth17.aeroadmin.com
jmp 0x469478
push 0x14
push str.auth18.aeroadmin.com
jmp 0x469478
push 0x14
push str.auth19.aeroadmin.com
jmp 0x469478
push 0x14
push str.auth20.aeroadmin.com
jmp 0x469478
push 0x14
push str.auth10.aeroadmin.com
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
call fcn.004462c0
mov dword [ebp - 0x180], 0x5ec86c
mov dword [ebp - 0x170], 0x5ec864
mov dword [ebp - method.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ios_char__struct_std::char_traits_char__.0
mov eax, edi
mov byte [ebp - 4], 0xb
or eax, 3
mov dword [ebp - 0xb4], eax
lea eax, [ebp - 0x168]
push ecx
push eax
lea ecx, [ebp - 0x180]
call fcn.004469a0
mov dword [ebp - 4], 0xc
mov eax, dword [ebp - 0x180]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x184], eax
lea ecx, [ebp - 0x168]
call fcn.00448740
mov dword [ebp - method.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x12c], 0
mov edx, str.DNS_attempt
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x170]
call fcn.00449a40
cmp dword [ebp - 0x20], 0x10
lea edx, [ebp - 0x34]
push dword [ebp - 0x24]
cmovae edx, dword [ebp - 0x34]
mov ecx, eax
call fcn.0044d730
add esp, 4
mov byte [ebp - 4], 0xe
or edi, 0xb
mov ecx, dword [ebp - 0x12c]
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov dword [ebp - 0xb4], edi
test cl, 2
jne 0x4695a5
mov eax, dword [ebp - 0x148]
mov edx, dword [eax]
test edx, edx
je 0x4695a5
mov eax, dword [ebp - 0x158]
cmp edx, dword [ebp - 0x130]
cmovb edx, dword [ebp - 0x130]
mov ecx, dword [eax]
sub edx, ecx
push edx
jmp 0x4695cb
test cl, 4
jne 0x4695d4
mov eax, dword [ebp - 0x14c]
mov edx, dword [eax]
test edx, edx
je 0x4695d4
mov eax, dword [ebp - 0x15c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x13c]
mov eax, dword [eax]
sub eax, ecx
add eax, edx
push eax
push ecx
lea ecx, [ebp - 0x4c]
call fcn.004462c0
and edi, 0xfffffff7
mov dword [ebp - 4], 0xd
or edi, 4
push 0xb4
mov edx, str.authserverselector.cpp
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x4c]
call fcn.004c2da0
add esp, 4
lea ecx, [ebp - 0x4c]
call fcn.004414e0
mov eax, dword [ebp - 0x180]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x184], eax
lea ecx, [ebp - 0x168]
call fcn.00443aa0
lea ecx, [ebp - 0x160]
call fcn.00443bb0
lea eax, [ebp - 0x118]
mov byte [ebp - 4], 0x10
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0055c7c7
add esp, 4
mov byte [ebp - 4], 0xa
cmp dword [ebp - 0x20], 0x10
lea eax, [ebp - 0x34]
cmovae eax, dword [ebp - 0x34]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
test eax, eax
je 0x4696c3
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
test eax, eax
je 0x4696c3
push dword [eax]
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov ecx, dword [str.127.0.0.1]
mov edx, eax
mov dword [ebp - 0x1c], ecx
mov ecx, dword [0x5eec34]
mov dword [ebp - 0x18], ecx
mov cx, word [0x5eec38]
mov word [ebp - 0x14], cx
xor ecx, ecx
jmp 0x4696b0
mov al, byte [edx]
cmp al, byte [ebp + ecx - 0x1c]
jne 0x469769
inc ecx
inc edx
cmp ecx, 3
jl 0x4696b0
xor esi, esi
test ebx, ebx
jle 0x4696ea
lea esp, [esp]
cmp byte [0x6c4e11], 0
jne 0x46982b
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
inc esi
cmp esi, ebx
jl 0x4696d0
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 1
call fcn.004414e0
jmp 0x4692cd
mov edx, str.mw_statbar_noadapters
call fcn.004fbb40
mov eax, dword [ebp - 0xbc]
mov esi, dword [ebp - 0xc0]
sub eax, esi
mov ecx, dword [0x6c4dcc]
push eax
push esi
call fcn.004faf10
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
mov byte [ebp - 4], 1
test esi, esi
je 0x469833
mov ecx, dword [ebp - 0xb8]
mov eax, esi
sub ecx, esi
cmp ecx, 0x1000
jb 0x46975a
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46989a
push ecx
push esi
call fcn.0056eec5
add esp, 8
jmp 0x469833
sub edx, ecx
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x469770
sub ecx, esi
push ecx
push edx
mov ecx, 0x6aad74
call fcn.004462c0
sub esp, 8
lea ecx, [ebp - 0x2e8]
call fcn.00443510
mov edx, str.DNS_resolve_for
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x2d8]
call fcn.00449a40
cmp dword [ebp - 0x20], 0x10
lea edx, [ebp - 0x34]
push dword [ebp - 0x24]
cmovae edx, dword [ebp - 0x34]
mov ecx, eax
call fcn.0044d730
mov edx, 0x5eec2c
mov ecx, eax
call fcn.00449a40
cmp dword [0x6aad88], 0x10
mov edx, 0x6aad74
push dword [0x6aad84]
cmovae edx, dword [0x6aad74]
mov ecx, eax
call fcn.0044d730
add esp, 8
lea eax, [ebp - 0xac]
lea ecx, [ebp - 0x2e8]
push eax
call fcn.004433d0
push 0xbf
mov edx, str.authserverselector.cpp
mov byte [ebp - 4], 0x12
mov ecx, eax
call fcn.004c2da0
add esp, 4
lea ecx, [ebp - 0xac]
call fcn.004414e0
lea ecx, [ebp - 0x2e8]
call fcn.0043aef0
lea ecx, [ebp - 0x34]
call fcn.004414e0
lea ecx, [ebp - 0xd0]
call fcn.0043afb0
mov dword [ebp - 4], 0x15
mov esi, dword [ebp + 0xc]
test esi, esi
je 0x46986d
invalid
or edi, 0xffffffff
mov eax, edi
lock xadd dword [esi + 4], eax
jne 0x46986d
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
lock xadd dword [esi + 8], edi
dec edi
jne 0x46986d
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
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.0056eeb4
mov esp, ebp
pop ebp
ret 0xc
call fcn.00591dc6
call fcn.00591dc6
call fcn.00591dc6
call fcn.00591dc6
nop
jno 0x469836
inc esi
add byte [edi], dl
xchg esp, eax
inc esi
add byte [eax], ah
xchg esp, eax
inc esi
add byte [ecx], ch
xchg esp, eax
inc esi
add byte [edx], dh
xchg esp, eax
inc esi
add byte [ebx], bh
xchg esp, eax
inc esi
add byte [esp + edx*4 + 0x46], al
add byte [ebp - 0x6c], cl
inc esi
add byte [esi - 0x6c], dl
inc esi
add byte [edi - 0x6c], bl
inc esi
add byte [eax - 0x6c], ch
inc esi
add ah, cl
int3