Function at 0x40be79
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
mov dword [ebp - 4], 0
push 8
call fcn.004105ec
add esp, 4
mov dword [ebp - 8], eax
mov edi, eax
mov esi, 0x4b2e40
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0xc], 0
push 0x18
call fcn.004105ec
add esp, 4
mov dword [ebp - 0x10], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 6
rep stosd dword es:[edi], eax
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
push 0x1c
call fcn.004105ec
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 7
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x109
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b33a6
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x101
rep stosb byte es:[edi], al
add ebx, 4
push ebx
push 0x89
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b33ae
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x81
rep stosb byte es:[edi], al
add ebx, 4
push ebx
push 0x89
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b33ae
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x81
rep stosb byte es:[edi], al
add ebx, 4
push ebx
push 0x109
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b33a6
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x101
rep stosb byte es:[edi], al
add ebx, 4
push ebx
push 0x109
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b33a6
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x101
rep stosb byte es:[edi], al
add ebx, 4
push ebx
push 0x18
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b339e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 4
rep stosd dword es:[edi], eax
push 0x88
call fcn.004105ec
add esp, 4
mov dword [ebp - 0x24], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x22
rep stosd dword es:[edi], eax
add ebx, 0x10
push ebx
push 0x10
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b3396
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x8c
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b338e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x21
rep stosd dword es:[edi], eax
add ebx, 8
push ebx
push 0x10
call fcn.004105ec
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.004105ec
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.004105ec
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.004105ec
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.004105ec
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 0x10
push ebx
push 0x10c
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b3386
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x41
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x10c
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b3386
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x41
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x10c
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b3386
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x41
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x18
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b339e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 4
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x8c
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b338e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x21
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x28
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b33f6
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 8
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0xd0
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b33fe
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x32
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0xd0
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b33fe
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x32
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0xd4
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b3406
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x33
rep stosd dword es:[edi], eax
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
call fcn.0040e5c9
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x40c2f1
mov eax, 0
jmp 0x40e384
mov dword [ebp - 0x3c], 1
mov eax, dword [ebp - 4]
cmp eax, 0
jge 0x40c30d
push 0xa
call fcn.004105f8
add esp, 4
mov dword [ebp - 0x38], eax
lea ebx, [ebp - 0x3c]
call fcn.0040432d
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.004105ec
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x38]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 8]
call fcn.0040432d
pop edx
test ecx, ecx
je 0x40c389
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40c376
push ebx
call fcn.004105e6
add esp, 4
pop ebx
call fcn.004105e6
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40c34e
pop edx
pop edi
test edx, edx
je 0x40c3f3
mov ebx, edi
push edx
push ebx
push 0x10
call fcn.004105ec
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
add ebx, 4
push ebx
push 0x107
call fcn.004105ec
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b33d3
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0xff
rep stosb byte es:[edi], al
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x40c393
push dword [ebp - 8]
call fcn.004105e6
add esp, 4
pop eax
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 8]
call fcn.00404314
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 1
jl 0x40c595
mov ebx, dword [ebp - 8]
call fcn.0040432d
mov eax, 0
cmp eax, ecx
jl 0x40c435
push 1
call fcn.004105f8
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 8]
call fcn.0040432d
mov eax, 0
cmp eax, ecx
jl 0x40c45d
push 1
call fcn.004105f8
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], esp
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
push eax
push 0x108
call fcn.004105ec
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0xff
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, 0x1e
call fcn.004105fe
cmp dword [ebp - 0x40], esp
je 0x40c4d3
push 6
call fcn.004105f8
add esp, 4
push eax
mov ebx, dword [ebp - 0x44]
push ebx
mov edi, dword [ebp - 0x48]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40c514
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40c512
imul eax, dword [edi]
jmp 0x40c507
mov ecx, eax
cmp ecx, 0xff
jle 0x40c521
mov ecx, 0xff
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0xff
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
call fcn.00409635
call fcn.004105e6
add esp, 4
pop eax
mov ebx, dword [ebp - 0x38]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.0040432d
mov eax, 0
cmp eax, ecx
jl 0x40c569
push 1
call fcn.004105f8
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x38], ebx
fild dword [ebp - 4]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
mov ebx, dword [ebp - 0x38]
fild dword [ebx]
fstp qword [ebp - 0x48]
fmul qword [ebp - 0x48]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
call fcn.00401099
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x38], esp
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0xc]
push eax
mov ebx, dword [ebp - 8]
call fcn.0040432d
push ebx
mov dword [ebp - 0x3c], ecx
test ecx, ecx
jne 0x40c5b4
xor eax, eax
jmp 0x40c5c3
imul ecx, ecx, 0x108
push ecx
call fcn.004105ec
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
je 0x40c626
push ecx
push edi
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0xff
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
pop edi
pop ecx
dec ecx
je 0x40c626
add ebx, 4
add edi, 0x108
jmp 0x40c5d8
push 0
push 0
mov eax, 0x1f
call fcn.004105fe
cmp dword [ebp - 0x38], esp
je 0x40c64c
push 6
call fcn.004105f8
add esp, 4
push eax
mov ebx, dword [ebp - 0x40]
push ebx
mov edi, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
je 0x40c6dd
push ecx
push edi
push ebx
mov edi, dword [edi]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40c69d
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40c69b
imul eax, dword [edi]
jmp 0x40c690
mov ecx, eax
cmp ecx, 0xff
jle 0x40c6aa
mov ecx, 0xff
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0xff
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
call fcn.00409635
pop ebx
pop edi
pop ecx
dec ecx
je 0x40c6dd
add ebx, 0x108
add edi, 4
jmp 0x40c65f
call fcn.004105e6
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
je 0x40c6fd
mov eax, 0
jmp 0x40e384
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
mov dword [ebx], 0x94
mov ebx, dword [ebp - 0x10]
add ebx, 0x14
mov dword [ebp - 0x38], ebx
push 0x80000301
push 0
push 0x80
push 1
mov ebx, 0x4117a0
call fcn.004105f2
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40c74c
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov ebx, dword [ebp - 0x38]
mov dword [ebx], eax
mov dword [ebp - 0x38], esp
push dword [ebp - 0x10]
mov eax, 0x23
call fcn.004105fe
cmp dword [ebp - 0x38], esp
je 0x40c774
push 6
call fcn.004105f8
add esp, 4
push 0x80000301
push 0
push 0x105
push 1
mov ebx, 0x4117a0
call fcn.004105f2
add esp, 0x10
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40c7a9
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
push 0x80000301
push 0
push 0x105
push 1
mov ebx, 0x4117a0
call fcn.004105f2
add esp, 0x10
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40c7e2
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x10]
add ebx, 0x10
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 2
jne 0x40c817
mov ebx, dword [ebp - 0x10]
add ebx, 4
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp dword [ebx], 5
jl 0x40c817
mov eax, 1
jmp 0x40c819
xor eax, eax
test eax, eax
je 0x40c8f8
mov dword [ebp - 0x38], esp
push 0
push 0x1a
push dword [ebp - 0x14]
push 0
mov eax, 0x24
call fcn.004105fe
cmp dword [ebp - 0x38], esp
je 0x40c852
push 6
call fcn.004105f8
add esp, 4
test eax, eax
je 0x40c88a
push str.MicrosoftNetworkConnectionspbk_rasphone.pbk
push dword [ebp - 0x14]
mov ecx, 2
call fcn.004011c8
add esp, 8
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40c886
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x38], esp
push 0
push 0x23
push dword [ebp - 0x18]
push 0
mov eax, 0x24
call fcn.004105fe
cmp dword [ebp - 0x38], esp
je 0x40c8bb
push 6
call fcn.004105f8
add esp, 4
test eax, eax
je 0x40c8f3
push str.MicrosoftNetworkConnectionspbk_rasphone.pbk
push dword [ebp - 0x18]
mov ecx, 2
call fcn.004011c8
add esp, 8
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40c8ef
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
call fcn.0040e9b2
mov ebx, dword [ebp - 8]
call fcn.00404314
xor ecx, ecx
push eax
lea eax, [ebp - 0x1c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40e320
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x3c], esp
mov eax, dword [ebp - 0x20]
push eax
push 0x419
call fcn.004105ec
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x81
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x81
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x10
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, 0x25
call fcn.004105fe
cmp dword [ebp - 0x3c], esp
je 0x40c9e5
push 6
call fcn.004105f8
add esp, 4
push eax
mov ebx, dword [ebp - 0x40]
push ebx
mov edi, dword [ebp - 0x44]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40ca26
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40ca24
imul eax, dword [edi]
jmp 0x40ca19
mov ecx, eax
cmp ecx, 0x101
jle 0x40ca33
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x101
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40ca71
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40ca6f
imul eax, dword [edi]
jmp 0x40ca64
mov ecx, eax
cmp ecx, 0x81
jle 0x40ca7e
mov ecx, 0x81
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x81
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40cabc
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40caba
imul eax, dword [edi]
jmp 0x40caaf
mov ecx, eax
cmp ecx, 0x81
jle 0x40cac9
mov ecx, 0x81
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x81
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40cb07
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40cb05
imul eax, dword [edi]
jmp 0x40cafa
mov ecx, eax
cmp ecx, 0x101
jle 0x40cb14
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x101
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40cb52
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40cb50
imul eax, dword [edi]
jmp 0x40cb45
mov ecx, eax
cmp ecx, 0x101
jle 0x40cb5f
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x101
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40cb9d
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40cb9b
imul eax, dword [edi]
jmp 0x40cb90
mov ecx, eax
cmp ecx, 0x10
jle 0x40cba7
mov ecx, 0x10
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x10
call fcn.004105e6
add esp, 4
pop eax
mov ebx, dword [ebp - 0x38]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x20]
add ebx, 4
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 8]
call fcn.0040432d
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40cbe7
push 4
call fcn.004105f8
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40cbfa
push 1
call fcn.004105f8
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], esp
push 0xff
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
call fcn.0040432d
push ebx
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx]
call fcn.0040432d
push ebx
mov eax, 0x26
call fcn.004105fe
cmp dword [ebp - 0x40], esp
je 0x40cc41
push 6
call fcn.004105f8
add esp, 4
mov dword [ebp - 0x38], esp
mov eax, 1
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x3c]
push eax
mov eax, dword [ebp - 0x20]
push eax
push 0x419
call fcn.004105ec
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x81
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x81
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x10
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push 0x4b2dbc
mov eax, 0x27
call fcn.004105fe
cmp dword [ebp - 0x38], esp
je 0x40cd1a
push 6
call fcn.004105f8
add esp, 4
push eax
mov ebx, dword [ebp - 0x40]
push ebx
mov edi, dword [ebp - 0x44]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40cd5b
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40cd59
imul eax, dword [edi]
jmp 0x40cd4e
mov ecx, eax
cmp ecx, 0x101
jle 0x40cd68
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x101
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40cda6
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40cda4
imul eax, dword [edi]
jmp 0x40cd99
mov ecx, eax
cmp ecx, 0x81
jle 0x40cdb3
mov ecx, 0x81
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x81
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40cdf1
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40cdef
imul eax, dword [edi]
jmp 0x40cde4
mov ecx, eax
cmp ecx, 0x81
jle 0x40cdfe
mov ecx, 0x81
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x81
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40ce3c
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40ce3a
imul eax, dword [edi]
jmp 0x40ce2f
mov ecx, eax
cmp ecx, 0x101
jle 0x40ce49
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x101
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40ce87
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40ce85
imul eax, dword [edi]
jmp 0x40ce7a
mov ecx, eax
cmp ecx, 0x101
jle 0x40ce94
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x101
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40ced2
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40ced0
imul eax, dword [edi]
jmp 0x40cec5
mov ecx, eax
cmp ecx, 0x10
jle 0x40cedc
mov ecx, 0x10
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x10
call fcn.004105e6
add esp, 4
pop eax
mov dword [ebp - 0x38], esp
mov eax, dword [ebp - 0x24]
push eax
push 0x704
call fcn.004105ec
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x84
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x10
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x84
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x20
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0xc8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0xc8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0xcc
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, 0x28
call fcn.004105fe
cmp dword [ebp - 0x38], esp
je 0x40d194
push 6
call fcn.004105f8
add esp, 4
push eax
mov ebx, dword [ebp - 0x3c]
push ebx
mov edi, dword [ebp - 0x40]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d1f3
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d1f1
imul eax, dword [edi]
jmp 0x40d1e6
mov ecx, eax
cmp ecx, 8
jle 0x40d1fd
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d238
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d236
imul eax, dword [edi]
jmp 0x40d22b
mov ecx, eax
cmp ecx, 0x84
jle 0x40d245
mov ecx, 0x84
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x84
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d396
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d394
imul eax, dword [edi]
jmp 0x40d389
mov ecx, eax
cmp ecx, 0x104
jle 0x40d3a3
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x104
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d3e1
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d3df
imul eax, dword [edi]
jmp 0x40d3d4
mov ecx, eax
cmp ecx, 0x104
jle 0x40d3ee
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x104
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d42c
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d42a
imul eax, dword [edi]
jmp 0x40d41f
mov ecx, eax
cmp ecx, 0x104
jle 0x40d439
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x104
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d477
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d475
imul eax, dword [edi]
jmp 0x40d46a
mov ecx, eax
cmp ecx, 0x10
jle 0x40d481
mov ecx, 0x10
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x10
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d4bc
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d4ba
imul eax, dword [edi]
jmp 0x40d4af
mov ecx, eax
cmp ecx, 0x84
jle 0x40d4c9
mov ecx, 0x84
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x84
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d507
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d505
imul eax, dword [edi]
jmp 0x40d4fa
mov ecx, eax
cmp ecx, 0x20
jle 0x40d511
mov ecx, 0x20
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x20
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d54c
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d54a
imul eax, dword [edi]
jmp 0x40d53f
mov ecx, eax
cmp ecx, 0xc8
jle 0x40d559
mov ecx, 0xc8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0xc8
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d597
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d595
imul eax, dword [edi]
jmp 0x40d58a
mov ecx, eax
cmp ecx, 0xc8
jle 0x40d5a4
mov ecx, 0xc8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0xc8
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d5e2
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d5e0
imul eax, dword [edi]
jmp 0x40d5d5
mov ecx, eax
cmp ecx, 0xcc
jle 0x40d5ef
mov ecx, 0xcc
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0xcc
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.004105e6
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 0x24]
mov dword [ebp - 0x38], ebx
mov eax, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x38]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.0040432d
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40d699
push 4
call fcn.004105f8
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40d6ac
push 1
call fcn.004105f8
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x3c], esp
push dword [ebp - 0x28]
push 0x4b2dbc
lea eax, [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x24]
push eax
push 0x704
call fcn.004105ec
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x84
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x10
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x84
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x20
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0xc8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0xc8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0xcc
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx]
call fcn.0040432d
push ebx
push 0x4b2dbc
mov eax, 0x29
call fcn.004105fe
cmp dword [ebp - 0x3c], esp
je 0x40d978
push 6
call fcn.004105f8
add esp, 4
push eax
mov ebx, dword [ebp - 0x40]
push ebx
mov edi, dword [ebp - 0x44]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40d9d7
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40d9d5
imul eax, dword [edi]
jmp 0x40d9ca
mov ecx, eax
cmp ecx, 8
jle 0x40d9e1
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40da1c
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40da1a
imul eax, dword [edi]
jmp 0x40da0f
mov ecx, eax
cmp ecx, 0x84
jle 0x40da29
mov ecx, 0x84
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x84
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40db7a
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40db78
imul eax, dword [edi]
jmp 0x40db6d
mov ecx, eax
cmp ecx, 0x104
jle 0x40db87
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x104
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40dbc5
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40dbc3
imul eax, dword [edi]
jmp 0x40dbb8
mov ecx, eax
cmp ecx, 0x104
jle 0x40dbd2
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x104
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40dc10
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40dc0e
imul eax, dword [edi]
jmp 0x40dc03
mov ecx, eax
cmp ecx, 0x104
jle 0x40dc1d
mov ecx, 0x104
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x104
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40dc5b
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40dc59
imul eax, dword [edi]
jmp 0x40dc4e
mov ecx, eax
cmp ecx, 0x10
jle 0x40dc65
mov ecx, 0x10
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x10
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40dca0
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40dc9e
imul eax, dword [edi]
jmp 0x40dc93
mov ecx, eax
cmp ecx, 0x84
jle 0x40dcad
mov ecx, 0x84
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x84
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40dceb
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40dce9
imul eax, dword [edi]
jmp 0x40dcde
mov ecx, eax
cmp ecx, 0x20
jle 0x40dcf5
mov ecx, 0x20
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x20
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40dd30
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40dd2e
imul eax, dword [edi]
jmp 0x40dd23
mov ecx, eax
cmp ecx, 0xc8
jle 0x40dd3d
mov ecx, 0xc8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0xc8
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40dd7b
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40dd79
imul eax, dword [edi]
jmp 0x40dd6e
mov ecx, eax
cmp ecx, 0xc8
jle 0x40dd88
mov ecx, 0xc8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0xc8
push ebx
push edi
push 1
mov eax, 2
call fcn.004105e0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40ddc6
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40ddc4
imul eax, dword [edi]
jmp 0x40ddb9
mov ecx, eax
cmp ecx, 0xcc
jle 0x40ddd3
mov ecx, 0xcc
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0xcc
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.004105e6
add esp, 4
pop eax
mov ebx, dword [ebp - 0x10]
add ebx, 0x10
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 2
jne 0x40dec3
mov ebx, dword [ebp - 0x10]
add ebx, 4
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp dword [ebx], 5
jl 0x40dec3
push 0x4b2dbc
push dword [ebp - 0x14]
call fcn.004010c0
add esp, 8
cmp eax, 0
jne 0x40deaf
push 0x4b2dbc
push dword [ebp - 0x18]
call fcn.004010c0
add esp, 8
cmp eax, 0
jne 0x40deaf
xor eax, eax
jmp 0x40deb4
mov eax, 1
test eax, eax
je 0x40dec3
mov eax, 1
jmp 0x40dec5
xor eax, eax
test eax, eax
je 0x40e288
mov ebx, dword [ebp - 0x20]
add ebx, 4
mov dword [ebp - 0x38], ebx
push dword [ebp - 0x38]
call fcn.0040ffa8
mov dword [ebp - 0x3c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x3c]
test eax, eax
jne 0x40def4
mov eax, 0x4b2dbc
push eax
push 1
mov ebx, 0x4116f0
call fcn.004105f2
add esp, 0x10
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40df1a
push ebx
call fcn.004105e6
add esp, 4
push 0x4b32f7
push dword [ebp - 0x40]
mov ecx, 2
call fcn.00402d91
add esp, 8
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40df42
push ebx
call fcn.004105e6
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40df56
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x20]
add ebx, 4
mov dword [ebp - 0x38], ebx
push dword [ebp - 0x38]
call fcn.0040ffa8
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x3c]
push eax
call fcn.00410122
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40df8a
push ebx
call fcn.004105e6
add esp, 4
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40df9e
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x38], esp
push dword [ebp - 0x14]
push 0
push str.DialParamsUID
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x40dfbc
add eax, 8
push eax
mov eax, 0x2a
call fcn.004105fe
cmp dword [ebp - 0x38], esp
je 0x40dfd9
push 6
call fcn.004105f8
add esp, 4
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jne 0x40e020
mov dword [ebp - 0x38], esp
push dword [ebp - 0x18]
push 0
push str.DialParamsUID
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x40e000
add eax, 8
push eax
mov eax, 0x2a
call fcn.004105fe
cmp dword [ebp - 0x38], esp
je 0x40e01d
push 6
call fcn.004105f8
add esp, 4
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jne 0x40e064
mov dword [ebp - 0x38], esp
push dword [ebp - 0x14]
push 0
push str.DialParamsUID
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x40e044
add eax, 8
push eax
mov eax, 0x2a
call fcn.004105fe
cmp dword [ebp - 0x38], esp
je 0x40e061
push 6
call fcn.004105f8
add esp, 4
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jne 0x40e0a8
mov dword [ebp - 0x38], esp
push dword [ebp - 0x18]
push 0
push str.DialParamsUID
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x40e088
add eax, 8
push eax
mov eax, 0x2a
call fcn.004105fe
cmp dword [ebp - 0x38], esp
je 0x40e0a5
push 6
call fcn.004105f8
add esp, 4
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jle 0x40e288
mov ebx, dword [0x5a3654]
call fcn.00404314
xor ecx, ecx
push eax
lea eax, [ebp - 0x1c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40e285
mov ebx, dword [0x5a3654]
call fcn.0040432d
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40e0f4
push 4
call fcn.004105f8
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e107
push 1
call fcn.004105f8
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x38], ebx
push 0x80000301
push 0
push dword [ebp - 0x34]
push 1
mov ebx, 0x411b90
call fcn.004105f2
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x38]
push dword [ebx]
call fcn.004010c0
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40e15f
push ebx
call fcn.004105e6
add esp, 4
cmp dword [ebp - 0x40], 0
je 0x40e1cb
mov ebx, dword [0x5a3654]
call fcn.0040432d
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40e189
push 4
call fcn.004105f8
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e19c
push 1
call fcn.004105f8
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x4b2dbc
mov ebx, dword [ebp - 0x44]
push dword [ebx]
call fcn.004010c0
add esp, 8
cmp eax, 0
je 0x40e1cb
mov eax, 1
jmp 0x40e1cd
xor eax, eax
test eax, eax
je 0x40e27d
mov ebx, dword [ebp - 0x20]
add ebx, 0x10
mov dword [ebp - 0x38], ebx
mov ebx, dword [0x5a3654]
call fcn.0040432d
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40e1fe
push 4
call fcn.004105f8
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e211
push 1
call fcn.004105f8
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push dword [ebp - 0x3c]
push dword [ebp - 0x38]
call fcn.004102fe
mov ebx, dword [ebp - 0x20]
add ebx, 0x14
mov dword [ebp - 0x38], ebx
mov ebx, dword [0x5a3654]
call fcn.0040432d
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40e252
push 4
call fcn.004105f8
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e265
push 1
call fcn.004105f8
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push dword [ebp - 0x3c]
push dword [ebp - 0x38]
call fcn.004102fe
pop eax
pop ebx
pop ecx
jmp 0x40e0c6
add esp, 0xc
mov ebx, dword [ebp - 0x20]
add ebx, 4
mov dword [ebp - 0x38], ebx
push dword [ebp - 0x38]
call fcn.0040ffa8
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40e2b2
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov ebx, dword [ebp + 8]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x20]
add ebx, 0x10
mov dword [ebp - 0x38], ebx
push dword [ebp - 0x38]
call fcn.0040ffa8
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40e2e2
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x20]
add ebx, 0x14
mov dword [ebp - 0x38], ebx
push dword [ebp - 0x38]
call fcn.0040ffa8
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp + 0x18]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40e312
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov ebx, dword [ebp + 0x18]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x40c909
add esp, 0xc
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx]
test eax, eax
jne 0x40e338
mov eax, 0x4b2dbc
push eax
push 1
mov ebx, 0x411280
call fcn.004105f2
add esp, 0x10
mov dword [ebp - 0x38], eax
push 0x4b2dbc
push dword [ebp - 0x38]
call fcn.004010c0
add esp, 8
cmp eax, 0
mov eax, 0
setne al
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x40e37c
push ebx
call fcn.004105e6
add esp, 4
mov eax, dword [ebp - 0x3c]
jmp 0x40e384
push eax
mov ebx, dword [ebp - 8]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40e3a3
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40e39f
imul eax, dword [ebx]
jmp 0x40e394
mov ecx, eax
test ecx, ecx
je 0x40e3e2
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40e3d1
push ebx
call fcn.004105e6
add esp, 4
pop ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40e3a9
call fcn.004105e6
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
add ebx, 0x14
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40e401
push ebx
call fcn.004105e6
add esp, 4
pop ebx
call fcn.004105e6
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40e41a
push ebx
call fcn.004105e6
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40e42a
push ebx
call fcn.004105e6
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
call fcn.004105e6
add esp, 4
mov ebx, dword [ebp - 0x24]
push ebx
add ebx, 0x10
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 0x10
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004105e6
add esp, 4
pop ebx
call fcn.004105e6
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40e5b2
push ebx
call fcn.004105e6
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40e5c2
push ebx
call fcn.004105e6
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x18