Function at 0x489980
Capabilities:
Receive data
Receive data on socket
Set socket configuration

Disassembly:
mov eax, dword [0x5cd2a0]
sub esp, 0x7d8
push ebx
push ebp
push esi
mov esi, eax
xor ebp, ebp
cmp esi, ebp
mov ebx, edx
je 0x4899a7
cmp dword [esi + 0x7c], ecx
je 0x4899b3
mov esi, dword [esi + 0x80]
cmp esi, ebp
jne 0x489998
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
mov ecx, ebx
shr ecx, 0x10
test ecx, ecx
push edi
je 0x489b5a
cmp eax, ebp
mov ebx, dword [esi + 0x70]
je 0x48a5cc
lea esp, [esp]
cmp esi, eax
je 0x4899eb
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x4899d0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
mov edx, 0x3e7
lea ecx, [esp + 0x48]
call fcn.00420e60
lea edx, [esp + 0x48]
mov ecx, 0xa93
call fcn.0041f1a0
mov edi, dword [0x5f002c]
cmp edi, ebp
je 0x489a56
cmp dword [edi + 8], ebx
jne 0x489a21
mov ecx, edi
call fcn.004f0d40
test eax, eax
je 0x489a2d
mov edi, dword [edi + 0x2500]
cmp edi, ebp
jne 0x489a11
jmp 0x489a56
lea edx, [esp + 0x48]
lea ebp, [edi + 0x444]
push edx
mov edx, 0x3e7
mov ecx, ebp
call fcn.00420d70
mov ecx, edi
call fcn.005690a0
mov edx, edi
mov ecx, ebp
call fcn.00568f00
xor ebp, ebp
push 2
lea eax, [esp + 0x4c]
push 0x5a75cc
push eax
call fcn.005a2a05
add esp, 0xc
test eax, eax
jne 0x489a92
lea eax, [esp + 0x4a]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x489a75
sub eax, edx
inc eax
push eax
lea ecx, [esp + 0x4e]
push ecx
lea edx, [esp + 0x50]
push edx
call fcn.00592290
add esp, 0xc
mov dl, 0x20
lea ecx, [esp + 0x48]
call fcn.005379a0
mov ecx, dword [0x5c81a0]
cmp ecx, ebp
je 0x489ab9
cmp dword [ecx + 0x52c], ebx
je 0x489af4
mov ecx, dword [ecx + 0x890]
cmp ecx, ebp
jne 0x489aa7
mov ecx, dword [0x5f4f78]
cmp ecx, ebp
je 0x489ad5
cmp dword [ecx + 0x340], ebx
je 0x489b05
mov ecx, dword [ecx + 0x3d4]
cmp ecx, ebp
jne 0x489ac3
mov ecx, dword [0x5ed44c]
cmp ecx, ebp
je 0x489b2b
nop
cmp dword [ecx + 0x444], ebx
je 0x489b19
mov ecx, dword [ecx + 0x4bc]
cmp ecx, ebp
jne 0x489ae0
jmp 0x489b2b
lea edx, [esp + 0x48]
mov dword [ecx + 0x52c], ebp
call fcn.0042f110
jmp 0x489b2b
lea eax, [esp + 0x48]
push eax
xor edx, edx
mov dword [ecx + 0x340], ebp
call fcn.005273e0
jmp 0x489b2b
lea edx, [esp + 0x48]
push edx
xor edx, edx
mov dword [ecx + 0x444], ebp
call fcn.00492700
mov eax, dword [0x5cd2a0]
cmp eax, ebp
je 0x489b46
cmp esi, eax
je 0x48a2fa
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x489b34
mov ecx, ebx
call fcn.00488ab0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
mov edx, 0x3b5
lea ecx, [esp + 0x430]
mov dword [esi + 0x74], 0xb4
call fcn.00420e60
mov ebp, dword [sym.imp.WSOCK32.dll_recv]
xor edi, edi
lea ebx, [ebx]
mov edx, dword [esi + 0x7c]
push 0
mov eax, 0x3b4
sub eax, edi
push eax
lea ecx, [esp + edi + 0x438]
push ecx
push edx
call ebp
cmp eax, 0xffffffff
je 0x489bab
test eax, eax
je 0x489be6
add edi, eax
cmp edi, 0x383
jb 0x489b80
cmp bx, 0x20
jne 0x489f0e
mov eax, dword [0x5cd2a0]
mov ebx, dword [esi + 0x70]
xor ebp, ebp
cmp eax, ebp
je 0x48a5cc
cmp esi, eax
je 0x489d8e
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x489bc7
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
test edi, edi
jne 0x489bab
mov eax, dword [0x5cd2a0]
mov ebx, dword [esi + 0x70]
xor ebp, ebp
cmp eax, ebp
je 0x48a5cc
lea esp, [esp]
cmp esi, eax
je 0x489c1b
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x489c00
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
mov edx, 0x3e7
lea ecx, [esp + 0x48]
call fcn.00420e60
lea edx, [esp + 0x48]
mov ecx, 0xa94
call fcn.0041f1a0
mov edi, dword [0x5f002c]
cmp edi, ebp
je 0x489c86
cmp dword [edi + 8], ebx
jne 0x489c51
mov ecx, edi
call fcn.004f0d40
test eax, eax
je 0x489c5d
mov edi, dword [edi + 0x2500]
cmp edi, ebp
jne 0x489c41
jmp 0x489c86
lea eax, [esp + 0x48]
lea ebp, [edi + 0x444]
push eax
mov edx, 0x3e7
mov ecx, ebp
call fcn.00420d70
mov ecx, edi
call fcn.005690a0
mov edx, edi
mov ecx, ebp
call fcn.00568f00
xor ebp, ebp
push 2
lea ecx, [esp + 0x4c]
push 0x5a75cc
push ecx
call fcn.005a2a05
add esp, 0xc
test eax, eax
jne 0x489cc2
lea eax, [esp + 0x4a]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x489ca5
sub eax, edx
inc eax
push eax
lea edx, [esp + 0x4e]
push edx
lea eax, [esp + 0x50]
push eax
call fcn.00592290
add esp, 0xc
mov dl, 0x20
lea ecx, [esp + 0x48]
call fcn.005379a0
mov ecx, dword [0x5c81a0]
cmp ecx, ebp
je 0x489ce9
cmp dword [ecx + 0x52c], ebx
je 0x489d24
mov ecx, dword [ecx + 0x890]
cmp ecx, ebp
jne 0x489cd7
mov ecx, dword [0x5f4f78]
cmp ecx, ebp
je 0x489d05
cmp dword [ecx + 0x340], ebx
je 0x489d35
mov ecx, dword [ecx + 0x3d4]
cmp ecx, ebp
jne 0x489cf3
mov ecx, dword [0x5ed44c]
cmp ecx, ebp
je 0x489d5b
nop
cmp dword [ecx + 0x444], ebx
je 0x489d49
mov ecx, dword [ecx + 0x4bc]
cmp ecx, ebp
jne 0x489d10
jmp 0x489d5b
lea edx, [esp + 0x48]
mov dword [ecx + 0x52c], ebp
call fcn.0042f110
jmp 0x489d5b
lea edx, [esp + 0x48]
push edx
xor edx, edx
mov dword [ecx + 0x340], ebp
call fcn.005273e0
jmp 0x489d5b
lea eax, [esp + 0x48]
push eax
xor edx, edx
mov dword [ecx + 0x444], ebp
call fcn.00492700
mov eax, dword [0x5cd2a0]
cmp eax, ebp
je 0x489b46
cmp esi, eax
je 0x48a2fa
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x489d68
mov ecx, ebx
call fcn.00488ab0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
mov edx, 0x3e7
lea ecx, [esp + 0x48]
call fcn.00420e60
lea edx, [esp + 0x48]
mov ecx, 0xa94
call fcn.0041f1a0
mov edi, dword [0x5f002c]
cmp edi, ebp
je 0x489df9
cmp dword [edi + 8], ebx
jne 0x489dc4
mov ecx, edi
call fcn.004f0d40
test eax, eax
je 0x489dd0
mov edi, dword [edi + 0x2500]
cmp edi, ebp
jne 0x489db4
jmp 0x489df9
lea ecx, [esp + 0x48]
lea ebp, [edi + 0x444]
push ecx
mov edx, 0x3e7
mov ecx, ebp
call fcn.00420d70
mov ecx, edi
call fcn.005690a0
mov edx, edi
mov ecx, ebp
call fcn.00568f00
xor ebp, ebp
push 2
lea edx, [esp + 0x4c]
push 0x5a75cc
push edx
call fcn.005a2a05
add esp, 0xc
test eax, eax
jne 0x489e35
lea eax, [esp + 0x4a]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x489e18
sub eax, edx
inc eax
push eax
lea eax, [esp + 0x4e]
push eax
lea ecx, [esp + 0x50]
push ecx
call fcn.00592290
add esp, 0xc
mov dl, 0x20
lea ecx, [esp + 0x48]
call fcn.005379a0
mov ecx, dword [0x5c81a0]
cmp ecx, ebp
je 0x489e62
lea ebx, [ebx]
cmp dword [ecx + 0x52c], ebx
je 0x489ea4
mov ecx, dword [ecx + 0x890]
cmp ecx, ebp
jne 0x489e50
mov ecx, dword [0x5f4f78]
cmp ecx, ebp
je 0x489e82
lea esp, [esp]
cmp dword [ecx + 0x340], ebx
je 0x489eb5
mov ecx, dword [ecx + 0x3d4]
cmp ecx, ebp
jne 0x489e70
mov ecx, dword [0x5ed44c]
cmp ecx, ebp
je 0x489edb
lea esp, [esp]
cmp dword [ecx + 0x444], ebx
je 0x489ec9
mov ecx, dword [ecx + 0x4bc]
cmp ecx, ebp
jne 0x489e90
jmp 0x489edb
lea edx, [esp + 0x48]
mov dword [ecx + 0x52c], ebp
call fcn.0042f110
jmp 0x489edb
lea edx, [esp + 0x48]
push edx
xor edx, edx
mov dword [ecx + 0x340], ebp
call fcn.005273e0
jmp 0x489edb
lea eax, [esp + 0x48]
push eax
xor edx, edx
mov dword [ecx + 0x444], ebp
call fcn.00492700
mov eax, dword [0x5cd2a0]
cmp eax, ebp
je 0x489b46
cmp esi, eax
je 0x48a2fa
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x489ee8
mov ecx, ebx
call fcn.00488ab0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
mov ecx, dword [0x5f92ec]
mov edx, dword [esi + 0x7c]
mov ebx, dword [sym.imp.WSOCK32.dll_WSAAsyncSelect]
push 0
push 0
push ecx
push edx
call ebx
mov eax, dword [esi + 0x78]
mov ebp, 2
cmp eax, ebp
jne 0x48a30e
mov eax, dword [esi + 0x6c]
cmp eax, ebp
je 0x489f45
cmp eax, 3
jne 0x48a06d
mov cl, byte [esp + 0x430]
xor edi, edi
cmp cl, 0x20
lea eax, [esp + 0x430]
jne 0x489f69
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x20
je 0x489f60
push 0x20
push eax
call fcn.005912e0
add esp, 8
test eax, eax
je 0x489f99
cmp byte [eax], 0x20
jne 0x489f89
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x20
je 0x489f80
cmp byte [eax], 0
je 0x489f99
push eax
call fcn.0059164b
add esp, 4
mov edi, eax
cmp dword [esi + 0x6c], ebp
jne 0x489fb6
cmp edi, 0x191
je 0x48a5cc
cmp edi, 0x197
je 0x48a5cc
cmp edi, 0xc8
jne 0x48a06d
mov edi, dword [0x5f002c]
test edi, edi
je 0x489fea
mov eax, dword [esi + 0x70]
nop
cmp dword [edi + 8], eax
jne 0x489fe0
mov ecx, dword [esi + 0x68]
test ecx, ecx
je 0x48a09f
mov edi, dword [edi + 0x2500]
test edi, edi
jne 0x489fd0
mov edi, dword [0x5c81a0]
test edi, edi
je 0x48a016
mov eax, dword [esi + 0x70]
jmp 0x48a000
cmp dword [edi + 0x52c], eax
je 0x48a0cd
mov edi, dword [edi + 0x890]
test edi, edi
jne 0x48a000
mov edi, dword [0x5f4f78]
test edi, edi
je 0x48a040
mov eax, dword [esi + 0x70]
cmp dword [edi + 0x340], eax
jne 0x48a036
mov ecx, dword [esi + 0x68]
test ecx, ecx
je 0x48a106
mov edi, dword [edi + 0x3d4]
test edi, edi
jne 0x48a023
mov edi, dword [0x5ed44c]
test edi, edi
je 0x48a06d
mov eax, dword [esi + 0x70]
lea ecx, [ecx]
cmp dword [edi + 0x444], eax
jne 0x48a063
mov ecx, dword [esi + 0x68]
test ecx, ecx
je 0x48a153
mov edi, dword [edi + 0x4bc]
test edi, edi
jne 0x48a050
mov eax, dword [0x5cd2a0]
mov ebx, dword [esi + 0x70]
xor ebp, ebp
cmp eax, ebp
je 0x48a5cc
nop
cmp esi, eax
je 0x48a181
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x48a080
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
mov eax, dword [esi + 0x7c]
mov dword [edi + 4], eax
mov ecx, esi
mov dword [esi + 0x7c], 0xffffffff
call fcn.004889d0
mov ecx, dword [edi + 4]
xor edx, edx
call fcn.0056a050
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov eax, dword [esi + 0x68]
test eax, eax
jne 0x48a016
mov ecx, dword [esi + 0x7c]
mov dword [edi + 0x888], ecx
mov ecx, esi
mov dword [esi + 0x7c], 0xffffffff
call fcn.004889d0
mov ecx, edi
call fcn.0042fc50
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov edx, dword [esi + 0x7c]
mov dword [edi + 0x3cc], edx
mov ecx, esi
mov dword [esi + 0x7c], 0xffffffff
call fcn.004889d0
mov eax, dword [edi + 0x378]
test eax, eax
mov ecx, edi
je 0x48a13e
call fcn.00528570
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
call fcn.00528220
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov eax, dword [esi + 0x7c]
mov dword [edi + 0x4b0], eax
mov ecx, esi
mov dword [esi + 0x7c], 0xffffffff
call fcn.004889d0
mov ecx, edi
call fcn.004930d0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov edx, 0x3e7
lea ecx, [esp + 0x48]
call fcn.00420e60
lea edx, [esp + 0x48]
mov ecx, 0xa97
call fcn.0041f1a0
mov edi, dword [0x5f002c]
cmp edi, ebp
je 0x48a1ec
cmp dword [edi + 8], ebx
jne 0x48a1b7
mov ecx, edi
call fcn.004f0d40
test eax, eax
je 0x48a1c3
mov edi, dword [edi + 0x2500]
cmp edi, ebp
jne 0x48a1a7
jmp 0x48a1ec
lea ecx, [esp + 0x48]
lea ebp, [edi + 0x444]
push ecx
mov edx, 0x3e7
mov ecx, ebp
call fcn.00420d70
mov ecx, edi
call fcn.005690a0
mov edx, edi
mov ecx, ebp
call fcn.00568f00
xor ebp, ebp
push 2
lea edx, [esp + 0x4c]
push 0x5a75cc
push edx
call fcn.005a2a05
add esp, 0xc
test eax, eax
jne 0x48a22d
lea eax, [esp + 0x4a]
lea edx, [eax + 1]
jmp 0x48a210
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x48a210
sub eax, edx
inc eax
push eax
lea eax, [esp + 0x4e]
push eax
lea ecx, [esp + 0x50]
push ecx
call fcn.00592290
add esp, 0xc
mov dl, 0x20
lea ecx, [esp + 0x48]
call fcn.005379a0
mov ecx, dword [0x5c81a0]
cmp ecx, ebp
je 0x48a254
cmp dword [ecx + 0x52c], ebx
je 0x48a294
mov ecx, dword [ecx + 0x890]
cmp ecx, ebp
jne 0x48a242
mov ecx, dword [0x5f4f78]
cmp ecx, ebp
je 0x48a272
mov edi, edi
cmp dword [ecx + 0x340], ebx
je 0x48a2a5
mov ecx, dword [ecx + 0x3d4]
cmp ecx, ebp
jne 0x48a260
mov ecx, dword [0x5ed44c]
cmp ecx, ebp
je 0x48a2cb
lea esp, [esp]
cmp dword [ecx + 0x444], ebx
je 0x48a2b9
mov ecx, dword [ecx + 0x4bc]
cmp ecx, ebp
jne 0x48a280
jmp 0x48a2cb
lea edx, [esp + 0x48]
mov dword [ecx + 0x52c], ebp
call fcn.0042f110
jmp 0x48a2cb
lea edx, [esp + 0x48]
push edx
xor edx, edx
mov dword [ecx + 0x340], ebp
call fcn.005273e0
jmp 0x48a2cb
lea eax, [esp + 0x48]
push eax
xor edx, edx
mov dword [ecx + 0x444], ebp
call fcn.00492700
mov eax, dword [0x5cd2a0]
cmp eax, ebp
je 0x489b46
cmp esi, eax
je 0x48a2fa
mov eax, dword [eax + 0x80]
cmp eax, ebp
jne 0x48a2d8
mov ecx, ebx
call fcn.00488ab0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
mov ecx, esi
call fcn.004889d0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
test eax, eax
jne 0x48a448
movzx ecx, byte [esp + 0x431]
cmp ecx, 0x5a
jl 0x48a328
cmp ecx, 0x5d
jle 0x48a32d
mov ecx, 0x5e
cmp dword [esi + 0x6c], ebp
jne 0x48a5c1
cmp ecx, 0x5a
jne 0x48a5c1
mov edi, dword [0x5f002c]
test edi, edi
je 0x48a36a
mov eax, dword [esi + 0x70]
lea esp, [esp]
cmp dword [edi + 8], eax
jne 0x48a360
mov edx, dword [esi + 0x68]
test edx, edx
je 0x48a3de
mov edi, dword [edi + 0x2500]
test edi, edi
jne 0x48a350
mov edi, dword [0x5c81a0]
test edi, edi
je 0x48a389
mov eax, dword [esi + 0x70]
cmp dword [edi + 0x52c], eax
je 0x48a3e9
mov edi, dword [edi + 0x890]
test edi, edi
jne 0x48a377
mov edi, dword [0x5f4f78]
test edi, edi
je 0x48a3af
mov eax, dword [esi + 0x70]
cmp dword [edi + 0x340], eax
jne 0x48a3a5
mov edx, dword [esi + 0x68]
test edx, edx
je 0x48a3fe
mov edi, dword [edi + 0x3d4]
test edi, edi
jne 0x48a396
mov edi, dword [0x5ed44c]
test edi, edi
je 0x48a5c1
mov eax, dword [esi + 0x70]
cmp dword [edi + 0x444], eax
jne 0x48a3cf
mov edx, dword [esi + 0x68]
test edx, edx
je 0x48a43a
mov edi, dword [edi + 0x4bc]
test edi, edi
jne 0x48a3c0
jmp 0x48a5c1
mov ecx, dword [esi + 0x7c]
mov dword [edi + 4], ecx
jmp 0x48a0a5
mov eax, dword [esi + 0x68]
test eax, eax
jne 0x48a389
mov edx, dword [esi + 0x7c]
mov dword [edi + 0x888], edx
jmp 0x48a5f4
mov eax, dword [esi + 0x7c]
mov dword [edi + 0x3cc], eax
mov ecx, esi
mov dword [esi + 0x7c], 0xffffffff
call fcn.004889d0
mov eax, dword [edi + 0x378]
test eax, eax
mov ecx, edi
je 0x48a73e
call fcn.00528570
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov ecx, dword [esi + 0x7c]
mov dword [edi + 0x4b0], ecx
jmp 0x48a8da
movzx eax, byte [esp + 0x431]
test eax, eax
mov dword [esp + 0x10], eax
jl 0x48a45d
cmp eax, 9
jle 0x48a465
mov dword [esp + 0x10], 9
mov eax, dword [esi + 0x6c]
add eax, 0xfffffffe
cmp eax, 3
ja case.default.0x48a474
jmp dword [eax*4 + 0x48a900]
mov eax, dword [esp + 0x10]
sub eax, 0
je 0x48a4c3
sub eax, ebp
jne case.default.0x48a474
mov edx, 3
mov ecx, esi
call fcn.004891c0
test eax, eax
je 0x48a5cc
pop edi
mov dword [esi + 0x6c], 3
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov eax, dword [esp + 0x10]
test eax, eax
jne case.default.0x48a474
mov edx, 4
mov ecx, esi
call fcn.004891c0
test eax, eax
je 0x48a5cc
pop edi
mov dword [esi + 0x6c], 4
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov eax, dword [esp + 0x10]
test eax, eax
jne case.default.0x48a474
mov edi, dword [0x5f002c]
test edi, edi
je 0x48a521
mov eax, dword [esi + 0x70]
cmp dword [edi + 8], eax
jne 0x48a517
mov ecx, dword [esi + 0x68]
test ecx, ecx
je 0x48a5d9
mov edi, dword [edi + 0x2500]
test edi, edi
jne 0x48a507
mov edi, dword [0x5c81a0]
test edi, edi
mov dl, byte [esp + 0x433]
je 0x48a556
mov eax, dword [esi + 0x70]
jmp 0x48a540
cmp dword [edi + 0x52c], eax
je 0x48a5e4
mov edi, dword [edi + 0x890]
test edi, edi
jne 0x48a540
mov edi, dword [0x5f4f78]
test edi, edi
je 0x48a580
mov eax, dword [esi + 0x70]
cmp dword [edi + 0x340], eax
jne 0x48a576
mov ecx, dword [esi + 0x68]
test ecx, ecx
je 0x48a706
mov edi, dword [edi + 0x3d4]
test edi, edi
jne 0x48a563
mov edi, dword [0x5ed44c]
test edi, edi
je case.default.0x48a474
mov ecx, dword [esi + 0x70]
lea ecx, [ecx]
cmp dword [edi + 0x444], ecx
jne 0x48a5b0
mov eax, dword [esi + 0x68]
test eax, eax
je 0x48a753
cmp eax, 1
jne 0x48a5b0
cmp dl, al
je 0x48a761
mov edi, dword [edi + 0x4bc]
test edi, edi
jne 0x48a590
mov ecx, dword [esp + 0x10]
add ecx, 0x64
mov edx, dword [esi + 0x70]
push ecx
mov ecx, esi
call fcn.00488af0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x7d8
ret
mov edx, dword [esi + 0x7c]
mov dword [edi + 4], edx
jmp 0x48a0a5
mov eax, dword [esi + 0x68]
test eax, eax
jne 0x48a619
mov eax, dword [esi + 0x7c]
mov dword [edi + 0x888], eax
mov ecx, esi
mov dword [esi + 0x7c], 0xffffffff
call fcn.004889d0
mov ecx, edi
call fcn.0042fc50
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
cmp eax, 1
jne 0x48a556
cmp dl, al
jne 0x48a556
mov ebp, dword [sym.imp.USER32.dll_wsprintfA]
mov dword [edi + 0x878], 0
mov dword [esi + 0x6c], 5
movzx ecx, byte [esp + 0x437]
movzx edx, byte [esp + 0x436]
movzx eax, byte [esp + 0x435]
push ecx
movzx ecx, byte [esp + 0x438]
push edx
push eax
push ecx
lea edx, [esp + 0x24]
push 0x5a5754
push edx
call ebp
movzx ax, byte [esp + 0x450]
movzx cx, byte [esp + 0x451]
add esp, 0x18
push 0x21
push 0x8032
shl eax, 8
add eax, ecx
mov word [edi + 0x51c], ax
mov edx, dword [0x5f92ec]
mov eax, dword [esi + 0x7c]
push edx
push eax
call ebx
mov ecx, dword [edi + 0x530]
movzx edx, word [edi + 0x51c]
push ecx
push edx
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.WSOCK32.dll_inet_addr]
push eax
call dword [sym.imp.WSOCK32.dll_htonl]
push eax
lea ecx, [edi + 0x3f0]
push ecx
lea edx, [esp + 0x440]
push 0x5a5c44
push edx
call ebp
mov eax, dword [edi + 0x88c]
add esp, 0x18
push eax
xor edx, edx
lea ecx, [esp + 0x434]
call fcn.00569cc0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov ecx, dword [esi + 0x7c]
mov dword [edi + 0x3cc], ecx
mov ecx, esi
mov dword [esi + 0x7c], 0xffffffff
call fcn.004889d0
mov eax, dword [edi + 0x378]
test eax, eax
mov ecx, edi
je 0x48a73e
call fcn.00528570
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
call fcn.00528220
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov edx, dword [esi + 0x7c]
mov dword [edi + 0x4b0], edx
jmp 0x48a8da
mov dword [edi + 0x4ac], 0
mov dword [esi + 0x6c], 5
movzx eax, byte [esp + 0x437]
movzx ecx, byte [esp + 0x436]
movzx edx, byte [esp + 0x435]
push eax
movzx eax, byte [esp + 0x438]
push ecx
push edx
push eax
lea ecx, [esp + 0x24]
push 0x5a5754
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
movzx dx, byte [esp + 0x450]
movzx ax, byte [esp + 0x451]
add esp, 0x18
push 0x21
push 0x8032
shl edx, 8
add edx, eax
mov word [edi + 0x454], dx
mov ecx, dword [0x5f92ec]
mov edx, dword [esi + 0x7c]
push ecx
push edx
call ebx
mov eax, dword [edi + 0x4b8]
mov ecx, dword [edi + 0x444]
mov edx, dword [edi + 0x464]
push eax
xor eax, eax
mov ax, word [edi + 0x454]
push ecx
push edx
lea ecx, [esp + 0x20]
push eax
push ecx
call dword [sym.imp.WSOCK32.dll_inet_addr]
push eax
call dword [sym.imp.WSOCK32.dll_htonl]
push eax
lea edx, [edi + 0x234]
lea ecx, [edi + 4]
call fcn.00526470
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov eax, dword [esp + 0x10]
test eax, eax
jne case.default.0x48a474
mov edi, dword [0x5c81a0]
test edi, edi
mov cl, byte [esp + 0x433]
mov edx, 1
je 0x48a86c
mov eax, dword [esi + 0x70]
cmp dword [edi + 0x52c], eax
jne 0x48a862
cmp dword [esi + 0x68], edx
jne 0x48a862
cmp cl, 1
je 0x48a8a3
mov edi, dword [edi + 0x890]
test edi, edi
jne 0x48a850
mov edi, dword [0x5ed44c]
test edi, edi
je case.default.0x48a474
mov eax, dword [esi + 0x70]
mov edx, 1
cmp dword [edi + 0x444], eax
jne 0x48a894
cmp dword [esi + 0x68], edx
jne 0x48a894
cmp cl, 1
je 0x48a8d1
mov edi, dword [edi + 0x4bc]
test edi, edi
jne 0x48a882
jmp case.default.0x48a474
mov edx, dword [esi + 0x7c]
mov dword [edi + 0x888], edx
mov ecx, esi
mov dword [esi + 0x7c], 0xffffffff
call fcn.004889d0
mov ecx, edi
call fcn.0042f5f0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret
mov eax, dword [esi + 0x7c]
mov dword [edi + 0x4b0], eax
mov ecx, esi
mov dword [esi + 0x7c], 0xffffffff
call fcn.004889d0
mov ecx, edi
call fcn.004930d0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x7d8
ret