Function at 0x433880
Capabilities:
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x520ed4
mov eax, dword fs:[0]
push eax
mov eax, 0x1104
mov dword fs:[0], esp
call fcn.004b77e0
mov eax, dword [0x565e78]
push ebx
push ebp
mov ebp, dword [esp + 0x111c]
mov dword [esp + 0x1108], eax
mov al, byte [ebp + 0x68e5]
push esi
xor esi, esi
test al, al
push edi
je 0x433d28
xor eax, eax
mov dword [esp + 0x10f1], eax
mov dword [esp + 0x10f5], eax
mov dword [esp + 0x10f9], eax
mov dword [esp + 0x10fd], eax
mov dword [esp + 0x1101], eax
mov dword [esp + 0x1105], eax
mov dword [esp + 0x1109], eax
lea ecx, [ebp + 0x3140]
mov word [esp + 0x110d], ax
push ecx
mov byte [esp + 0x10f4], 0
mov byte [esp + 0x1113], al
call fcn.0041c530
mov eax, 0xf
mov dword [esp + 0x10b4], eax
mov dword [esp + 0x10b0], esi
mov byte [esp + 0x10a0], 0
mov dword [esp + 0x10d8], eax
mov dword [esp + 0x10d4], esi
mov byte [esp + 0x10c4], 0
mov ecx, ebp
mov dword [esp + 0x111c], esi
call fcn.00442a90
test al, al
jne 0x433970
lea esi, [esp + 0x1098]
call fcn.00425b30
jmp 0x434333
mov ebx, dword [ebp + 0x427c]
mov eax, dword [ebp + 0x4280]
cmp ebx, eax
je 0x4339d1
add ebx, 8
mov eax, dword [ebx + 0x14]
mov edi, 0x10
cmp eax, edi
jb 0x433993
mov eax, dword [ebx]
jmp 0x433995
mov eax, ebx
mov ecx, dword [ebp + 0x42e0]
push eax
push ecx
call fcn.004b34a2
add esp, 8
test eax, eax
jne 0x4339bf
lea edi, [ebx - 8]
lea esi, [esp + 0x1098]
call fcn.0041de60
mov edi, 0x10
xor esi, esi
mov eax, dword [ebp + 0x4280]
add ebx, 0x58
lea edx, [ebx - 8]
cmp edx, eax
jne 0x433983
jmp 0x4339d6
mov edi, 0x10
cmp dword [esp + 0x10b0], esi
jne 0x433a34
cmp dword [esp + 0x10d8], edi
jb 0x4339f8
mov eax, dword [esp + 0x10c4]
push eax
call fcn.004fa776
add esp, 4
cmp dword [esp + 0x10b4], edi
mov dword [esp + 0x10d8], 0xf
mov dword [esp + 0x10d4], esi
mov byte [esp + 0x10c4], 0
jb 0x434333
mov ecx, dword [esp + 0x10a0]
push ecx
call fcn.004fa776
add esp, 4
jmp 0x434333
push 0xffffffffffffffff
push esi
lea edx, [esp + 0x10c8]
push edx
mov ecx, 0x56b85c
call fcn.004018b0
cmp dword [ebp + 0x691c], edi
jb 0x433a59
mov ecx, dword [ebp + 0x6908]
jmp 0x433a5f
lea ecx, [ebp + 0x6908]
cmp dword [ebp + 0x6900], edi
jb 0x433a6f
mov eax, dword [ebp + 0x68ec]
jmp 0x433a75
lea eax, [ebp + 0x68ec]
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push ecx
push 0x20
lea ecx, [esp + 0x10f8]
push ecx
push 0x53a3bc
push str.account
push eax
call esi
lea eax, [esp + 0x10f0]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x433aa0
sub eax, edx
push eax
lea edx, [esp + 0x10f4]
push edx
mov ecx, 0x56b824
call fcn.00401b10
cmp dword [ebp + 0x691c], edi
jb 0x433acc
mov eax, dword [ebp + 0x6908]
jmp 0x433ad2
lea eax, [ebp + 0x6908]
cmp dword [ebp + 0x6900], edi
jb 0x433ae2
mov ebp, dword [ebp + 0x68ec]
jmp 0x433ae8
add ebp, 0x68ec
push eax
push 0x20
lea eax, [esp + 0x10f8]
push eax
push 0x53a3bc
push 0x5420ec
push ebp
call esi
lea eax, [esp + 0x34]
call fcn.004023d0
xor ecx, ecx
mov dword [esp + 0x108c], ecx
mov dword [esp + 0x1090], ecx
mov byte [esp + 0x1094], cl
mov eax, 8
lea ecx, [esp + 0x108c]
lea esi, [esp + 0x34]
mov byte [esp + 0x108c], 0x72
mov byte [esp + 0x108d], 0x61
mov byte [esp + 0x108e], 0x74
mov byte [esp + 0x108f], 0x73
mov byte [esp + 0x1090], 0x65
mov byte [esp + 0x1091], 0x75
mov byte [esp + 0x1092], 0x6c
mov byte [esp + 0x1093], 0x62
call fcn.00402430
push edi
lea edx, [esp + 0x14]
push edx
mov eax, esi
mov ebx, 1
push eax
lea ecx, [esp + 0x10fc]
mov byte [esp + 0x1128], bl
call fcn.00405390
mov byte [esp + 0x111c], 2
mov ecx, dword [eax]
mov eax, ecx
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x433ba5
sub eax, esi
push eax
push ecx
mov ecx, 0x56b840
call fcn.00401b10
mov byte [esp + 0x111c], bl
mov eax, dword [esp + 0x10]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x433bdf
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
call fcn.004fa853
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push eax
mov byte [esp + 0x1120], 3
call fcn.00425cc0
mov esi, dword [esp + 0x14]
mov eax, esi
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x433c10
sub eax, edx
push eax
push esi
mov ecx, 0x56b878
call fcn.00401b10
mov eax, dword [esp + 0x10d8]
xor ebp, ebp
cmp eax, edi
mov eax, dword [esp + 0x10c4]
mov dword [0x56bb0c], ebp
jae 0x433c46
lea eax, [esp + 0x10c4]
mov ecx, dword [esp + 0x10dc]
push ecx
push eax
mov ecx, 0x56b818
mov dword [0x56b938], ebp
mov byte [0x56b950], 0
mov byte [0x56b951], 0
call dword [sym.imp.bsclt.dll_public:_void___thiscall_bsclt_socket::connect_char_const___unsigned_short_int_]
lea eax, [esi - 0x10]
mov dword [0x56b948], ebx
mov dword [0x56b94c], ebx
mov byte [esp + 0x111c], bl
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x433c9b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov byte [esp + 0x111c], 0
push 8
mov esi, 0xf
push 0x5420e0
lea ecx, [esp + 0x20]
mov dword [esp + 0x38], esi
mov dword [esp + 0x34], ebp
mov byte [esp + 0x24], 0
call fcn.00401b10
push ebx
push 2
lea eax, [esp + 0x20]
push eax
mov ecx, 0x56b814
mov byte [esp + 0x1128], 4
call dword [sym.imp.log.dll_public:_void___thiscall_my_log::write_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___enum_log_type__bool_]
cmp dword [esp + 0x30], edi
jb 0x433cf3
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.004fa776
add esp, 4
cmp dword [esp + 0x10d8], edi
jb 0x433d0c
mov edx, dword [esp + 0x10c4]
push edx
call fcn.004fa776
add esp, 4
mov eax, dword [esp + 0x10b4]
mov dword [esp + 0x10d8], esi
mov dword [esp + 0x10d4], ebp
cmp eax, edi
jmp 0x434003
lea esi, [ebp + 0x3140]
test esi, esi
jne 0x433d36
xor eax, eax
jmp 0x433d39
mov eax, dword [esi + 0x1c]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x433d5a
mov ecx, dword [ebp + 0x315c]
push 0
push 2
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
mov al, byte [0x56b952]
test al, al
jne 0x433d9a
mov edx, dword [0x56bbcc]
push 0x542bd0
push edx
call fcn.004b34a2
add esp, 8
test eax, eax
je 0x433d9a
mov eax, dword [0x56bac8]
mov ecx, dword [eax - 0xc]
test ecx, ecx
jne 0x433d9a
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x140]
cmp eax, 1
jne 0x434333
mov ecx, ebp
call fcn.00442a90
test al, al
je 0x434333
mov eax, ebp
call fcn.00437bf0
cmp dword [ebp + 0x4c8c], 1
jne 0x433e8e
mov eax, dword [0x56bbcc]
push 0x542bd0
push eax
call fcn.004b34a2
add esp, 8
test eax, eax
je 0x433e8e
call fcn.00410e90
push eax
lea ecx, [esp + 0x14]
call fcn.00401c00
mov dword [esp + 0x111c], 5
mov esi, dword [esp + 0x10]
push esi
push 0x20
lea ecx, [esp + 0x10f8]
push ecx
push 0
push str.regip0
push str.regsvr
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push esi
push 0
push str.regport0
push str.regsvr
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push eax
lea edx, [esp + 0x10f4]
push edx
mov ecx, 0x56b818
mov dword [0x56b948], 3
mov dword [0x56b938], 0
mov byte [0x56b950], 0
mov byte [0x56b951], 0
call dword [sym.imp.bsclt.dll_public:_void___thiscall_bsclt_socket::connect_char_const___unsigned_short_int_]
push 0x542098
mov ecx, 0x56bbcc
mov dword [0x56b94c], 1
call fcn.00401e80
lea ecx, [esp + 0x10]
mov dword [esp + 0x111c], 0xffffffff
call fcn.00401ab0
jmp 0x434275
lea eax, [esp + 0x1098]
lea ebx, [ebp + 0x4288]
push eax
mov edi, ebx
call fcn.0041ddc0
mov dword [esp + 0x111c], 6
mov al, byte [0x56b952]
test al, al
jne 0x433ec8
mov ecx, dword [0x56bac8]
mov eax, dword [ecx - 0xc]
test eax, eax
je 0x433f95
mov edi, dword [ebp + 0x427c]
cmp edi, dword [ebp + 0x4280]
je 0x433f00
mov eax, dword [0x56ba28]
jmp 0x433ee0
cmp dword [edi + 0x20], eax
je 0x433ef4
mov ecx, dword [ebp + 0x4280]
add edi, 0x58
cmp edi, ecx
jne 0x433ee0
jmp 0x433f00
lea esi, [esp + 0x1098]
call fcn.0041de60
mov esi, dword [ebp + 0x4280]
cmp edi, esi
jne 0x433f3e
mov eax, dword [ebp + 0x427c]
test eax, eax
je 0x433f3e
mov ecx, esi
sub ecx, eax
mov eax, 0x2e8ba2e9
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x14], eax
je 0x433f3e
lea edi, [esi - 0x58]
lea esi, [esp + 0x1098]
call fcn.0041de60
lea edi, [esp + 0x1098]
mov esi, ebx
call fcn.0041de60
mov eax, dword [0x56b83c]
mov edi, dword [0x56b828]
mov esi, 0x10
cmp eax, esi
jae 0x433f65
mov edi, 0x56b828
test edi, edi
lea ebx, [ebp + 0x42e8]
jne 0x433f7c
xor eax, eax
push eax
push edi
mov ecx, ebx
call fcn.00401f00
jmp 0x433f9a
mov eax, edi
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x433f81
sub eax, ecx
push eax
push edi
mov ecx, ebx
call fcn.00401f00
jmp 0x433f9a
mov esi, 0x10
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x10c8]
push ecx
mov ecx, 0x56b85c
call fcn.004018b0
mov eax, dword [0x56b870]
test eax, eax
jne 0x434026
push esi
push 0x53ea5c
push 0x542088
mov ecx, ebp
call fcn.004f7862
cmp dword [esp + 0x10d8], esi
jb 0x433fe4
mov edx, dword [esp + 0x10c4]
push edx
call fcn.004fa776
add esp, 4
mov eax, dword [esp + 0x10b4]
mov dword [esp + 0x10d8], 0xf
mov dword [esp + 0x10d4], 0
cmp eax, esi
mov byte [esp + 0x10c4], 0
jb 0x434333
mov eax, dword [esp + 0x10a0]
push eax
call fcn.004fa776
add esp, 4
jmp 0x434333
mov al, byte [0x56b952]
test al, al
jne 0x4340e2
lea ebx, [ebp + 0x42e8]
call fcn.004209a0
mov edi, eax
call fcn.00420a30
mov ecx, dword [eax]
mov eax, ecx
lea edi, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x434050
sub eax, edi
push eax
push ecx
mov ecx, 0x56b824
call fcn.00401b10
xor edi, edi
lea ecx, [esp + 0x34]
call fcn.00405280
push esi
lea edx, [esp + 0x14]
mov bl, 7
push edx
lea eax, [esp + 0x3c]
mov byte [esp + 0x1124], bl
mov ecx, dword [ebp + 0x42ec]
push eax
call fcn.00405390
mov byte [esp + 0x111c], 8
mov ecx, dword [eax]
mov eax, ecx
lea edi, [eax + 1]
mov edi, edi
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4340a0
sub eax, edi
push eax
push ecx
mov ecx, 0x56b840
call fcn.00401b10
mov byte [esp + 0x111c], bl
mov eax, dword [esp + 0x10]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4340da
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov byte [esp + 0x111c], 6
call fcn.004fa853
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push eax
mov byte [esp + 0x1120], 9
call fcn.00425cc0
mov al, byte [ebp + 0x544c]
add esp, 4
test al, al
je 0x43411c
mov edi, dword [ebp + 0x5450]
jmp 0x43411e
xor edi, edi
cmp dword [ebp + 0x54a8], esi
jb 0x43412e
mov edx, dword [ebp + 0x5494]
jmp 0x434134
lea edx, [ebp + 0x5494]
cmp dword [ebp + 0x548c], esi
jb 0x434144
mov ecx, dword [ebp + 0x5478]
jmp 0x43414a
lea ecx, [ebp + 0x5478]
cmp dword [ebp + 0x546c], esi
jb 0x43415a
mov eax, dword [ebp + 0x5458]
jmp 0x434160
lea eax, [ebp + 0x5458]
push edx
push ecx
xor ecx, ecx
mov cx, word [ebp + 0x5470]
push ecx
push eax
push edi
mov ecx, 0x56b818
call dword [sym.imp.bsclt.dll_public:_void___thiscall_bsclt_socket::set_proxy_int__char_const___unsigned_short_int__char_const___char_const__]
mov edi, dword [esp + 0x10]
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x434182
sub eax, edx
push eax
push edi
mov ecx, 0x56b878
call fcn.00401b10
cmp dword [esp + 0x10d8], esi
mov eax, dword [esp + 0x10c4]
jae 0x4341ae
lea eax, [esp + 0x10c4]
mov edx, dword [esp + 0x10dc]
xor ebx, ebx
push edx
push eax
mov ecx, 0x56b818
mov dword [0x56b938], ebx
mov byte [0x56b950], bl
mov byte [0x56b951], bl
call dword [sym.imp.bsclt.dll_public:_void___thiscall_bsclt_socket::connect_char_const___unsigned_short_int_]
mov eax, 1
push 0x22
push 0x542064
mov ecx, 0x56bbcc
mov dword [0x56b948], eax
mov dword [0x56b94c], eax
mov byte [0x56b952], bl
call fcn.00401f00
lea eax, [edi - 0x10]
mov byte [esp + 0x111c], 6
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43421e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov dword [esp + 0x111c], 0xffffffff
cmp dword [esp + 0x10d8], esi
jb 0x434242
mov eax, dword [esp + 0x10c4]
push eax
call fcn.004fa776
add esp, 4
cmp dword [esp + 0x10b4], esi
mov dword [esp + 0x10d8], 0xf
mov dword [esp + 0x10d4], ebx
mov byte [esp + 0x10c4], 0
jb 0x434275
mov ecx, dword [esp + 0x10a0]
push ecx
call fcn.004fa776
add esp, 4
push 0x542058
lea ecx, [esp + 0x18]
mov byte [ebp + 0x6920], 1
call fcn.00402030
mov edi, ebp
mov dword [esp + 0x111c], 0xa
call fcn.00443c40
or esi, 0xffffffff
mov dword [esp + 0x111c], esi
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, esi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4342c3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
call fcn.004fa853
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [esp + 0x10], eax
push 6
push 0x542a7c
lea ecx, [esp + 0x18]
mov dword [esp + 0x1124], 0xb
call fcn.00401f00
push 0xb
push 0x54204c
lea ecx, [esp + 0x18]
call fcn.00401f00
push 0
push 0x53a3bc
lea ecx, [esp + 0x18]
call fcn.00401f00
mov dword [esp + 0x111c], esi
mov eax, dword [esp + 0x10]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
lock xadd dword [ecx], esi
dec esi
test esi, esi
jg 0x434333
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov ecx, dword [esp + 0x1114]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
mov ecx, dword [esp + 0x1104]
pop ebx
call fcn.004b6cac
add esp, 0x1110
ret 4