Function at 0x40a813
Capabilities:
Connect socket

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
mov eax, 0x13c60
call fcn.00401589
mov dword [esp + 0x1c], ecx
jb 0x409d1a
jae 0x409d1a
call 0x1b0a08f
jno 0x409d1f
jo 0x409d1f
call 0xd7c99fae
mov eax, dword [edx]
mov edi, edx
movzx ebx, word [edx + 0x20]
lea ecx, [esp + 0x48]
mov dword [esp], eax
mov eax, dword [edx + 4]
mov dword [esp + 4], eax
jnp 0x409d3a
jp 0x409d3a
call 0x1bea0bd
jg 0x409d3f
jle 0x409d3f
call 0x1b9a0bb
js 0x409d44
jns 0x409d44
call 0x1b8a0c1
jns 0x409d49
js 0x409d49
call 0x1b1a0bd
jo 0x409d4e
jno 0x409d4e
call 0x1bba0cc
jp 0x409d53
jnp 0x409d53
call 0x1bfa0d5
jle 0x409d58
jg 0x409d58
call 0x1bba0d6
jp 0x409d5d
jnp 0x409d5d
call 0x8b58dfec
push edx
sbb al, 0x89
push ecx
add al, 0x89
add dword [ebx - 0x7cfff39f], eax
popal
or byte [eax], al
mov eax, dword [edx + 0x18]
mov edx, dword [edx + 0x1c]
mov dword [ecx + 4], edx
mov dword [ecx], eax
and dword [ecx + 0xc], 0
and dword [ecx + 8], 0
jae 0x409d75
jb 0x409d75
call 0x79451304
add edi, dword [eax + 1]
mov esi, dword [ebp + 4]
jns 0x409d7d
js 0x409d7d
call 0x6a458a04
and byte [edx + 0x6a], bl
add ch, al
fcomp qword [ebx]
add dword [eax], eax
sub esp, 4
push 0x20
pop edx
push 2
call fcn.0041b966
pop ecx
pop edx
test eax, eax
je 0x409dfd
mov dword [esp + 8], esi
jle 0x409d99
jg 0x409d99
call 0x4450ad8f
and al, 0x48
movsd xmm0, qword [esp + 0x48]
movsd xmm1, qword [esp + 0x50]
lea edx, [esp + 0x90]
mov esi, eax
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
and dword [eax + 0x18], 0
and dword [eax + 0x1c], 0
movsd xmm0, qword [edi + 0x18]
movsd qword [edx], xmm0
jl 0x409dcd
jge 0x409dcd
call 0x14651a5a
mov dword [esp + 0x14], edi
lea edi, [esp + 0x6c]
mov ecx, edi
push dword [esp + 4]
push dword [esp + 4]
call fcn.00418109
pop eax
pop ecx
movzx edi, word [edi + 8]
test di, di
je 0x409e16
mov ecx, esi
call 0x409df7
add al, ch
jmp 0x409f44
lea ecx, [esp + 0x48]
call 0x409e07
add al, ch
call fcn.0041b918
mov di, 2
jmp 0x409f49
mov dword [esp + 4], esi
jnp 0x409e1f
jp 0x409e1f
call 0x6c64e2ae
mov eax, dword [esp + 0x6c]
mov cx, 0x64
xor edi, edi
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x10], eax
jno 0x409e39
jo 0x409e39
call 0x1b9a1b5
js 0x409e3e
jns 0x409e3e
call 0x1b9a1ba
js 0x409e43
jns 0x409e43
call 0x346502ca
add byte [ebx + 0x302464], al
and dword [esp + 0x34], 0
and dword [esp + 0x30], 0
mov eax, ebx
jge 0x409e54
jl 0x409e54
call 0x653921be
cmp ax, 0x64
jle 0x409e5d
jg 0x409e5d
call 0xd271add3
jb 0x409e6e
xor edx, edx
jo 0x409e66
jno 0x409e66
call 0x664365ed
div ecx
add edi, 2
div cx
jmp 0x409e54
cmp ax, 0xa
lea esi, [esp + 0x24]
lea eax, [esp + 0x30]
jg 0x409e7f
jle 0x409e7f
call 0x1bda1ff
jl 0x409e84
jge 0x409e84
call 0x89417e0b
int1
sbb edi, 0
mov ecx, esi
mov dword [esi], eax
jae 0x409e90
jb 0x409e90
call 0x89436617
cli
add edi, 2
mov edx, edi
call fcn.0041bacb
xor edx, edx
lea edi, [esp + 0x30]
lea ecx, [esp + 0x24]
jp 0x409ea9
jnp 0x409ea9
call 0x7d7f27ef
add edi, dword [ecx + eax - 0x18]
inc edx
mov dword [esi], edi
jge 0x409eb1
jl 0x409eb1
call 0x15cb49d
add byte [eax + 3], dh
call fcn.0041bacb
jo 0x409ebb
jno 0x409ebb
call 0x6644e64a
mov edi, 0x3750002
mov eax, dword [edi + 4]
mov di, 2
jne 0x409ec7
je 0x409ec7
call 0x3eb65f50
test eax, eax
jne 0x409f09
mov eax, dword [esp + 0x30]
call 0x409ed5
add al, ch
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x98]
lea esi, [esp + 0x78]
movsd xmm0, qword [ecx + 0x18]
mov ecx, esi
movsd qword [edx], xmm0
jns 0x409ef5
js 0x409ef5
call 0xf35f8749
invalid
push eax
call fcn.00409219
pop eax
movzx edi, word [esi + 8]
test di, di
je 0x409f8d
call 0x409f0f
add al, ch
jns 0x409f15
js 0x409f15
call 0x1464e3a4
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
mov ecx, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
inc esi
mov eax, dword [eax + 8]
jp 0x409f2c
jnp 0x409f2c
call 0xff64b3bb
je 0x409f56
mov edx, dword [esp]
push dword [esp + 8]
push 0
or byte [edx], ch
push esi
call eax
add esp, 0xc
jl 0x409f40
jge 0x409f40
call 0x464ebcf
mov ecx, dword [esp + 4]
call fcn.0041ba9c
jnp 0x409f4e
jp 0x409f4e
call 0x1b2a2c5
jae 0x409f53
jb 0x409f53
call 0x1bea2d6
jg 0x409f58
jle 0x409f58
add eax, ebp
call 0x1b2a2cf
jae 0x409f5d
jb 0x409f5d
call 0x1b8a2da
jns 0x409f62
js 0x409f62
call 0x1baa2e1
jnp 0x409f67
jp 0x409f67
call 0x1b7a2e1
jbe 0x409f6c
ja 0x409f6c
call 0x1c64e3fb
mov eax, dword [esp + 0x1c]
jb 0x409f75
jae 0x409f75
call 0x1bea2f8
jg 0x409f7a
jle 0x409f7a
call 0x8b928e4
jg 0x409f92
jle 0x409f92
call 0x7864e421
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
je 0x409f9f
jne 0x409f9f
call 0x1b1a313
jo 0x409fa4
jno 0x409fa4
call 0x24651c35
lea edi, [esp + 0x24]
mov dword [esp + 0x44], edi
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
and dword [esp + 0x2c], 0
jbe 0x409fbe
ja 0x409fbe
call 0x1b4a337
jne 0x409fc3
je 0x409fc3
call 0x669eaf31
mov ecx, 0x83660064
sti
jns 0x409fd3
push 0xf
pop esi
mov cx, 0x64
cmp bx, 0x64
jns 0x409fd3
js 0x409fd3
call 0xd8c9c349
jb 0x409ff8
mov eax, ebx
xor edx, edx
jg 0x409fde
jle 0x409fde
call 0x10329748
mov bh, 0xd2
div cx
movzx edx, dx
mov ebx, eax
movzx edx, word [edx + edx + 0x4037e0]
mov word [esp + esi + 0x30], dx
add esi, 0xfffffffe
jmp 0x409fca
cmp bx, 9
jnp 0x40a001
jp 0x40a001
call 0xc3c0af7c
xor byte [ecx + 3], bh
ja 0x40a012
add bl, 0x30
jns 0x40a00b
js 0x40a00b
call 0x3174fc97
mov byte [esp + esi + 0x31], bl
inc esi
jmp 0x40a027
movzx eax, bx
jo 0x40a01a
jno 0x40a01a
call 0xc5572d
loopne 0x40a057
movzx eax, word [eax + eax + 0x4037e0]
mov word [esp + esi + 0x30], ax
inc eax
add byte [esi - 0x77], ah
inc esp
xor al, 0x30
jg 0x40a02c
jle 0x40a02c
call 0x3074ecbd
lea ecx, [esp + esi + 0x30]
push 0x11
pop edx
lea eax, [esp + 0x44]
sub edx, esi
je 0x40a03e
jne 0x40a03e
call 0x3f1d0892
inc eax
add al, ch
push edi
adc eax, dword [ecx]
add byte [ecx + 0x5a], bl
push eax
push 0x403edc
call 0x41b3a0
pop ecx
pop edx
test ax, ax
jg 0x40a053
jle 0x40a053
call 0x228a9cb
je 0x40a05e
call 0x40a05b
add al, ch
jmp 0x40a08c
add byte [eax], al
add byte [eax], al
call 0x8ccdcf4b
and al, 0x84
add byte [eax], al
add byte [eax + 3], bh
lea ecx, [esp + 0x84]
js 0x40a06a
jns 0x40a06a
call 0x407f7928
add byte [ecx + 0x70037139], cl
add eax, ebp
mov edx, 0x403ed8
mov dword [ecx], edi
jno 0x40a076
jo 0x40a076
call 0x9028a1e4
inc dword [eax]
add byte [ecx + 0x66], bl
test eax, eax
push 1
call fcn.0041a00c
pop ecx
test ax, ax
jae 0x40a086
jb 0x40a086
call 0x16d2499
add byte [eax], al
je 0x40a1b8
lea esi, [esp + 0x20]
call 0x40a096
add al, ch
jo 0x40a09c
jno 0x40a09c
call 0x1b9a418
js 0x40a0a1
jns 0x40a0a1
call 0x1bfa423
jle 0x40a0a6
jg 0x40a0a6
call 0x1bba424
jp 0x40a0ab
jnp 0x40a0ab
call 0x26c47be0
add byte [eax + 3], dh
xor ebx, ebx
and dword [esi], 0
jo 0x40a0b5
jno 0x40a0b5
call 0x3da1090f
inc eax
add bh, bh
je 0x40a0e2
push esi
push 0x403d60
push dword [esp + 0x14]
push dword [esp + 0xc]
call 0x436976
cmp ax, 0x276d
jne 0x40a143
adc al, 0xff
je 0x40a0e6
or al, 0xe8
scasb al, byte es:[edi]
enter 2, 0x66
cmp eax, 0x7575276d
test bl, 1
ja 0x40a0d6
jbe 0x40a0d6
call 0x41e25e9
add byte [eax], al
jne 0x40a4b9
jns 0x40a0e1
js 0x40a0e1
call 0x3733cd
call 0x409778
xchg edx, eax
idiv bh
push dword [ebx - 0x3f7a99ff]
mov bl, 1
test ax, ax
je 0x40a0b0
jae 0x40a0f2
jb 0x40a0f2
call 0x14651581
mov esi, dword [esp + 0x14]
mov edi, eax
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov eax, dword [eax + 8]
js 0x40a106
jns 0x40a106
call 0x864fd95
mov ebx, dword [esp + 8]
mov edx, dword [esp + 0xc]
push ebx
push 0
push dword [esp + 0x20]
call eax
add esp, 0xc
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov esi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jo 0x40a12c
jno 0x40a12c
call 0x4664b5bb
mov edx, dword [esp]
inc esi
push ebx
push 0
push esi
call eax
add esp, 0xc
js 0x40a13e
jns 0x40a13e
call 0x3e9f2b
dec dword [edi]
mov bh, 0xc0
jmp 0x409f40
movzx eax, ax
cmp eax, 0x2afb
je 0x40a1d2
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
cmp eax, 8
je 0x40a233
cmp eax, 0x273f
je 0x40a280
cmp eax, 0x277d
je 0x40a2da
cmp eax, 0x2af9
je 0x40a334
cmp eax, 0x2afa
je 0x40a390
test eax, eax
jne 0x40a3ea
xor edi, edi
jno 0x40a19d
jo 0x40a19d
call 0xf6c5d82c
mov esi, dword [esi]
test esi, esi
je 0x40a437
jl 0x40a1ac
jge 0x40a1ac
call 0x1592033
cmp dword [esi + 0x18], 1
sbb edi, 0xffffffff
add esi, 0x1c
jmp 0x40a198
je 0x40a1bd
jne 0x40a1bd
call 0x2464e64c
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
mov dword [esp + 0x18], ecx
jmp 0x40a08c
js 0x40a1d7
jns 0x40a1d7
call 0x14651666
mov esi, dword [esp + 0x14]
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov eax, dword [eax + 8]
jno 0x40a1e9
jo 0x40a1e9
call 0x8651e78
mov edi, dword [esp + 8]
mov edx, dword [esp + 0xc]
push edi
push 0
push dword [esp + 0x20]
call eax
add esp, 0xc
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov esi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jne 0x40a20f
je 0x40a20f
call 0x4664b69e
mov edx, dword [esp]
inc esi
push edi
push 0
push esi
call eax
add esp, 0xc
jg 0x40a221
jle 0x40a221
call 0x464eeb0
mov ecx, dword [esp + 4]
call fcn.0041ba9c
mov di, 0x35
jmp 0x409f49
jg 0x40a238
jle 0x40a238
call 0x8b5ce9c7
dec edi
sbb byte [ebx + 0x3740840], cl
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov eax, dword [eax + 8]
je 0x40a246
jne 0x40a246
call 0x86516d5
mov esi, dword [esp + 8]
mov edx, dword [esp + 0xc]
push esi
push 0
push ebx
call eax
add esp, 0xc
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov edi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jo 0x40a269
jno 0x40a269
call 0x4764b6f8
mov edx, dword [esp]
inc edi
push esi
push 0
push edi
call eax
add esp, 0xc
jo 0x40a27b
jno 0x40a27b
call fcn.0042ce68
add byte [esi + 3], bh
jmp 0x40a4ab
jle 0x40a285
jg 0x40a285
call 0x8b5cea14
dec edi
sbb byte [ebx + 0x3770840], cl
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov eax, dword [eax + 8]
ja 0x40a293
jbe 0x40a293
call 0x8651722
mov esi, dword [esp + 8]
mov edx, dword [esp + 0xc]
push esi
push 0
push ebx
call eax
add esp, 0xc
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov edi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jge 0x40a2b6
jl 0x40a2b6
call 0x4764b745
mov edx, dword [esp]
inc edi
push esi
push 0
push edi
call eax
add esp, 0xc
jg 0x40a2c8
jle 0x40a2c8
call 0x464ef57
mov ecx, dword [esp + 4]
call fcn.0041ba9c
mov di, 0x26
jmp 0x409f49
jb 0x40a2df
jae 0x40a2df
call 0x8b5cea6e
dec edi
sbb byte [ebx + 0x3700840], cl
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov eax, dword [eax + 8]
jo 0x40a2ed
jno 0x40a2ed
call 0x865177c
mov esi, dword [esp + 8]
mov edx, dword [esp + 0xc]
push esi
push 0
push ebx
call eax
add esp, 0xc
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov edi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jge 0x40a310
jl 0x40a310
call 0x4764b79f
mov edx, dword [esp]
inc edi
push esi
push 0
push edi
call eax
add esp, 0xc
jne 0x40a322
je 0x40a322
call 0x464efb1
mov ecx, dword [esp + 4]
call fcn.0041ba9c
mov di, 0x37
jmp 0x409f49
jae 0x40a339
jb 0x40a339
call 0x8b5ceac8
dec edi
sbb byte [ebx + 0x1e80840], cl
add byte [eax], al
add byte [eax], al
call 0x86517d8
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov eax, dword [eax + 8]
call 0x40a348
add al, ch
mov esi, dword [esp + 8]
mov edx, dword [esp + 0xc]
push esi
push 0
push ebx
call eax
add esp, 0xc
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov edi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jns 0x40a36c
js 0x40a36c
call 0x4764b7fb
mov edx, dword [esp]
inc edi
push esi
push 0
push edi
call eax
add esp, 0xc
jle 0x40a37e
jg 0x40a37e
call 0x464f00d
mov ecx, dword [esp + 4]
call fcn.0041ba9c
mov di, 0x36
jmp 0x409f49
js 0x40a395
jns 0x40a395
call 0x8b5ceb24
dec edi
sbb byte [ebx + 0x37a0840], cl
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov eax, dword [eax + 8]
jp 0x40a3a3
jnp 0x40a3a3
call 0x8651832
mov esi, dword [esp + 8]
mov edx, dword [esp + 0xc]
push esi
push 0
push ebx
call eax
add esp, 0xc
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov edi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jb 0x40a3c6
jae 0x40a3c6
call 0x4764b855
mov edx, dword [esp]
inc edi
push esi
push 0
push edi
call eax
add esp, 0xc
jg 0x40a3d8
jle 0x40a3d8
call 0x464f067
mov ecx, dword [esp + 4]
call fcn.0041ba9c
mov di, 0x34
jmp 0x409f49
ja 0x40a3ef
jbe 0x40a3ef
call 0x8b5ceb7e
dec edi
sbb byte [ebx + 0x3750840], cl
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov eax, dword [eax + 8]
jne 0x40a3fd
je 0x40a3fd
call 0x865188c
mov esi, dword [esp + 8]
mov edx, dword [esp + 0xc]
push esi
push 0
push ebx
call eax
add esp, 0xc
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov edi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jno 0x40a420
jo 0x40a420
call 0x4764b8af
mov edx, dword [esp]
inc edi
push esi
push 0
push edi
call eax
add esp, 0xc
jg 0x40a432
jle 0x40a432
call fcn.0041761f
add byte [ebp + 3], dh
jmp 0x40a508
jne 0x40a43c
je 0x40a43c
call 0x1b8a7b9
jns 0x40a441
js 0x40a441
call 0x8999c0af
clc
push 0x1c
pop ecx
mov eax, edi
mul ecx
jno 0x40a51a
jp 0x40a453
jnp 0x40a453
call 0x2064e8e2
mov eax, dword [esp + 0x20]
jno 0x40a45c
jo 0x40a45c
call 0xc54f8cb0
add al, byte [eax]
push eax
call 0x436970
mov esi, dword [esp + 0x14]
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov eax, dword [eax + 8]
jno 0x40a474
jo 0x40a474
call 0x8652103
mov edi, dword [esp + 8]
mov edx, dword [esp + 0xc]
push edi
push 0
push ebx
call eax
add esp, 0xc
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov esi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jb 0x40a497
jae 0x40a497
call 0x4664b926
mov edx, dword [esp]
inc esi
push edi
push 0
push esi
call eax
add esp, 0xc
call 0x40a4aa
add al, ch
mov ecx, dword [esp + 4]
call fcn.0041ba9c
jmp 0x409e0d
jo 0x40a4be
jno 0x40a4be
call 0x1465194d
mov esi, dword [esp + 0x14]
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov eax, dword [eax + 8]
js 0x40a4d0
jns 0x40a4d0
call 0x865215f
mov edi, dword [esp + 8]
mov edx, dword [esp + 0xc]
push edi
push 0
push dword [esp + 0x20]
call eax
add esp, 0xc
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov esi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jae 0x40a4f6
jb 0x40a4f6
call 0x4664b985
mov edx, dword [esp]
inc esi
push edi
push 0
push esi
call eax
add esp, 0xc
js 0x40a508
jns 0x40a508
call 0x464f197
mov ecx, dword [esp + 4]
call fcn.0041ba9c
mov di, 0xe
jmp 0x409f49
test eax, eax
jae 0x40a521
jb 0x40a521
call 0x3b0c599
je 0x40a543
jo 0x40a528
jno 0x40a528
call 0x8b4591af
dec esp
and al, 8
sub esp, 4
mov ecx, dword [esp + 8]
mov edx, eax
push 2
call fcn.0041b966
pop ecx
pop edx
test eax, eax
jne 0x40a546
jmp 0x40a44e
push 0xfffffffffffffffc
pop eax
je 0x40a54b
jne 0x40a54b
call 0x464f9da
mov edx, dword [esp + 4]
xor ebx, ebx
lea esi, [esp + 0x20]
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], edi
mov edi, dword [esp + 0x14]
ja 0x40a564
jbe 0x40a564
call 0xf6c5dbf3
mov esi, dword [esi]
test esi, esi
je 0x40a692
jns 0x40a573
js 0x40a573
call 0x8558f402
leave
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x40a685
imul eax, ebx, 0x1c
ja 0x40a586
jbe 0x40a586
call 0x6650e78d
cmp dword [ecx], 2
add eax, dword [edx + 0x10]
cmp word [ecx], 2
jne 0x40a596
jb 0x40a594
jae 0x40a594
call 0x3bec783
jmp 0x40a5b7
jle 0x40a59b
jg 0x40a59b
call 0x8958f72a
xchg esp, eax
and al, 0xc0
add eax, 0x548b0000
and al, 4
mov edx, dword [ecx + 0x18]
mov dword [esp + 0x5c0], edx
mov edx, dword [esp + 4]
movsd xmm0, qword [ecx + 0x10]
movsd qword [esp + 0x5b8], xmm0
movsd xmm0, qword [ecx]
movsd xmm1, qword [ecx + 8]
movsd qword [esp + 0x5b0], xmm1
movsd qword [esp + 0x5a8], xmm0
je 0x40a5d7
jne 0x40a5d7
call 0xc0653266
add eax, 0x48890000
sbb dl, dh
movups xmm0, xmmword [esp + 0x5b8]
mov ecx, dword [esp + 0x5c0]
mov dword [eax + 0x18], ecx
movsd xmm0, qword [esp + 0x5b8]
movsd qword [eax + 0x10], xmm0
movsd xmm0, qword [esp + 0x5a8]
movsd xmm1, qword [esp + 0x5b0]
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
mov eax, dword [esi + 0x14]
test eax, eax
je 0x40a67f
jp 0x40a616
jnp 0x40a616
call 0x59209d
cmp dword [edx + 0x18], 0
jne 0x40a67f
xor edi, edi
mov ecx, 0x40377c
jge 0x40a628
jl 0x40a628
call 0x5864fab5
mov dword [esp + 0x58], edx
dec edi
mov dword [esp + 0x5c], ecx
jno 0x40a636
jo 0x40a636
call 0x17922ba
add byte [ebp - 0xe8afe81], cl
cmp byte [eax + edi + 1], 0
lea edi, [edi + 1]
jne 0x40a631
jle 0x40a645
jg 0x40a645
call 0x6064f2d6
lea ecx, [esp + 0x60]
lea edx, [esp + 0x58]
push edi
push eax
call fcn.0040958c
pop eax
pop ecx
movzx edi, word [esp + 0x68]
test di, di
jne 0x40a932
jae 0x40a669
jb 0x40a669
call 0x6064eaf8
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 4]
mov edi, dword [esp + 0x14]
mov dword [edx + 0x18], eax
mov dword [edx + 0x1c], ecx
inc ebx
jns 0x40a685
js 0x40a685
call 0x1baaa04
jnp 0x40a68a
jp 0x40a68a
call 0xe95d6d11
int 0xfe
invalid
add esi, 0x1c
jmp 0x40a55f
jbe 0x40a697
ja 0x40a697
call 0x2064eb26
mov eax, dword [esp + 0x20]
jb 0x40a6a0
jae 0x40a6a0
call 0xc30b8ef4
add al, byte [eax]
push eax
call 0x436970
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov eax, dword [eax + 8]
call 0x40a6b5
add al, ch
mov esi, dword [esp + 8]
mov edx, dword [esp + 0xc]
push esi
push 0
push dword [esp + 0x20]
call eax
add esp, 0xc
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x18]
mov edi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jl 0x40a6dc
jge 0x40a6dc
call 0x4764bb6b
mov edx, dword [esp]
inc edi
push esi
push 0
push edi
call eax
mov ecx, dword [esp + 0x10]
add esp, 0xc
jb 0x40a6f2
jae 0x40a6f2
call 0x1b0aa67
jno 0x40a6f7
jo 0x40a6f7
call 0x1b5aa6f
je 0x40a6fc
jne 0x40a6fc
call 0x1b8aa79
jns 0x40a701
js 0x40a701
call 0x1b5aa79
je 0x40a706
jne 0x40a706
call 0x1b1aa7a
jo 0x40a70b
jno 0x40a70b
call 0x1b0aa80
jno 0x40a710
jo 0x40a710
call 0x8554e89f
ror byte [edi], 0x84
add dword [eax], eax
add byte [ebx - 0x9ceefaf], cl
mov eax, dword [ecx + 0x14]
test eax, eax
je 0x40a90d
mov edx, dword [ecx + 0x10]
xor esi, esi
jl 0x40a725
jge 0x40a725
call 0xc64ebb2
mov dword [esp + 0xc], eax
mov dword [esp + 0x18], edx
cmp esi, eax
jo 0x40a734
jno 0x40a734
call 0x2cc2b47
add byte [eax], al
je 0x40a9c5
imul eax, esi, 0x1c
ja 0x40a742
jbe 0x40a742
call 0x8651bcf
mov dword [esp + 8], esi
xor ebx, ebx
movzx esi, word [edx + eax]
jbe 0x40a751
ja 0x40a751
call 0x28d5e64
sbb ah, byte [esi - 0x77]
mov word [eax + edi*4], fs
add byte [eax], al
add dl, dh
movups xmm0, xmmword [edx + eax + 0x12]
movzx ecx, word [edx + eax + 0x1a]
mov word [esp + 0xb8], cx
movsd xmm0, qword [edx + eax + 0x12]
movsd qword [esp + 0xb0], xmm0
movsd xmm0, qword [edx + eax + 2]
movsd xmm1, qword [edx + eax + 0xa]
movzx eax, si
movsd qword [esp + 0xa8], xmm1
movsd qword [esp + 0xa0], xmm0
jae 0x40a793
jb 0x40a793
call 0x24b530fd
adc byte [ecx + 0x37e2404], cl
mov word [esp + 0x10], si
mov dword [esp], eax
jle 0x40a7a0
jg 0x40a7a0
call 0xaaa80e
push 0
push 0
push 0
push 6
push 1
push dword [esp + 0x14]
call sub.WS2_32.dll_WSASocketW
cmp eax, 0xffffffff
jne 0x40a7f2
jb 0x40a7bd
jae 0x40a7bd
call 0x3024aa9
add byte [esi + 0x3d], ah
insd dword es:[edi], dx
daa
call 0x436964
cmp ax, 0x276d
jne 0x40a8cc
test bl, 1
js 0x40a7d4
jns 0x40a7d4
call 0x1872ce7
add byte [eax], al
jne 0x40a920
js 0x40a7df
jns 0x40a7df
call 0x303ccb
push dword [ebx - 0x3f7a99ff]
call 0x409778
mov bl, 1
test ax, ax
je 0x40a79b
mov edi, eax
jmp 0x40a8a7
jo 0x40a7f7
jno 0x40a7f7
call 0x24955f0a
adc byte [ecx + 0x248c8dc6], cl
stosb byte es:[edi], al
add eax, 0x89660000
xchg esp, eax
and al, 0xa8
add eax, 0x1e80000
add byte [eax], al
add byte [eax], al
call 0x24c55f27
mov eax, 0xf2000000
movups xmm0, xmmword [esp + 0xb0]
movzx edx, word [esp + 0x10]
mov esi, eax
lea ecx, [esp + 0x5aa]
mov word [esp + 0x5a8], dx
call 0x40a813
add al, ch
movzx eax, word [esp + 0xb8]
movsd xmm0, qword [esp + 0xb0]
movsd xmm2, qword [esp + 0xa0]
movsd xmm1, qword [esp + 0xa8]
cmp dx, 2
mov word [ecx + 0x18], ax
movsd qword [ecx + 0x10], xmm0
movsd qword [ecx + 8], xmm1
movsd qword [ecx], xmm2
push 0x1c
pop eax
push 0x10
pop ecx
cmove eax, ecx
jbe 0x40a85b
ja 0x40a85b
call 0x24c535af
lodsb al, byte [esi]
add eax, 0x56500000
push eax
lea eax, [esp + 0x5ac]
push eax
push esi
call sub.WS2_32.dll_connect
test eax, eax
je 0x40a9d8
jne 0x40a877
je 0x40a877
call 0x3019163
add byte [0xffffd8c1], al
call 0x436964
add eax, 0xffffd8c1
mov di, 0xe
cmp ax, 0x12
ja 0x40a89b
movzx eax, ax
jne 0x40a893
je 0x40a893
call 0xfd5fa6
or al, byte [ecx + 0x40]
add byte [ecx + 0x7a037bf1], cl
add eax, ebp
movzx edi, word [eax + eax + 0x40410a]
mov ecx, esi
jnp 0x40a8a2
jp 0x40a8a2
call 0x152fc8e
add byte [ebx + 0x7604244c], cl
add esi, dword [edi + 1]
call fcn.0041bafa
mov ecx, dword [esp + 4]
jbe 0x40a8b0
ja 0x40a8b0
call 0x8651d3f
mov esi, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x18]
inc esi
cmp di, 0x42
je 0x40a72d
jmp 0x40a9b6
mov ecx, dword [esp + 4]
movzx eax, ax
cmp eax, 0x2728
je 0x40a997
cmp eax, 0x273b
je 0x40a9a2
cmp eax, 0x273f
je 0x40a9a8
cmp eax, 0x2747
jne 0x40a920
jb 0x40a900
jae 0x40a900
call 0x464f58f
mov ecx, dword [esp + 4]
mov di, 0x15
jmp 0x40a9b1
jnp 0x40a912
jp 0x40a912
call 0x1522efe
add byte [esi - 0x41], ah
add cl, ch
dec esp
idiv bh
push dword [edi + 3]
call fcn.0041ba9c
mov di, 0x36
jmp 0x409f6c
ja 0x40a925
jbe 0x40a925
call 0x464f5b4
mov ecx, dword [esp + 4]
mov di, 0xe
jmp 0x40a9b6
call 0x40a938
add al, ch
mov eax, dword [esp + 0x20]
jbe 0x40a942
ja 0x40a942
call 0xc0699196
add al, byte [eax]
push eax
call 0x436970
mov esi, dword [esp + 0x14]
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov eax, dword [eax + 8]
jl 0x40a95a
jge 0x40a95a
call 0x86505e9
mov ebx, dword [esp + 8]
mov edx, dword [esp + 0xc]
push ebx
push 0
push dword [esp + 0x20]
call eax
add esp, 0xc
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x18]
mov esi, dword [esp + 0x10]
mov eax, dword [eax + 8]
jp 0x40a980
jnp 0x40a980
call 0x4664be0f
mov edx, dword [esp]
inc esi
push ebx
push 0
push esi
call eax
add esp, 0xc
jnp 0x40a992
jp 0x40a992
call 0x36537f
invalid
jmp 0x409f40
jge 0x40a99c
jl 0x40a99c
call 0x536906
mov di, 0x12
jmp 0x40a9b1
mov di, 0x28
jmp 0x40a9b1
je 0x40a9ad
jne 0x40a9ad
call 0x676917
mov di, 0x26
jo 0x40a9b6
jno 0x40a9b6
call 0x1b1ad2a
jo 0x40a9bb
jno 0x40a9bb
call 0x15186a7
add cl, ch
cmpsd dword [esi], dword es:[edi]
cmc
invalid
call fcn.0041ba9c
jmp 0x409f6c
jae 0x40a9ca
jb 0x40a9ca
call 0x15177b6
add byte [esi - 0x41], ah
inc edx
add cl, ch
xchg esp, eax
cmc
invalid
call fcn.0041ba9c
mov di, 0x42
jmp 0x409f6c
jno 0x40a9dd
jo 0x40a9dd
call 0x1b2ad54
jae 0x40a9e2
jb 0x40a9e2
call 0x464f671
mov ecx, dword [esp + 4]
call fcn.0041ba9c
jp 0x40a9f0
jnp 0x40a9f0
call 0x1464ee7f
mov eax, dword [esp + 0x14]
lea ebx, [esp + 0xaf0]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov eax, 0xd58
lea ecx, [esp + 0x5a8]
jo 0x40aa1a
jno 0x40aa1a
call 0x14395da7
mov dword [ebx + 0x13f8], esi
add byte [eax], al
jnp 0x40aa25
jp 0x40aa25
call 0x1b0ad9a
jno 0x40aa2a
jo 0x40aa2a
call 0x1bcadab
jge 0x40aa2f
jl 0x40aa2f
call 0x5041e6c0
lea edi, [ecx + eax]
push eax
push 0
push ecx
call fcn.00403060
add esp, 0xc
mov dword [ebx - 4], 0x3030301
jle 0x40aa4a
jg 0x40aa4a
call 0x1b3adc0
jb 0x40aa4f
jae 0x40aa4f
call 0x4c92bb
add byte [edx], ch
push 0xbe8
push 0
push edi
call fcn.00403060
add esp, 0xc
mov dword [ebx + 0x810], 0x406284
mov dword [ebx + 0x1244], 0x407024
and dword [ebx + 0x1070], 0
je 0x40aa7f
jne 0x40aa7f
call 0x1b8adfc
jns 0x40aa84
js 0x40aa84
call 0x1b5adfc
je 0x40aa89
jne 0x40aa89
call 0x1bdae09
jl 0x40aa8e
jge 0x40aa8e
call 0xcca904fc
pop edx
inc eax
add byte [ebx - 0x18], dl
loopne 0x40aa1e
push 0x5a
push 0x405acc
push ebx
call fcn.0040307b
add esp, 0xc
mov eax, 0x405a88
mov byte [ebx + 0x60], 0x2d
jae 0x40aaac
invalid
jb 0x40aaac
call 0x1bcae2d
jge 0x40aab1
jl 0x40aab1
call 0x1b0ae26
jno 0x40aab6
jo 0x40aab6
call 0x8492e81
add byte [eax], al
mov edi, dword [eax]
inc ebx
add byte [ebx + 3], bh
mov dword [ebx + 0x808], fcn.0043388b
jnp 0x40aac5
jp 0x40aac5
call 0x1b1ae39
jo 0x40aaca
jno 0x40aaca
call 0x8012e95
add byte [eax], al
jno 0x40ab08
mov dword [ebx + 0x7c0], 0x433671
je 0x40aad9
inc ebx
add byte [ebx + eax + 0x75], dh
add eax, ebp
jne 0x40aad9
call 0x1b2ae50
jae 0x40aade
jb 0x40aade
call 0x7fd2e6b
add byte [eax], al
mov dword [ebx + 0x7bc], eax
mov dword [ebx + 0x7c4], 0x41f412
movsd xmm0, qword [ebx + 0x7c0]
movsd qword [ebx + 0x13e8], xmm0
mov dword [ebx + 0x13f0], eax
push 0xffffffffffffffe8
pop eax
jns 0x40ab0c
add edi, dword [eax + 1]
js 0x40ab0c
call 0x5b81339b
inc eax
add byte [ecx + 0x1240048c], cl
add byte [eax], al
mov ecx, dword [eax + 0x405b40]
mov dword [esp + eax + 0x1240], ecx
mov dword [esp + eax + 0x1cf0], ecx
add eax, 4
jne 0x40ab07
lea esi, [esp + 0x5a8]
jae 0x40ab31
jb 0x40ab31
mov ecx, esi
mov dword [esi + 0xc98], edi
mov dword [esi + 0xcb4], 0x4253c9
mov dword [esi + 0xcb8], 0x426098
mov dword [esi + 0xcbc], 0x42654a
ja 0x40ab5c