Function at 0x411540
Capabilities:
Create process on windows
Get common file path
Self delete
Write and execute a file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x3868
call fcn.0046b670
mov eax, dword [0x48f00c]
xor eax, ebp
mov dword [ebp - 4], eax
push 0x208
lea eax, [ebp - 0x494]
push 0
push eax
call fcn.00434c70
add esp, 0xc
lea eax, [ebp - 0x494]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push 0x208
lea eax, [ebp - 0x28c]
push 0
push eax
call fcn.00434c70
add esp, 8
lea eax, [ebp - 0x494]
mov edx, 0x104
push eax
push ecx
lea ecx, [ebp - 0x28c]
call fcn.0040f1e0
lea eax, [ebp - 0x28c]
push 0x5c
push eax
call fcn.00434773
add esp, 8
test eax, eax
je 0x4115c9
xor ecx, ecx
mov word [eax], cx
push edi
push 0x208
lea eax, [ebp - 0x69c]
push 0
push eax
call fcn.00434c70
push 0x208
lea eax, [ebp - 0x8a4]
push 0
push eax
call fcn.00434c70
add esp, 0x18
lea eax, [ebp - 0x8a4]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push str.delFenbiUninstall.bat
lea eax, [ebp - 0x8a4]
push eax
push 0x48106c
lea eax, [ebp - 0x69c]
push 0x208
push eax
call fcn.0040f160
add esp, 0x14
lea eax, [ebp - 0x69c]
push 0
push 0
push 2
push 0
push 1
push 0x40000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
cmp edi, 0xffffffff
je 0x4117f1
push esi
push 0x208
lea eax, [ebp - 0xaac]
push 0
push eax
call fcn.00434c70
push 0x1248
lea eax, [ebp - 0x2410]
push 0
push eax
call fcn.00434c70
push 0x1450
lea eax, [ebp - 0x3860]
push 0
push eax
call fcn.00434c70
push 0x71c
lea eax, [ebp - 0x11c8]
push 0
push eax
call fcn.00434c70
push 0x80
lea eax, [ebp - 0x84]
push 0
push eax
call fcn.00434c70
add esp, 0x38
mov edx, 0x40
push str.ping_127.0.0.1
push ecx
lea ecx, [ebp - 0x84]
call fcn.0040f1e0
lea eax, [ebp - 0x84]
push eax
push 0xa
push str.set_num0_r_n:fenbidel_r_nset__a_num1_r_nif___num___GTR__d_goto_fenbiend_r_n_s_r_n
lea eax, [ebp - 0xaac]
push 0x208
push eax
call fcn.0040f160
lea eax, [ebp - 0x69c]
push eax
lea eax, [ebp - 0x28c]
push eax
push eax
lea eax, [ebp - 0x494]
push eax
push eax
push str.del__Q___s__r_nif_exist___s__goto_fenbidel_r_ndel__F__S__Q___s.___r_nrd__S__Q___s__r_n:fenbiend_r_ndel___s___Q
lea eax, [ebp - 0x2410]
push 0x1248
push eax
call fcn.0040f160
add esp, 0x30
lea eax, [ebp - 0xaac]
mov esi, 0xa28
mov edx, esi
push eax
push ecx
lea ecx, [ebp - 0x3860]
call fcn.0040f1e0
push ecx
lea eax, [ebp - 0x3864]
mov edx, esi
push eax
lea ecx, [ebp - 0x3860]
call fcn.00407e80
test eax, eax
js 0x41176d
push ecx
lea eax, [ebp - 0x2410]
push eax
mov eax, dword [ebp - 0x3864]
sub esi, eax
push ecx
lea ecx, [ebp - 0x3860]
mov edx, esi
lea ecx, [ecx + eax*2]
call fcn.00407ef0
push 0
push 0
push 0x71b
lea eax, [ebp - 0x11c8]
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x3860]
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea ecx, [ebp - 0x11c8]
lea edx, [ecx + 1]
pop esi
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4117a0
push 0
lea eax, [ebp - 0x3868]
mov dword [ebp - 0x3868], 0
push eax
sub ecx, edx
lea eax, [ebp - 0x11c8]
push ecx
push eax
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0
lea eax, [ebp - 0x8a4]
push eax
push 0
lea eax, [ebp - 0x69c]
push eax
push 0x48128c
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop edi
call fcn.0042fe16
mov esp, ebp
pop ebp
ret