Function at 0x41bd93
Capabilities:
Terminate process

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x10
and dword [ebp - 4], 0
push ebx
push esi
mov ebx, ecx
push edi
mov edi, edx
test ebx, ebx
je 0x41bfc5
test edi, edi
je 0x41bfc5
call fcn.0041bb77
cmp eax, 1
jne 0x41beb0
push eax
call fcn.004208bb
pop ecx
cmp ebx, eax
jne 0x41bdde
push 0xfffffffffffffff5
call dword [sym.imp.api_ms_win_core_processenvironment_l1_1_0.dll_GetStdHandle]
mov ebx, eax
mov dword [ebp - 8], ebx
jmp 0x41bdfb
push 2
call fcn.004208bb
pop ecx
cmp ebx, eax
jne 0x41be98
push 0xfffffffffffffff4
call dword [sym.imp.api_ms_win_core_processenvironment_l1_1_0.dll_GetStdHandle]
mov ebx, eax
mov dword [ebp - 8], eax
mov ecx, edi
call fcn.0041bcfd
push 0
mov esi, eax
lea eax, [ebp - 4]
push eax
push esi
push edi
push ebx
call dword [sym.imp.api_ms_win_core_console_l1_1_0.dll_WriteConsoleW]
test eax, eax
je 0x41be1c
cmp esi, dword [ebp - 4]
je 0x41be74
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
cmp eax, 8
jne 0x41be7c
mov ecx, edi
call fcn.0041bcfd
xor ebx, ebx
mov dword [ebp - 0xc], eax
test eax, eax
je 0x41be74
mov ecx, 0x400
mov esi, eax
sub esi, ebx
cmp esi, ecx
jbe 0x41be46
mov esi, ecx
push 0
lea eax, [ebp - 4]
push eax
push esi
push edi
push dword [ebp - 8]
call dword [sym.imp.api_ms_win_core_console_l1_1_0.dll_WriteConsoleW]
test eax, eax
je 0x41be7c
cmp esi, dword [ebp - 4]
jne 0x41be7c
mov eax, dword [ebp - 0xc]
mov ecx, 0x400
add ebx, ecx
add edi, 0x800
cmp ebx, eax
jb 0x41be3c
xor eax, eax
inc eax
jmp 0x41bfd9
push 2
call fcn.004208bb
pop ecx
mov ecx, eax
call fcn.0041b0df
call fcn.0041b19b
push 1
call dword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_ExitProcess]
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
test eax, eax
jne 0x41bfd7
push 0x42b
jmp 0x41bfd1
mov ecx, edi
call fcn.0041bcfd
push 0x100
mov esi, eax
push 0
push 0x42b178
mov dword [ebp - 0x10], esi
call sub.msvcrt.dll_memset
xor eax, eax
add esp, 0xc
mov dword [ebp - 8], eax
test esi, esi
je 0x41be74
sub esi, eax
cmp esi, 0xff
jbe 0x41bee8
mov esi, 0xff
lea eax, [edi + eax*2]
mov dword [ebp - 0xc], eax
push 0
push 0
push 0
push 0
push esi
push eax
push 0
call dword [sym.imp.api_ms_win_core_console_l1_1_0.dll_GetConsoleOutputCP]
push eax
call dword [sym.imp.api_ms_win_core_string_l1_1_0.dll_WideCharToMultiByte]
mov dword [ebp - 4], eax
test eax, eax
je 0x41bfbe
cmp eax, 0xff
jbe 0x41bf37
add eax, 0xffffff01
cmp eax, 3
jbe 0x41bf29
shr eax, 1
sub esi, eax
jmp 0x41bf2a
dec esi
and dword [ebp - 4], 0
test esi, esi
je 0x41bfa9
mov eax, dword [ebp - 0xc]
jmp 0x41beee
cmp eax, esi
jae 0x41bf3d
mov esi, eax
push 0x100
push 0
push 0x42b178
call sub.msvcrt.dll_memset
add esp, 0xc
xor eax, eax
push eax
push eax
push 0xff
push 0x42b178
push esi
push dword [ebp - 0xc]
push eax
call dword [sym.imp.api_ms_win_core_console_l1_1_0.dll_GetConsoleOutputCP]
push eax
call dword [sym.imp.api_ms_win_core_string_l1_1_0.dll_WideCharToMultiByte]
mov dword [ebp - 4], eax
test eax, eax
je 0x41bfbe
add dword [ebp - 8], esi
push 0x42b178
push 0x403348
push ebx
call dword [sym.imp.msvcrt.dll_fprintf]
push ebx
call dword [sym.imp.msvcrt.dll_fflush]
mov eax, dword [ebp - 8]
add esp, 0x10
mov esi, dword [ebp - 0x10]
cmp esi, eax
ja 0x41bed9
jmp 0x41be74
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
test eax, eax
jne 0x41bfbe
push 0x42b
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
push 1
jmp 0x41be7e
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
test eax, eax
jne 0x41bfd7
push 0x57
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret