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

Disassembly:
push 0xffffffffffffffff
push 0x68e873
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x78f694]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
mov eax, dword [esp + 0xa4]
mov byte [eax], 0
mov eax, dword [esp + 0x9c]
cmp eax, 0xabcd0123
jne 0x542a29
mov dword [esp + 0x20], 0
jmp 0x542a39
test eax, eax
mov dword [esp + 0x20], eax
jne 0x542a39
mov dword [esp + 0x20], 0x1499700
mov ebp, dword [esp + 0xac]
push 0
push str.rumReceiveUntilMatchDb
push ebp
lea ecx, [esp + 0x38]
call fcn.004b1880
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x90]
cmp eax, ecx
mov dword [esp + 0x78], 0
mov dword [esp + 0x24], eax
ja 0x542a73
mov dword [esp + 0x24], ecx
mov esi, dword [esp + 0x94]
mov ecx, esi
call fcn.00467d60
lea ecx, [esp + 0x38]
call fcn.004ae930
mov ebx, dword [esp + 0x80]
mov edx, dword [ebx]
mov eax, dword [edx + 4]
mov ecx, ebx
mov byte [esp + 0x78], 1
mov byte [esp + 0x50], 1
call eax
mov edi, eax
test edi, edi
mov dword [esp + 0x18], edi
jne 0x542af2
mov edx, dword [ebp]
mov eax, dword [edx + 0x14]
push str.No_buffer_for_reading_until_match.
mov ecx, ebp
call eax
lea ecx, [esp + 0x38]
mov byte [esp + 0x78], 0
call fcn.004af210
lea ecx, [esp + 0x2c]
mov dword [esp + 0x78], 0xffffffff
call fcn.004b18c0
xor al, al
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
mov dword [esp + 0x1c], 0
mov byte [esp + 0x9c], 0
jmp 0x542b16
mov ebx, dword [esp + 0x80]
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0xac]
cmp dword [esp + 0x1c], 0
jne 0x542b9c
mov ecx, edi
call fcn.00467ef0
mov ebp, eax
test ebp, ebp
je 0x542b95
mov ecx, edi
call fcn.00467e50
mov ebx, dword [esp + 0x88]
mov ecx, dword [esp + 0x84]
push ebx
push ecx
mov edi, eax
push ebp
push edi
call fcn.00469470
add esp, 0x10
test eax, eax
jne 0x542da0
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x542b7b
mov ebx, dword [esp + 0x90]
push ebx
push eax
push ebp
push edi
call fcn.00469470
add esp, 0x10
test eax, eax
jne 0x542da0
mov edi, dword [esp + 0x18]
push edi
mov ecx, esi
call fcn.0046c810
mov ecx, edi
call fcn.00467f80
mov ebx, dword [esp + 0x80]
mov ebp, dword [esp + 0xac]
mov edx, dword [ebx]
mov eax, dword [edx + 0xc]
add dword [esp + 0x1c], 1
push ebp
mov ecx, ebx
call eax
test al, al
je 0x542dd4
mov edi, dword [esp + 0xa8]
mov edx, dword [edi]
mov eax, dword [edx + 4]
mov ecx, edi
call eax
test al, al
mov ecx, esi
jne 0x542e12
call fcn.00544a30
mov ebp, eax
mov eax, dword [esp + 0x24]
cmp ebp, eax
jbe 0x542be0
sub ebp, eax
jmp 0x542be2
xor ebp, ebp
mov eax, dword [esp + 0xac]
mov edx, dword [ebx]
mov edx, dword [edx + 8]
push eax
mov eax, dword [esp + 0x24]
push edi
lea ecx, [esp + 0xa4]
push ecx
mov ecx, dword [esp + 0xa4]
push eax
push ecx
push esi
mov ecx, ebx
call edx
mov byte [esp + 0x17], al
mov eax, dword [edi]
mov edx, dword [eax + 8]
mov ecx, edi
call edx
test al, al
jne 0x542e4a
push ebp
mov ecx, esi
call fcn.00467db0
mov ecx, esi
mov ebx, eax
call fcn.00544a30
mov edi, eax
mov eax, dword [esp + 0x88]
push eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x88]
push eax
sub edi, ebp
push edi
push ebx
call fcn.00469470
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x542eb8
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x542c8b
mov ecx, dword [esp + 0x90]
push ecx
push eax
push edi
push ebx
call fcn.00469470
mov edi, dword [esp + 0xa0]
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x542ebc
cmp byte [esp + 0x17], 0
je 0x542fe8
mov ecx, esi
call fcn.00544a30
mov ebp, eax
cmp ebp, 0x100018
jbe 0x542d18
push 0x1c
call fcn.00609260
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
mov byte [esp + 0x78], 3
je 0x542cc9
mov ecx, eax
call fcn.00468060
mov edi, eax
jmp 0x542ccb
xor edi, edi
push esi
mov ecx, edi
mov byte [esp + 0x7c], 1
call fcn.00468c40
push edi
lea ecx, [esp + 0x3c]
call fcn.004aec80
mov eax, dword [esp + 0x24]
sub ebp, eax
sub ebp, 2
mov ebx, ebp
mov ecx, edi
lea ebp, [eax + 2]
call fcn.00483ec0
push eax
mov ecx, esi
call fcn.0046c5f0
push ebx
mov ecx, edi
call fcn.00467db0
push ebp
push eax
mov ecx, esi
call fcn.00469150
push ebp
mov ecx, edi
call fcn.00467fc0
mov ecx, esi
call fcn.00544a30
mov edx, eax
mov eax, 0xcccccccd
mul edx
shr edx, 3
cmp edx, 0x10000
jbe 0x542d38
mov edx, 0x10000
cmp edx, dword [esp + 0x98]
jbe 0x542d48
mov dword [esp + 0x98], edx
cmp byte [esp + 0x9c], 0
je 0x542b04
cmp dword [esp + 0xa0], 2
mov ecx, dword [esp + 0xa4]
mov byte [ecx], 1
setne bl
lea ecx, [esp + 0x38]
mov byte [esp + 0x78], 0
call fcn.004af210
lea ecx, [esp + 0x2c]
mov dword [esp + 0x78], 0xffffffff
call fcn.004b18c0
mov al, bl
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
add eax, ebx
sub eax, edi
mov ebp, eax
push ebp
push edi
mov ecx, esi
call fcn.00469150
mov ecx, dword [esp + 0x18]
push ebp
mov bl, al
call fcn.0046ac20
test bl, bl
jne 0x542d6b
mov ecx, dword [esp + 0xac]
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
push str.dbReceived.append_failed.
call edx
jmp 0x542d6b
mov ecx, esi
call fcn.00544a30
test eax, eax
je 0x542de7
push esi
mov ecx, edi
call fcn.0046cc20
cmp byte [ebp + 0x121], 0
je 0x542dff
mov eax, dword [ebp]
mov edx, dword [eax + 0x18]
push str.No_longer_connected.
mov ecx, ebp
call edx
mov ecx, dword [esp + 0xa8]
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
jmp 0x542abd
call fcn.00544a30
test eax, eax
je 0x542e25
mov ecx, dword [esp + 0x18]
push esi
call fcn.0046cc20
mov ecx, dword [esp + 0xac]
cmp byte [ecx + 0x121], 0
je 0x542abd
mov eax, dword [ecx]
mov edx, dword [eax + 0x18]
push str.The_EOF_has_been_received_on_this_connection.
call edx
jmp 0x542abd
mov ebx, dword [esp + 0xac]
cmp byte [ebx + 0x121], 0
je 0x542e9a
mov ecx, esi
call fcn.00544a30
mov edi, eax
test edi, edi
jbe 0x542e76
push edi
push str.nReceived
mov ecx, ebx
call fcn.004b14c0
test edi, edi
je 0x542e9a
cmp edi, 0x7d0
jb 0x542e85
mov edi, 0x7d0
push edi
mov ecx, esi
call fcn.00467d80
push eax
push str.receivedData
mov ecx, ebx
call fcn.004b0d90
mov ecx, esi
call fcn.00544a30
test eax, eax
je 0x542abd
mov ecx, dword [esp + 0x18]
push esi
call fcn.0046cc20
jmp 0x542abd
mov edi, dword [esp + 0x28]
mov ecx, esi
call fcn.00467d80
mov ecx, esi
mov dword [esp + 0x90], eax
add ebp, edi
call fcn.00544a30
mov edi, ebp
sub edi, dword [esp + 0x90]
mov ebx, eax
cmp ebx, edi
jbe 0x542eef
mov ecx, dword [esp + 0x18]
sub eax, edi
push eax
push ebp
call fcn.0046aac0
sub ebx, edi
push ebx
mov ecx, esi
call fcn.00467fc0
lea ecx, [esp + 0x38]
call fcn.0054cfe0
mov ebx, eax
test ebx, ebx
je 0x542fb3
lea ecx, [esp + 0x54]
call fcn.00468060
push esi
lea ecx, [esp + 0x58]
mov byte [esp + 0x7c], 2
call fcn.00468c40
lea ecx, [esp + 0x54]
call fcn.00544a30
xor edi, edi
test ebx, ebx
mov ebp, eax
jle 0x542f53
push edi
lea ecx, [esp + 0x3c]
call fcn.004ae960
test eax, eax
je 0x542f4c
mov ecx, eax
call fcn.00544a30
add ebp, eax
add edi, 1
cmp edi, ebx
jl 0x542f35
add ebp, 0x20
push ebp
mov ecx, esi
call fcn.0046c5f0
xor ebp, ebp
test ebx, ebx
jle 0x542f99
push ebp
lea ecx, [esp + 0x3c]
call fcn.004ae960
mov edi, eax
test edi, edi
je 0x542f92
mov ecx, edi
call fcn.00544a30
push eax
mov ecx, edi
call fcn.00467d80
push eax
mov ecx, esi
call fcn.00469150
mov ecx, edi
call fcn.00468800
add ebp, 1
cmp ebp, ebx
jl 0x542f64
lea ecx, [esp + 0x54]
push ecx
mov ecx, esi
call fcn.0046ad20
lea ecx, [esp + 0x54]
mov byte [esp + 0x78], 1
call fcn.00468860
lea ecx, [esp + 0x38]
mov byte [esp + 0x78], 0
call fcn.004af210
lea ecx, [esp + 0x2c]
mov dword [esp + 0x78], 0xffffffff
call fcn.004b18c0
mov al, 1
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
mov ecx, dword [esp + 0xac]
mov edx, dword [ecx]
mov eax, dword [edx + 0x14]
push str.Failed_to_receive_more_bytes.
call eax
jmp 0x542e9a