Function at 0x43f380
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
mov eax, 0x43ebc
call fcn.0045ec70
push ebx
push ebp
push esi
push edi
mov edi, 0x514f20
or ecx, 0xffffffff
xor eax, eax
mov ebp, dword [esp + 0x43ed4]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x86c]
mov eax, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x514f20
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x6c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x514f20
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x86c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x43ed0]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x106c]
push ecx
push edx
push eax
call fcn.0043eed0
lea ecx, [esp + 0x878]
push ecx
push str.wsdebug.txt
call fcn.00407910
mov edi, 0x46f304
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x11160]
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x1116b]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x45e3111
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
lea eax, [esp + 0x1116b]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [0x45e3214]
mov esi, 0x514f20
mov dword [esp + 0x1117c], ecx
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x43f4cb
test cl, cl
je 0x43f4c7
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x43f4cb
add eax, 2
add esi, 2
test cl, cl
jne 0x43f4a3
xor eax, eax
jmp 0x43f4d0
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43f50f
mov edi, str.WEBSERVICE_NOT_DEFINED
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push ebp
mov eax, ecx
mov esi, edi
mov edi, ebp
push str.wsdebug.txt
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00407910
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x43ebc
ret
lea ecx, [esp + 0x14]
lea edx, [esp + 0x1106c]
push ecx
push edx
call fcn.00404670
add esp, 8
test eax, eax
jne 0x43f563
mov edi, str.OPEN_WEBSERVICE_CONNECTION_FAILED
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push ebp
mov eax, ecx
mov esi, edi
mov edi, ebp
push str.wsdebug.txt
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00407910
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x43ebc
ret
mov edx, dword [esp + 0x110a4]
lea ecx, [esp + 0x10]
push ecx
push 0x8004667e
push edx
mov dword [esp + 0x1c], 1
call sub.WSOCK32.dll_ioctlsocket
lea edi, [esp + 0x86c]
or ecx, 0xffffffff
xor eax, eax
push 0
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x870]
push ecx
mov ecx, dword [esp + 0x110ac]
push eax
push ecx
call sub.WSOCK32.dll_send
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp + 0x10], 0
call ebx
xor edi, edi
mov ebp, eax
mov eax, dword [esp + 0x110a4]
push edi
lea edx, [esp + 0x70]
push 0x800
push edx
push eax
call sub.WSOCK32.dll_recv
mov esi, eax
test esi, esi
jle 0x43f5df
mov edi, esi
cmp esi, 0xffffffff
jne 0x43f5f0
call sub.WSOCK32.dll_WSAGetLastError
cmp eax, 0x2733
jne 0x43f665
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
test esi, esi
je 0x43f665
cmp esi, 0x2746
je 0x43f665
cmp esi, 0x2745
je 0x43f665
test edi, edi
jle 0x43f622
lea ecx, [esp + 0x6c]
push edi
push ecx
call fcn.0043f1e0
add esp, 8
test eax, eax
jne 0x43f665
call ebx
mov edx, dword [0x45e3344]
add edx, ebp
cmp edx, eax
jb 0x43f65e
mov edx, dword [esp + 0x110a4]
mov eax, 0x800
sub eax, edi
push 0
lea ecx, [esp + edi + 0x70]
push eax
push ecx
push edx
call sub.WSOCK32.dll_recv
mov esi, eax
test esi, esi
jle 0x43f654
add edi, esi
cmp edi, 0x800
je 0x43f665
jmp 0x43f5df
mov esi, 1
jmp 0x43f669
mov esi, dword [esp + 0x10]
lea eax, [esp + 0x14]
lea ecx, [esp + 0x1106c]
push eax
push ecx
mov byte [esp + edi + 0x74], 0
call fcn.00405180
lea edx, [esp + 0x74]
push edx
push str.wsdebug.txt
call fcn.00407910
add esp, 0x10
test esi, esi
je 0x43f69d
mov edi, str.WEBSERVICE_TIMEOUT_EXPIRED
jmp 0x43f6bb
lea eax, [esp + 0x906c]
lea ecx, [esp + 0x6c]
push eax
push ecx
call fcn.0043f290
add esp, 8
test eax, eax
jne 0x43f6fa
mov edi, str.XML_MALFORMED_RESPONSE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x43ed4]
not ecx
sub edi, ecx
push eax
mov edx, ecx
mov esi, edi
mov edi, eax
push str.wsdebug.txt
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00407910
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x43ebc
ret
cmp eax, 1
jl 0x43f728
lea edi, [esp + 0x986c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x43ed4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, 0x4823c0
lea eax, [esp + 0x906c]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x43f76e
test cl, cl
je 0x43f758
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x43f76e
add eax, 2
add esi, 2
test cl, cl
jne 0x43f734
xor eax, eax
xor ecx, ecx
test eax, eax
pop edi
pop esi
sete cl
pop ebp
mov eax, ecx
pop ebx
add esp, 0x43ebc
ret
sbb eax, eax
pop edi
sbb eax, 0xffffffff
xor ecx, ecx
test eax, eax
sete cl
pop esi
pop ebp
mov eax, ecx
pop ebx
add esp, 0x43ebc
ret