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

Disassembly:
push ebp
mov ebp, esp
lea edx, [ebp - 0x18]
push edi
mov edi, sym.___gxx_personality_sj0
push esi
mov esi, 0x4b3a8c
push ebx
sub esp, 0x67c
mov ebx, 0x443974
mov dword [ebp - 0x59c], edx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x5a4], edi
mov dword [ebp - 0x5a0], esi
mov dword [ebp - 0x5c4], eax
lea eax, [ebp - 0x5bc]
mov dword [esp], eax
mov dword [ebp - 0x598], ebx
mov dword [ebp - 0x594], esp
call sym.__Unwind_SjLj_Register
mov dword [ebp - 0x38], 0x4b620c
xor ecx, ecx
mov edx, 0x4b9b59
mov dword [ebp - 0x5c8], ecx
mov ecx, dword [ebp - 0x5c4]
mov dword [ebp - 0x34], 0x4b620c
mov dword [ebp - 0x30], 0x4b620c
mov dword [ebp - 0x2c], 0x4b620c
mov dword [ebp - 0x28], 0x4b620c
mov dword [ebp - 0x58], 0x4b620c
mov eax, dword [ecx + 0xac]
mov byte [ebp - 0x5d1], 0
mov dword [esp + 4], edx
mov dword [esp], eax
call sym._fopen
mov dword [ebp - 0x5cc], eax
test eax, eax
je 0x443f90
lea eax, [ebp - 0x458]
mov ecx, 0x400
xor edx, edx
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call sym._memset
mov edx, dword [ebp - 0x5cc]
mov eax, 0x400
lea ecx, [ebp - 0x458]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], edx
call sym._fgets
test eax, eax
je 0x444d72
lea eax, [ebp - 0x458]
mov dword [esp], eax
mov eax, 0x3a
mov dword [ebp - 0x5b8], eax
call sym.rTrim_char_
movzx ecx, byte [ebp - 0x458]
cmp cl, 0x23
sete dl
test cl, cl
sete al
or dl, al
jne 0x443814
cmp cl, 0x5b
je 0x444033
mov eax, dword [ebp - 0x5c8]
test eax, eax
je 0x443c68
cmp dword [ebp - 0x5c8], 1
je 0x444574
cmp dword [ebp - 0x5c8], 2
je 0x444861
cmp dword [ebp - 0x5c8], 3
je 0x4448da
cmp dword [ebp - 0x5c8], 4
je 0x4441f5
cmp dword [ebp - 0x5c8], 5
je 0x444be1
cmp dword [ebp - 0x5c8], 6
je 0x4441c0
cmp dword [ebp - 0x5c8], 7
je 0x444c21
cmp dword [ebp - 0x5c8], 8
je 0x444c48
xor eax, eax
cmp dword [ebp - 0x5c8], 9
mov dword [ebp - 0x660], eax
jne 0x4437f7
lea ecx, [ebp - 0x458]
mov esi, ecx
nop
lea esi, [esi]
mov eax, dword [ecx]
add ecx, 4
lea edx, [eax - 0x1010101]
not eax
and edx, eax
and edx, 0x80808080
je 0x443910
test edx, 0x8080
jne 0x443935
shr edx, 0x10
add ecx, 2
add dl, dl
sbb ecx, 3
sub ecx, esi
cmp dword [ebp - 0x660], ecx
jae 0x444b63
mov ecx, dword [ebp - 0x660]
movsx eax, byte [ecx + ebp - 0x458]
mov dword [esp], eax
call sym._tolower
mov edx, dword [ebp - 0x660]
mov byte [edx + ebp - 0x458], al
inc edx
mov dword [ebp - 0x660], edx
jmp 0x443900
mov dword [esp], 0x4b9b5b
mov eax, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x458]
mov dword [esp + 4], ecx
add eax, 4
mov dword [esp + 8], eax
mov eax, 0x3a
mov dword [ebp - 0x5b8], eax
call sym.getConfVal_char_const__char_const__std::string_
mov dword [esp], str.Enable
mov eax, dword [ebp - 0x5c4]
lea edx, [ebp - 0x458]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__bool_
mov dword [esp], str.PROMPTUSER
mov eax, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x458]
mov dword [esp + 4], ecx
add eax, 8
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.EnableTimeOut1
mov eax, dword [ebp - 0x5c4]
add eax, 0xc
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
call sym.getConfVal_char_const__char_const__bool_
mov dword [esp], str.ACCOUNTTIMEOUT1
mov eax, dword [ebp - 0x5c4]
lea edx, [ebp - 0x458]
mov dword [esp + 4], edx
add eax, 0x14
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.EnableTimeOut2
mov eax, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x458]
mov dword [esp + 4], ecx
add eax, 0xd
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__bool_
mov dword [esp], str.ACCOUNTTIMEOUT2
mov eax, dword [ebp - 0x5c4]
add eax, 0x18
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.EnableTimeOut3
mov eax, dword [ebp - 0x5c4]
lea edx, [ebp - 0x458]
mov dword [esp + 4], edx
add eax, 0xe
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__bool_
mov dword [esp], str.ACCOUNTTIMEOUT3
mov eax, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x458]
mov dword [esp + 4], ecx
add eax, 0x1c
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.EnableTimeOut4
mov eax, dword [ebp - 0x5c4]
add eax, 0xf
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
call sym.getConfVal_char_const__char_const__bool_
mov dword [esp], str.ACCOUNTTIMEOUT4
mov eax, dword [ebp - 0x5c4]
lea edx, [ebp - 0x458]
mov dword [esp + 4], edx
add eax, 0x20
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.EnableTimeOut5
mov eax, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x458]
mov dword [esp + 4], ecx
add eax, 0x10
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__bool_
test al, al
je 0x443e1f
mov byte [ebp - 0x5d1], 1
mov dword [esp], str.ACCOUNTTIMEOUT5
mov eax, dword [ebp - 0x5c4]
add eax, 0x24
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
mov eax, 0x3a
mov dword [ebp - 0x5b8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.EnableTimeOut6
mov eax, dword [ebp - 0x5c4]
lea edx, [ebp - 0x458]
mov dword [esp + 4], edx
add eax, 0x11
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__bool_
mov dword [esp], str.ACCOUNTTIMEOUT6
mov eax, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x458]
mov dword [esp + 4], ecx
add eax, 0x28
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.ADDADUSER
mov eax, dword [ebp - 0x5c4]
add eax, 0x30
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
call sym.getConfVal_char_const__char_const__bool_
mov dword [esp], str.DefaultBlock
mov eax, dword [ebp - 0x5c4]
lea edx, [ebp - 0x458]
mov dword [esp + 4], edx
add eax, 0x2c
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.WFToAll
mov eax, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x458]
mov dword [esp + 4], ecx
add eax, 0x54
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.ADToAll
mov eax, dword [ebp - 0x5c4]
add eax, 0x64
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.ADBlockAll
mov eax, dword [ebp - 0x5c4]
lea edx, [ebp - 0x458]
mov dword [esp + 4], edx
add eax, 0x74
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.ACCTAPPLY
mov eax, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x458]
mov dword [esp + 4], ecx
add eax, 0x34
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.MULTILOGIN
mov eax, dword [ebp - 0x5c4]
add eax, 0x38
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
call sym.getConfVal_char_const__char_const__bool_
jmp 0x4437f7
lea eax, [ebp - 0x58]
mov dword [esp], eax
mov eax, 0x3b
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea edx, [ebp - 0x28]
mov eax, 1
mov dword [esp], edx
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x38]
add eax, 0xc
mov dword [esp], eax
mov eax, 2
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x38]
add eax, 8
mov dword [esp], eax
mov eax, 3
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x38]
add eax, 4
mov dword [esp], eax
mov eax, 4
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea ecx, [ebp - 0x38]
mov dword [esp], ecx
mov eax, 0xffffffff
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x5bc]
mov dword [esp], eax
call sym.__Unwind_SjLj_Unregister
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
cld
mov edi, str._AD_
lea esi, [ebp - 0x458]
mov ecx, 5
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
mov edi, 1
mov dword [ebp - 0x5c8], edi
cmp dl, al
je 0x4437f7
lea esi, [ebp - 0x458]
mov edi, str._USERAGENT_
mov ecx, 0xc
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
mov esi, 2
mov dword [ebp - 0x5c8], esi
cmp dl, al
je 0x4437f7
lea esi, [ebp - 0x458]
mov edi, str._EXCEPTION_
mov ecx, 0xc
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
mov ebx, 3
mov dword [ebp - 0x5c8], ebx
cmp dl, al
je 0x4437f7
mov ecx, 5
lea esi, [ebp - 0x458]
mov edi, str._WF_
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
mov ecx, 4
mov dword [ebp - 0x5c8], ecx
cmp dl, al
je 0x4437f7
mov edi, str._IPSegment_
lea esi, [ebp - 0x458]
mov ecx, 0xc
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
mov edi, 5
mov dword [ebp - 0x5c8], edi
cmp dl, al
je 0x4437f7
lea esi, [ebp - 0x458]
mov edi, str._IPSegment2_
mov ecx, 0xd
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
mov esi, 6
mov dword [ebp - 0x5c8], esi
cmp dl, al
je 0x4437f7
lea esi, [ebp - 0x458]
mov edi, str._IPException_
mov ecx, 0xe
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
mov ebx, 7
mov dword [ebp - 0x5c8], ebx
cmp dl, al
je 0x4437f7
mov ecx, 0xb
lea esi, [ebp - 0x458]
mov edi, str._OUPolicy_
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
mov ecx, 8
mov dword [ebp - 0x5c8], ecx
cmp dl, al
je 0x4437f7
lea esi, [ebp - 0x458]
mov edi, str._WebException_
mov ecx, 0xf
repe cmpsb byte [esi], byte es:[edi]
setb al
seta dl
sub dl, al
movsx eax, dl
cmp eax, 1
sbb edx, edx
and edx, 9
mov dword [ebp - 0x5c8], edx
jmp 0x4437f7
mov eax, dword [ebp - 0x5c4]
lea edx, [ebp - 0x458]
mov ecx, dword [ebp - 0x5c4]
mov dword [esp + 8], edx
add eax, 0x68
mov dword [esp + 4], eax
mov dword [esp], ecx
mov ecx, 0x3a
mov dword [ebp - 0x5b8], ecx
call method.AccountConf.getIPSegment_std::vector_IPSEGMENT__std::allocator_IPSEGMENT_____char_const_
jmp 0x4437f7
mov ecx, 0x2f
lea edx, [ebp - 0x458]
mov dword [esp + 4], ecx
mov dword [esp], edx
call sym._strchr
mov dword [ebp - 0x5ec], eax
test eax, eax
je 0x4437f7
mov edx, 0x4b620c
lea ecx, [ebp - 0x458]
mov edi, 0x4b620c
mov dword [ebp - 0x548], edx
mov esi, 0x4b620c
mov ebx, 0x2a
mov dword [ebp - 0x544], edi
mov dword [ebp - 0x538], esi
mov byte [eax], 0
mov dword [esp], ecx
call sym._strlen
mov dword [esp + 8], eax
lea edx, [ebp - 0x548]
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
mov dword [esp], edx
mov dword [ebp - 0x5b8], ebx
call method.std::string.assign_char_const__unsigned_int_
mov ecx, dword [ebp - 0x5ec]
inc ecx
mov dword [ebp - 0x5f0], ecx
mov dword [esp], ecx
call sym.is_md5_pwd_char_const_
test al, al
je 0x444d0b
mov eax, dword [ebp - 0x5f0]
mov dword [esp], eax
call sym._strlen
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x5f0]
lea ecx, [ebp - 0x544]
mov dword [esp], ecx
mov dword [esp + 4], edx
call method.std::string.assign_char_const__unsigned_int_
mov edx, dword [ebp - 0x5c4]
add edx, 0x48
mov dword [ebp - 0x5f4], edx
mov ecx, dword [ebp - 0x5f4]
lea edx, [ebp - 0x548]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx + 8]
je 0x44512e
test eax, eax
jne 0x4450ae
mov edx, dword [ebp - 0x5f4]
add dword [edx + 4], 8
mov eax, dword [ebp - 0x548]
lea edx, [ebp - 0x558]
mov dword [esp], edx
mov dword [esp + 4], eax
mov eax, 0x2a
mov dword [ebp - 0x5b8], eax
call sym.tolower_string_char_const_
sub esp, 4
lea eax, [ebp - 0x538]
lea ecx, [ebp - 0x558]
mov dword [esp], eax
mov eax, 0x26
mov dword [esp + 4], ecx
mov dword [ebp - 0x5b8], eax
call method.std::string.assign_std::string_const_
lea edx, [ebp - 0x558]
mov edi, 0x2a
mov dword [esp], edx
mov dword [ebp - 0x5b8], edi
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
mov ecx, dword [ebp - 0x5c4]
lea eax, [ebp - 0x538]
mov dword [esp + 4], eax
add ecx, 0xbc
mov dword [ebp - 0x5fc], ecx
mov dword [esp], ecx
call method.std::_Rb_tree_std::string__std::pair_std::string_const__std::string___std::_Select1st_std::pair_std::string_const__std::string_____std::less_std::string___std::allocator_std::pair_std::string_const__std::string_____.find_std::string_const_
mov edx, dword [ebp - 0x5c4]
add edx, 0xc0
cmp eax, edx
jne 0x444524
mov edx, dword [ebp - 0x5fc]
lea ecx, [ebp - 0x538]
lea eax, [ebp - 0x558]
mov dword [esp + 4], ecx
mov dword [ebp - 0x600], edx
mov dword [esp], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
lea eax, [ebp - 0x548]
mov esi, 0x25
lea edx, [ebp - 0x588]
mov dword [esp + 4], eax
mov dword [esp], edx
mov dword [ebp - 0x5b8], esi
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
lea ecx, [ebp - 0x558]
mov ebx, 0x24
lea eax, [ebp - 0x578]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [ebp - 0x5b8], ebx
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
lea edx, [ebp - 0x588]
mov ecx, 0x23
lea eax, [ebp - 0x574]
mov dword [esp + 4], edx
mov dword [esp], eax
mov dword [ebp - 0x5b8], ecx
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
lea eax, [ebp - 0x578]
lea ecx, [ebp - 0x568]
mov dword [esp + 4], eax
mov eax, 0x21
mov dword [esp], ecx
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
lea eax, [ebp - 0x574]
mov edi, 0x20
mov dword [esp + 4], eax
lea eax, [ebp - 0x568]
add eax, 4
mov dword [esp], eax
mov dword [ebp - 0x5b8], edi
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
mov ecx, dword [ebp - 0x600]
lea eax, [ebp - 0x568]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov ecx, 0x1e
mov dword [ebp - 0x5b8], ecx
call method.std::_Rb_tree_std::string__std::pair_std::string_const__std::string___std::_Select1st_std::pair_std::string_const__std::string_____std::less_std::string___std::allocator_std::pair_std::string_const__std::string_____.insert_unique_std::pair_std::str
mov eax, dword [ebp - 0x564]
lea ecx, [eax - 0xc]
cmp ecx, 0x4b6200
mov dword [ebp - 0x628], ecx
jne 0x44526f
mov eax, dword [ebp - 0x568]
lea ecx, [eax - 0xc]
cmp ecx, 0x4b6200
mov dword [ebp - 0x634], ecx
jne 0x44522e
mov eax, dword [ebp - 0x574]
lea ecx, [eax - 0xc]
cmp ecx, 0x4b6200
mov dword [ebp - 0x64c], ecx
jne 0x4452b0
mov eax, dword [ebp - 0x578]
lea ecx, [eax - 0xc]
cmp ecx, 0x4b6200
mov dword [ebp - 0x658], ecx
jne 0x4451ed
lea eax, [ebp - 0x588]
mov dword [esp], eax
mov eax, 0x25
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x558]
mov dword [esp], eax
mov eax, 0x2a
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x538]
mov dword [esp], eax
mov eax, 0x2b
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x544]
mov esi, 0x10
mov dword [esp], eax
mov dword [ebp - 0x5b8], esi
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea edx, [ebp - 0x548]
mov ebx, 0x3a
mov dword [esp], edx
mov dword [ebp - 0x5b8], ebx
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
jmp 0x4437f7
mov eax, 0xc8
lea edx, [ebp - 0x528]
xor edi, edi
mov dword [esp + 8], eax
mov esi, 0x3a
mov dword [esp + 4], edi
mov dword [esp], edx
call sym._memset
mov dword [esp], 0x4b9cdd
lea eax, [ebp - 0x38]
lea ecx, [ebp - 0x458]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [ebp - 0x5b8], esi
call sym.getConfVal_char_const__char_const__std::string_
mov dword [esp], str.Port
lea eax, [ebp - 0x34]
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
call sym.getConfVal_char_const__char_const__std::string_
mov dword [esp], 0x4b9ce9
lea eax, [ebp - 0x30]
lea edx, [ebp - 0x458]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
call sym.getConfVal_char_const__char_const__std::string_
mov dword [esp], str.Password
mov ebx, 0xc7
lea ecx, [ebp - 0x528]
mov dword [esp + 0xc], ebx
lea eax, [ebp - 0x458]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
call sym.getConfVal_char_const__char_const__char__int_
test al, al
je 0x444740
lea edx, [ebp - 0x528]
mov dword [esp], edx
call sym.is_blowfish_pwd_char_const_
test al, al
jne 0x445194
cld
mov edi, 0x4b9cf7
lea esi, [ebp - 0x528]
mov ecx, 2
repe cmpsb byte [esi], byte es:[edi]
jne 0x44515d
lea esi, [ebp - 0x528]
mov edi, esi
mov ecx, esi
mov eax, dword [ecx]
add ecx, 4
lea edx, [eax - 0x1010101]
not eax
and edx, eax
and edx, 0x80808080
je 0x44465d
test edx, 0x8080
jne 0x444682
shr edx, 0x10
add ecx, 2
cld
add dl, dl
sbb ecx, 3
sub ecx, edi
lea esi, [esi + ecx - 2]
mov edi, 0x4b9cfa
mov ecx, 2
repe cmpsb byte [esi], byte es:[edi]
jne 0x44515d
lea ecx, [ebp - 0x528]
mov esi, ecx
mov eax, dword [ecx]
add ecx, 4
lea edx, [eax - 0x1010101]
not eax
and edx, eax
and edx, 0x80808080
je 0x4446a8
test edx, 0x8080
jne 0x4446cd
shr edx, 0x10
add ecx, 2
add dl, dl
sbb ecx, 3
sub ecx, esi
xor eax, eax
mov byte [ebp + ecx - 0x52a], al
lea eax, [ebp - 0x48]
mov dword [esp + 8], eax
lea eax, [ebp - 0x526]
mov dword [esp + 4], eax
lea eax, [ebp - 0x538]
mov dword [esp], eax
mov eax, 0x38
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const_
lea edx, [ebp - 0x538]
mov eax, 0x37
lea ecx, [ebp - 0x2c]
mov dword [esp + 4], edx
mov dword [esp], ecx
mov dword [ebp - 0x5b8], eax
call method.std::string.assign_std::string_const_
lea eax, [ebp - 0x538]
mov dword [esp], eax
mov eax, 0x38
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
mov dword [esp], str.DNSDomainName
lea eax, [ebp - 0x28]
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
mov eax, 0x3a
mov dword [ebp - 0x5b8], eax
call sym.getConfVal_char_const__char_const__std::string_
test al, al
je 0x4437f7
mov edx, dword [ebp - 0x5c4]
add edx, 0x3c
mov eax, dword [edx + 4]
cmp eax, dword [edx + 8]
mov dword [ebp - 0x5d8], edx
je 0x4455df
test eax, eax
jne 0x44552e
mov ecx, dword [ebp - 0x5d8]
add dword [ecx + 4], 0x14
mov dword [esp], 0x4b9b58
call sym._strlen
mov dword [esp + 8], eax
mov eax, 0x4b9b58
lea edx, [ebp - 0x38]
mov dword [esp + 4], eax
mov eax, 0x3a
mov dword [esp], edx
mov dword [ebp - 0x5b8], eax
call method.std::string.assign_char_const__unsigned_int_
mov dword [esp], 0x4b9b58
mov edi, 0x4b9b58
call sym._strlen
mov dword [esp + 8], eax
lea ecx, [ebp - 0x34]
mov dword [esp + 4], edi
mov dword [esp], ecx
call method.std::string.assign_char_const__unsigned_int_
mov dword [esp], 0x4b9b58
mov esi, 0x4b9b58
call sym._strlen
mov dword [esp + 8], eax
lea eax, [ebp - 0x30]
mov dword [esp + 4], esi
mov dword [esp], eax
call method.std::string.assign_char_const__unsigned_int_
mov dword [esp], 0x4b9b58
mov ebx, 0x4b9b58
call sym._strlen
mov dword [esp + 8], eax
lea edx, [ebp - 0x2c]
mov dword [esp + 4], ebx
mov dword [esp], edx
call method.std::string.assign_char_const__unsigned_int_
mov dword [esp], 0x4b9b58
call sym._strlen
mov dword [esp + 8], eax
mov ecx, 0x4b9b58
mov dword [esp + 4], ecx
lea ecx, [ebp - 0x28]
mov dword [esp], ecx
call method.std::string.assign_char_const__unsigned_int_
jmp 0x4437f7
mov dword [esp], str.ADINTERVAL
mov eax, dword [ebp - 0x5c4]
mov edx, 0x3a
mov dword [ebp - 0x5b8], edx
add eax, 0x78
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.POLLCLIENT
mov eax, dword [ebp - 0x5c4]
lea edx, [ebp - 0x458]
mov dword [esp + 4], edx
add eax, 0x7c
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
mov dword [esp], str.POLLINTERVAL
mov eax, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x458]
mov dword [esp + 4], ecx
sub eax, 0xffffff80
mov dword [esp + 8], eax
call sym.getConfVal_char_const__char_const__int_
jmp 0x4437f7
lea eax, [ebp - 0x458]
mov dword [esp], eax
mov eax, 0x3a
mov dword [ebp - 0x5b8], eax
call sym.UTF8ToAnsi_char_const_
mov dword [ebp - 0x5e0], eax
test eax, eax
je 0x444988
mov edx, dword [ebp - 0x5c4]
lea eax, [ebp - 0x48]
mov ecx, dword [ebp - 0x5e0]
mov dword [esp + 8], eax
lea eax, [ebp - 0x538]
add edx, 0xb0
mov dword [esp], eax
mov eax, 0x31
mov dword [ebp - 0x5e4], edx
mov dword [esp + 4], ecx
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const_
mov edx, dword [ebp - 0x5e4]
mov eax, dword [edx + 4]
cmp eax, dword [edx + 8]
je 0x44501c
test eax, eax
jne 0x444f42
mov eax, dword [ebp - 0x5e4]
add dword [eax + 4], 4
lea eax, [ebp - 0x538]
mov dword [esp], eax
mov eax, 0x31
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
mov edx, dword [ebp - 0x5e0]
mov dword [esp], edx
call sym._free
lea eax, [ebp - 0x48]
mov ecx, dword [ebp - 0x5c4]
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
add ecx, 0x84
mov dword [esp + 4], eax
lea eax, [ebp - 0x538]
mov dword [esp], eax
mov eax, 0x2e
mov dword [ebp - 0x5e8], ecx
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const_
mov edx, dword [ebp - 0x5e8]
mov eax, dword [edx + 4]
cmp eax, dword [edx + 8]
je 0x4450f6
test eax, eax
jne 0x445054
mov eax, dword [ebp - 0x5e8]
add dword [eax + 4], 4
lea eax, [ebp - 0x538]
mov ebx, 0x2e
mov dword [esp], eax
mov dword [ebp - 0x5b8], ebx
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
jmp 0x4437f7
lea eax, [ebp - 0x48]
mov ecx, dword [ebp - 0x5c4]
mov dword [esp + 8], eax
lea eax, [ebp - 0x458]
add ecx, 0x90
mov dword [esp + 4], eax
lea eax, [ebp - 0x588]
mov dword [esp], eax
mov eax, 0xf
mov dword [ebp - 0x664], ecx
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const_
mov edx, dword [ebp - 0x664]
mov eax, dword [edx + 4]
cmp eax, dword [edx + 8]
je 0x444fe4
test eax, eax
jne 0x444f20
mov eax, dword [ebp - 0x664]
add dword [eax + 4], 4
lea eax, [ebp - 0x588]
mov ebx, 0xf
mov dword [esp], eax
mov dword [ebp - 0x5b8], ebx
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
jmp 0x4437f7
mov eax, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x458]
mov dword [esp + 8], ecx
add eax, 0x58
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x5c4]
mov dword [esp], eax
jmp 0x4441e0
lea eax, [ebp - 0x458]
mov edx, dword [ebp - 0x5c4]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5c4]
mov dword [esp], edx
add eax, 0x9c
mov dword [esp + 4], eax
jmp 0x4441e0
mov dword [esp], 0x4b9ce9
lea eax, [ebp - 0x458]
xor edx, edx
mov dword [esp + 4], eax
lea ecx, [ebp - 0x58]
mov eax, 0x3a
mov dword [ebp - 0x5c0], edx
mov dword [esp + 8], ecx
mov dword [ebp - 0x5b8], eax
call sym.getConfVal_char_const__char_const__std::string_
mov dword [esp], str.Block
lea eax, [ebp - 0x5c0]
lea edx, [ebp - 0x458]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
call sym.getConfVal_char_const__char_const__int_
test al, al
je 0x4437f7
mov eax, 0x4b9b58
lea ecx, [ebp - 0x58]
mov dword [esp + 4], eax
mov dword [esp], ecx
call method.std::string.compare_char_const__const
test eax, eax
je 0x4437f7
mov eax, dword [ebp - 0x5c0]
mov edx, dword [ebp - 0x58]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5c4]
mov dword [esp + 4], edx
mov dword [esp], eax
call method.AccountConf.setOUDefaultPolicy_char_const__int_
mov dword [esp], 0x4b9b58
call sym._strlen
mov dword [esp + 8], eax
lea edx, [ebp - 0x58]
mov eax, 0x4b9b58
mov dword [esp + 4], eax
mov dword [esp], edx
jmp 0x444857
mov eax, dword [ebp - 0x5f0]
lea edx, [ebp - 0x558]
mov ecx, 0x2a
mov dword [esp], edx
mov dword [ebp - 0x5b8], ecx
mov dword [esp + 4], eax
call sym.encode_passwd_md5_char_const_
sub esp, 4
lea ecx, [ebp - 0x558]
lea eax, [ebp - 0x544]
mov dword [esp + 4], ecx
mov edx, 0x29
mov dword [esp], eax
mov dword [ebp - 0x5b8], edx
call method.std::string.assign_std::string_const_
lea eax, [ebp - 0x558]
mov dword [esp], eax
mov eax, 0x2a
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
jmp 0x4442ba
mov eax, dword [ebp - 0x5cc]
mov dword [esp], eax
call sym._fclose
mov edx, dword [ebp - 0x5c4]
cmp byte [edx], 0
jne 0x444dcf
mov dword [esp], str.none
add edx, 4
mov edi, str.none
mov dword [ebp - 0x668], edx
mov esi, 0x3a
call sym._strlen
mov dword [esp + 8], eax
mov ecx, dword [ebp - 0x668]
mov dword [esp + 4], edi
mov dword [ebp - 0x5b8], esi
mov dword [esp], ecx
call method.std::string.assign_char_const__unsigned_int_
mov eax, dword [ebp - 0x5c4]
mov byte [eax], 1
mov edx, dword [ebp - 0x5c4]
mov ebx, 0x4b98b0
mov ecx, 0x3a
mov dword [esp + 4], ebx
mov dword [ebp - 0x5b8], ecx
add edx, 4
mov dword [ebp - 0x66c], edx
mov dword [esp], edx
call method.std::string.compare_char_const__const
test eax, eax
jne 0x444e19
mov ecx, dword [ebp - 0x5c4]
mov eax, dword [ecx + 0x40]
mov edx, dword [ecx + 0x3c]
sub eax, edx
sar eax, 2
imul eax, eax, 0xcccccccd
test eax, eax
jne 0x444e54
mov eax, dword [ebp - 0x66c]
mov edi, 0x4b98b3
mov esi, 0x3a
mov dword [esp + 4], edi
mov dword [ebp - 0x5b8], esi
mov dword [esp], eax
call method.std::string.compare_char_const__const
test eax, eax
jne 0x444e61
mov edx, dword [ebp - 0x5c4]
mov eax, dword [edx + 0x4c]
mov ebx, dword [edx + 0x48]
sub eax, ebx
sar eax, 3
test eax, eax
je 0x444e61
mov ecx, dword [ebp - 0x5c4]
mov byte [ecx + 0xa8], 1
cmp byte [ebp - 0x5d1], 0
jne 0x444e9a
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax + 0x24]
test ecx, ecx
jne 0x444e9a
mov edx, dword [eax + 0x28]
test edx, edx
jne 0x444e9a
mov edx, eax
movzx eax, byte [eax + 0xc]
mov byte [edx + 0x10], al
movzx eax, byte [edx + 0xd]
mov byte [edx + 0x11], al
mov eax, dword [edx + 0x14]
mov dword [edx + 0x24], eax
mov eax, dword [edx + 0x18]
mov dword [edx + 0x28], eax
lea eax, [ebp - 0x58]
mov edi, 0x3b
mov dword [esp], eax
mov dword [ebp - 0x5b8], edi
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x28]
mov dword [esp], eax
mov eax, 5
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x38]
mov esi, 6
add eax, 0xc
mov dword [esp], eax
mov dword [ebp - 0x5b8], esi
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x38]
mov ecx, 7
add eax, 8
mov dword [esp], eax
mov dword [ebp - 0x5b8], ecx
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x38]
add eax, 4
mov dword [esp], eax
mov eax, 8
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
lea eax, [ebp - 0x38]
mov dword [esp], eax
jmp 0x44400d
mov dword [esp], eax
lea ecx, [ebp - 0x588]
mov eax, 0xd
mov dword [esp + 4], ecx
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
jmp 0x444bb9
mov dword [esp], eax
lea ecx, [ebp - 0x538]
mov eax, 0x2f
mov dword [esp + 4], ecx
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
jmp 0x444957
mov edx, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x588]
mov edi, 0xe
mov eax, dword [edx + 0x94]
mov dword [esp + 8], ecx
mov dword [ebp - 0x5b8], edi
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x664]
mov dword [esp], eax
call method.std::vector_std::string__std::allocator_std::string___._M_insert_aux___gnu_cxx::__normal_iterator_std::string__std::vector_std::string__std::allocator_std::string_______std::string_const_
jmp 0x444bc3
mov edx, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x538]
mov eax, dword [edx + 0xb4]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x5e4]
mov dword [esp], eax
mov eax, 0x30
mov dword [ebp - 0x5b8], eax
call method.std::vector_std::string__std::allocator_std::string___._M_insert_aux___gnu_cxx::__normal_iterator_std::string__std::vector_std::string__std::allocator_std::string_______std::string_const_
jmp 0x444961
mov dword [esp], eax
lea ecx, [ebp - 0x538]
mov edi, 0x2c
mov dword [esp + 4], ecx
mov dword [ebp - 0x5b8], edi
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
jmp 0x4449de
mov dword [ebp - 0x5f8], eax
mov dword [esp], eax
mov eax, 0x28
mov dword [esp + 4], edx
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
lea eax, [ebp - 0x544]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x5f8]
add eax, 4
mov dword [esp], eax
mov eax, 0x27
mov dword [ebp - 0x5b8], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
jmp 0x4442e9
mov edx, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x538]
mov esi, 0x2d
mov eax, dword [edx + 0x88]
mov dword [esp + 8], ecx
mov dword [ebp - 0x5b8], esi
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x5e8]
mov dword [esp], eax
call method.std::vector_std::string__std::allocator_std::string___._M_insert_aux___gnu_cxx::__normal_iterator_std::string__std::vector_std::string__std::allocator_std::string_______std::string_const_
jmp 0x4449e8
mov ecx, dword [ebp - 0x5c4]
mov eax, dword [ecx + 0x4c]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x5f4]
mov dword [esp], eax
mov eax, 0x2a
mov dword [ebp - 0x5b8], eax
call method.std::vector_ITEMATTR__std::allocator_ITEMATTR___._M_insert_aux___gnu_cxx::__normal_iterator_ITEMATTR__std::vector_ITEMATTR__std::allocator_ITEMATTR_______ITEMATTR_const_
jmp 0x4442f3
lea eax, [ebp - 0x528]
mov dword [esp], eax
call sym._strlen
mov dword [esp + 8], eax
lea edx, [ebp - 0x528]
mov eax, 0x3a
mov dword [esp + 4], edx
lea ecx, [ebp - 0x2c]
mov dword [esp], ecx
mov dword [ebp - 0x5b8], eax
call method.std::string.assign_char_const__unsigned_int_
jmp 0x444740
lea ecx, [ebp - 0x528]
lea eax, [ebp - 0x538]
mov dword [esp + 4], ecx
mov dword [esp], eax
call sym.decode_passwd_blowfish_char_const_
sub esp, 4
lea ecx, [ebp - 0x2c]
lea edx, [ebp - 0x538]
mov dword [esp], ecx
mov ecx, 0x39
mov dword [esp + 4], edx
mov dword [ebp - 0x5b8], ecx
call method.std::string.assign_std::string_const_
lea eax, [ebp - 0x538]
mov edx, 0x3a
mov dword [esp], eax
mov dword [ebp - 0x5b8], edx
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string__
jmp 0x444740
mov ebx, 0xffffffff
sub eax, 4
mov ecx, 0x12
mov dword [esp + 4], ebx
mov dword [esp], eax
mov dword [ebp - 0x5b8], ecx
call method.__gnu_cxx.__exchange_and_add_int_volatile__int_
test eax, eax
jg 0x4444f2
mov edx, dword [ebp - 0x658]
lea eax, [ebp - 0x48]
mov dword [esp + 4], eax
mov dword [esp], edx
call method.std::string::_Rep._M_destroy_std::allocator_char__const_
jmp 0x4444f2
mov ebx, 0xffffffff
sub eax, 4
mov ecx, 0x18
mov dword [esp + 4], ebx
mov dword [esp], eax
mov dword [ebp - 0x5b8], ecx
call method.__gnu_cxx.__exchange_and_add_int_volatile__int_
test eax, eax
jg 0x4444bc
mov edx, dword [ebp - 0x634]
lea eax, [ebp - 0x48]
mov dword [esp + 4], eax
mov dword [esp], edx
call method.std::string::_Rep._M_destroy_std::allocator_char__const_
jmp 0x4444bc
sub eax, 4
mov edx, 0xffffffff
mov dword [esp], eax
mov eax, 0x1a
mov dword [esp + 4], edx
mov dword [ebp - 0x5b8], eax
call method.__gnu_cxx.__exchange_and_add_int_volatile__int_
test eax, eax
jg 0x4444a1
mov edx, dword [ebp - 0x628]
lea eax, [ebp - 0x48]
mov dword [esp + 4], eax
mov dword [esp], edx
call method.std::string::_Rep._M_destroy_std::allocator_char__const_
jmp 0x4444a1
sub eax, 4
mov edx, 0xffffffff
mov dword [esp], eax
mov eax, 0x14
mov dword [esp + 4], edx
mov dword [ebp - 0x5b8], eax
call method.__gnu_cxx.__exchange_and_add_int_volatile__int_
test eax, eax
jg 0x4444d7
mov edx, dword [ebp - 0x64c]
lea eax, [ebp - 0x48]
mov dword [esp + 4], eax
mov dword [esp], edx
call method.std::string::_Rep._M_destroy_std::allocator_char__const_
jmp 0x4444d7
mov dword [ebp - 0x5dc], eax
lea ecx, [ebp - 0x38]
mov edi, 0x36
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [ebp - 0x5b8], edi
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
lea eax, [ebp - 0x34]
mov esi, 0x35
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x5dc]
mov dword [ebp - 0x5b8], esi
add eax, 4
mov dword [esp], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
lea eax, [ebp - 0x30]
mov ebx, 0x34
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x5dc]
mov dword [ebp - 0x5b8], ebx
add eax, 8
mov dword [esp], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
lea eax, [ebp - 0x2c]
mov ecx, 0x33
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x5dc]
mov dword [ebp - 0x5b8], ecx
add eax, 0xc
mov dword [esp], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
lea eax, [ebp - 0x28]
mov edx, 0x32
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x5dc]
mov dword [ebp - 0x5b8], edx
add eax, 0x10
mov dword [esp], eax
call method.std::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_std::string_const_
jmp 0x444793
mov edx, dword [ebp - 0x5c4]
lea ecx, [ebp - 0x38]
mov eax, dword [edx + 0x40]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x5d8]
mov dword [esp], eax
mov eax, 0x3a
mov dword [ebp - 0x5b8], eax
call method.std::vector_AD__std::allocator_AD___._M_insert_aux___gnu_cxx::__normal_iterator_AD__std::vector_AD__std::allocator_AD_______AD_const_
jmp 0x44479d