Function at 0x40d760
Capabilities:
Enumerate files on windows
Set current directory

Disassembly:
mov eax, 0x16a4
call fcn.00420c00
mov eax, dword [0x449e30]
xor eax, esp
mov dword [esp + 0x16a0], eax
mov eax, dword [esp + 0x16a8]
push ebp
push esi
push edi
push eax
mov edi, ecx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
xor eax, eax
push 0x144e
push eax
lea ecx, [esp + 0x266]
push ecx
mov word [esp + 0x268], ax
call fcn.0041fd10
add esp, 0xc
lea edx, [esp + 0xc]
push edx
push str..rom
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, eax
cmp esi, 0xffffffff
je 0x40d84b
xor eax, eax
jmp 0x40d7d0
movzx ecx, word [esp + eax + 0x38]
mov word [esp + eax + 0x25c], cx
add eax, 2
test cx, cx
jne 0x40d7d0
mov ebp, dword [sym.imp.KERNEL32.dll_FindNextFileW]
push ebx
lea eax, [esp + 0x10]
push eax
push esi
mov bl, 1
call ebp
test eax, eax
je 0x40d83d
lea ebx, [ebx]
movzx edx, bl
imul edx, edx, 0x208
lea eax, [esp + 0x3c]
mov ecx, eax
sub edx, ecx
lea edx, [esp + edx + 0x260]
jmp 0x40d820
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x40d820
lea edx, [esp + 0x10]
push edx
push esi
inc bl
call ebp
test eax, eax
jne 0x40d800
mov ebp, dword [sym.imp.KERNEL32.dll_FindClose]
push esi
call ebp
test bl, bl
pop ebx
jne 0x40d85f
push str.There_is_no_BIOS_file
call fcn.004084b0
add esp, 4
xor eax, eax
jmp 0x40d9c1
push str.Success_to_Get_BIOS_File_list
call fcn.004084b0
push 0x4d8
push 0
push edi
call fcn.0041fd10
lea eax, [esp + 0x26c]
lea esi, [edi + 0xc8]
mov edx, esi
mov ecx, eax
add esp, 0x10
sub edx, ecx
lea esp, [esp]
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x40d890
push str.Success_to_Find_BIOS_file
call fcn.004084b0
add esp, 4
cmp byte [edi + 0x4d9], 3
je 0x40d932
cmp byte [edi + 0x4db], 1
jne 0x40d932
lea edx, [esp + 0xc]
push edx
push str..bin
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, eax
cmp esi, 0xffffffff
je 0x40d91e
xor eax, eax
jmp 0x40d8e0
movzx ecx, word [esp + eax + 0x38]
add eax, 2
test cx, cx
jne 0x40d8e0
mov edi, dword [sym.imp.KERNEL32.dll_FindNextFileW]
lea eax, [esp + 0xc]
push eax
push esi
call edi
test eax, eax
je 0x40d91b
nop
xor eax, eax
movzx ecx, word [esp + eax + 0x38]
add eax, 2
test cx, cx
jne 0x40d902
lea ecx, [esp + 0xc]
push ecx
push esi
call edi
test eax, eax
jne 0x40d900
push esi
call ebp
push str.There_is_no_MICOM_file
call fcn.004084b0
add esp, 4
xor eax, eax
jmp 0x40d9c1
mov ecx, edi
call fcn.0040d380
test eax, eax
jne 0x40d97c
push str.Fail_to_Get_GetSecEfiBiosInfo
call fcn.004084b0
movzx eax, byte [edi + 0x4da]
add esp, 4
sub eax, 2
je 0x40d975
sub eax, 2
je 0x40d96c
push str.Fail_to_Get_Any_of_BIOS_File_Information
call fcn.004084b0
add esp, 4
xor eax, eax
jmp 0x40d9c1
mov ecx, edi
call fcn.0040ca90
jmp 0x40d97c
mov ecx, edi
call fcn.0040d0c0
movzx ecx, byte [edi + 0x4da]
lea edx, [edi + 0x4dc]
push edx
mov edx, dword [ecx*4 + 0x44c104]
lea eax, [edi + 0x55c]
push eax
push edx
push str.System_Information_nBIOS_Vendor___s_nPartID___s__Bios_Version:__s
call fcn.004084b0
lea eax, [edi + 4]
push eax
add edi, 0x84
push edi
push esi
push str.New_Bios_Information_nfileName_:__s_nPartID___s__Bios_Version:__s
call fcn.004084b0
add esp, 0x20
mov eax, 1
mov ecx, dword [esp + 0x16ac]
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.0041fd8a
add esp, 0x16a4
ret 4