Function at 0x407d00
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x20
mov esi, ecx
mov ebx, esp
mov ecx, ebx
push edx
call fcn.0041c200
movzx eax, byte [esp]
test al, 1
je 0x407d2b
mov eax, dword [esp + 4]
cmp eax, 3
je 0x407d32
jmp 0x407d48
shr eax, 1
cmp eax, 3
jne 0x407d48
mov ecx, esp
push 3
push 0x50c161
push 0xffffffffffffffff
push 0
call fcn.0041e0f0
test eax, eax
je 0x407db3
mov dword [esp + 0xc], esi
call fcn.00409c90
test eax, eax
je 0x407f72
mov edi, eax
movzx eax, byte [esp]
mov esi, dword [esp + 4]
mov ecx, eax
mov edx, esi
shr ecx, 1
and al, 1
cmove edx, ecx
cmp edx, 5
jne 0x407d9b
mov ecx, esp
push 5
push str.other
push 0xffffffffffffffff
push 0
call fcn.0041e0f0
test eax, eax
je 0x407e9b
movzx ecx, byte [esp]
mov esi, dword [esp + 4]
mov eax, ecx
shr ecx, 1
and al, 1
test al, al
cmovne ecx, esi
cmp ecx, 1
jne 0x407e37
test al, al
je 0x407dea
mov eax, dword [esp + 8]
jmp 0x407dee
cmp byte [ebp + 8], 0
je 0x407eef
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov byte [esi], 6
mov dword [esi + 1], 0x6c6c61
test byte [esp], 1
jne 0x407f5c
jmp 0x407f68
lea eax, [esp + 1]
movsx eax, byte [eax]
cmp eax, 0x61
jl 0x407e37
add eax, 0xffffff9f
cmp eax, edi
jge 0x407e37
movsd xmm0, qword [esp]
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 8]
mov dword [esp + 4], 0
mov dword [esp], 0
mov dword [esp + 8], 0
mov dword [esi + 8], eax
movsd qword [esi], xmm0
test byte [esp], 1
jne 0x407f5c
jmp 0x407f68
push 2
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
add esp, 4
test byte [esp], 1
je 0x407e4e
mov ebx, dword [esp + 8]
jmp 0x407e4f
inc ebx
push ebx
push str.Slot__s_does_not_exist._supported_slots_are:_n
push eax
call fcn.0040c070
add esp, 0xc
test edi, edi
jle 0x407e94
mov ebx, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov esi, 0x61000000
nop dword [eax]
push 2
call ebx
add esp, 4
mov ecx, esi
sar ecx, 0x18
push ecx
push 0x50e02e
push eax
call fcn.0040c070
add esp, 0xc
add esi, 0x1000000
dec edi
jne 0x407e70
push 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
lea ecx, [esp + 0x10]
call fcn.00409ba0
mov bl, byte [esp + 0x10]
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x11]
test bl, 1
cmovne eax, ecx
movsx eax, byte [eax]
add eax, 0xffffffa0
cdq
idiv edi
mov esi, dword [esp + 0xc]
add dl, 0x61
test bl, 1
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov byte [esi], 2
mov byte [esi + 1], dl
mov byte [esi + 2], 0
jne 0x407f21
xor eax, eax
mov cl, 2
jmp 0x407f2f
call fcn.00409c90
test eax, eax
jle 0x407f7c
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov word [esi], 0x6102
mov byte [esi + 2], 0
test byte [esp], 1
jne 0x407f5c
jmp 0x407f68
push ecx
call fcn.00416a20
add esp, 4
mov cl, byte [esi]
mov eax, dword [esi + 4]
mov edx, ecx
shr dl, 1
test cl, 1
movzx ecx, dl
cmovne ecx, eax
test ecx, ecx
jne 0x407f56
mov ecx, esi
push 0
push 0x50c0f0
push 0xffffffffffffffff
push 0
call fcn.0041e0f0
test eax, eax
je 0x407f7c
test byte [esp], 1
je 0x407f68
push dword [esp + 8]
call fcn.00416a20
add esp, 4
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push str.Device_does_not_support_slots
call fcn.00422910
push str.No_known_slots
call fcn.00422910
nop word cs:[eax + eax]