Function at 0x42650c
Capabilities:
Receive data
Receive data on socket

Disassembly:
push ebp
sub esp, 0x400
lea ebp, [esp - 4]
mov eax, dword [0x5636c8]
xor eax, ebp
mov dword [ebp + 0x400], eax
push 0x30
mov eax, 0x4ebb9e
call fcn.00495410
mov edx, dword [ebp + 0x40c]
mov edi, dword [ebp + 0x410]
xor ebx, ebx
mov esi, ecx
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ebx
call fcn.004264ec
mov ecx, dword [esi + 4]
mov ecx, dword [ecx + 8]
mov dword [ebp - 0x14], ebx
cmp dword [ecx], ebx
jne 0x42655b
mov dword [ebp - 0x14], eax
mov ecx, edx
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::String::erase_void_]
cmp dword [ebp - 0x14], ebx
jne 0x4266ab
push ebx
call sub.MSVCR90.dll__time64
mov dword [ebp - 0x2c], eax
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x21c]
cmp eax, ebx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x18], eax
fild dword [ebp - 0x18]
fild qword [ebp - 0x2c]
pop ecx
faddp st(1)
fstp qword [ebp - 0x2c]
jg 0x426599
fldz
fstp qword [ebp - 0x2c]
call dword [sym.imp.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::getBinary_void_]
mov ecx, dword [esi + 4]
cmp dword [ecx + 0x110], eax
mov byte [ebp - 0xe], bl
sete byte [ebp - 0xd]
cmp dword [edi], ebx
jge 0x4265cf
or dword [edi], 0xffffffff
mov ecx, dword [esi + 4]
push ebx
push ebx
push 0xa
add ecx, 8
mov byte [ebp - 0xd], bl
call dword [sym.imp.ScCore.dll_public:_int___thiscall_ScCore::String::find_unsigned_short_int__int__bool_const]
test eax, eax
setge byte [ebp - 0xe]
push ebx
push 0x400
lea eax, [ebp]
push eax
mov eax, dword [esi + 4]
push dword [eax + 0x114]
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x1c], eax
cmp eax, 0xffffffff
jne 0x4266d8
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x426763
mov dword [ebp - 0x14], 0x3b
mov eax, dword [esi + 4]
lea ecx, [eax + 8]
mov eax, dword [ecx]
mov ebx, dword [eax]
xor eax, eax
cmp ebx, eax
jle 0x426693
cmp dword [edi], eax
mov byte [ebp - 0xd], al
jge 0x426637
push eax
push eax
push 0xa
call dword [sym.imp.ScCore.dll_public:_int___thiscall_ScCore::String::find_unsigned_short_int__int__bool_const]
test eax, eax
jl 0x426637
mov dword [edi], eax
mov byte [ebp - 0xd], 1
mov eax, dword [edi]
test eax, eax
jle 0x426643
cmp ebx, eax
jle 0x426643
mov ebx, eax
mov ecx, dword [esi + 4]
push ebx
push 0
lea eax, [ebp - 0x20]
push eax
add ecx, 8
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::String::substr_int__int_]
mov ecx, dword [ebp - 0x34]
push eax
mov dword [ebp - 4], 1
call dword [0x502e8c]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::String::destructor_void_]
cmp byte [ebp - 0xd], 0
lea eax, [ebx + 1]
jne 0x42667f
mov eax, ebx
mov ecx, dword [esi + 4]
push eax
push 0
add ecx, 8
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::String::erase_int__int_]
sub dword [edi], ebx
mov dword [ebp - 0x20], ebx
cmp dword [edi], 0
je 0x4266ab
fldz
fcomp qword [ebp - 0x2c]
fnstsw ax
test ah, 0x44
jnp 0x4266ab
mov dword [ebp - 0x14], 0x3a
mov eax, dword [ebp - 0x20]
mov dword [edi], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x400]
xor ecx, ebp
call fcn.00494f67
add ebp, 0x404
leave
ret 8
cmp eax, ebx
jne 0x4266e4
mov ecx, dword [esi + 4]
call fcn.004260f8
mov ecx, dword [ebp - 0x1c]
cmp ecx, ebx
jle 0x426763
cmp byte [ebp - 0xd], 0
jne 0x426721
lea eax, [ebp]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x24], ecx
mov cl, byte [eax]
cmp cl, 0xa
jne 0x426705
mov byte [ebp - 0xe], 1
cmp cl, 0xd
je 0x426715
mov edx, dword [ebp - 0x30]
inc dword [ebp - 0x30]
mov byte [edx], cl
inc eax
jmp 0x426719
inc eax
dec dword [ebp - 0x1c]
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jg 0x4266fa
lea ecx, [ebp - 0x18]
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::String::constructor_void_]
mov eax, dword [esi + 4]
push dword [eax + 0x110]
lea eax, [ebp]
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x18]
push eax
mov dword [ebp - 4], ebx
call dword [sym.imp.ScCore.dll_public:_int___thiscall_ScCore::String::decode_char_const___int__class_ScCore::Encoder_const__]
mov ecx, dword [esi + 4]
lea eax, [ebp - 0x18]
push eax
add ecx, 8
call dword [0x502e8c]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::String::destructor_void_]
mov eax, dword [edi]
cmp eax, ebx
jle 0x426779
mov ecx, dword [esi + 4]
mov ecx, dword [ecx + 8]
cmp dword [ecx], eax
jge 0x42660c
cmp eax, ebx
jne 0x426789
mov ecx, dword [esi + 4]
mov ecx, dword [ecx + 8]
cmp dword [ecx], ebx
jne 0x42660c
cmp eax, 0xffffffff
jne 0x426798
cmp byte [ebp - 0xe], 0
jne 0x42660c
fldz
fcomp qword [ebp - 0x2c]
fnstsw ax
test ah, 0x44
jnp 0x42660c
push ebx
call sub.MSVCR90.dll__time64
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
fild qword [ebp - 0x3c]
pop ecx
fcomp qword [ebp - 0x2c]
fnstsw ax
test ah, 5
jnp 0x4265cf
jmp 0x42660c