Function at 0x40f4e0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push ecx
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
cmp eax, 1
jne 0x40f555
call fcn.0040b980
test al, al
je 0x40f51d
call fcn.0040bff0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str.BuildMobTable_working_normal
call fcn.0040fad0
push 0x40a630
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
call fcn.0040dba0
test al, al
je 0x40f745
call fcn.0040f0c0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, str.BuildItemTable_working_normal
call fcn.0040fad0
push 0x40a630
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [0x421044]
mov esi, dword [0x421040]
mov byte [esp + 0xe], 0
mov byte [esp + 0xf], 0
xor bl, bl
mov byte [esp + 0xd], bl
cmp edi, 1
jne 0x40f5e1
cmp esi, eax
jge 0x40f5c4
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + esi*4]
cmp byte [eax], 0x2d
jne 0x40f5c0
cmp byte [eax + 1], 0
je 0x40f5c0
mov ecx, 0x41cf70
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40f5b0
test dl, dl
je 0x40f5ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40f5b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x40f590
xor eax, eax
jmp 0x40f5b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40f5e4
inc esi
mov dword [0x421040], esi
mov bl, byte [esp + 0xd]
cmp byte [esp + 0xe], 0
je 0x40f71e
test bl, bl
je 0x40f710
call fcn.0040e250
jmp 0x40f71e
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + esi*4]
movsx ebx, byte [eax + edi]
cmp ebx, 0x3a
je 0x40f74e
push ebx
push str.dimpul
call dword [sym.imp.VCRUNTIME140.dll_strchr]
add esp, 8
test eax, eax
je 0x40f74e
cmp byte [eax + 1], 0x3a
mov eax, dword [ebp + 0xc]
jne 0x40f678
mov edx, dword [0x421040]
mov ecx, dword [eax + edx*4]
lea esi, [edx + 1]
mov eax, dword [0x421044]
cmp byte [ecx + eax + 1], 0
jne 0x40f695
mov dword [0x421040], esi
cmp esi, dword [ebp + 8]
jl 0x40f694
mov edi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
push 2
call edi
mov esi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputs]
add esp, 4
push eax
mov eax, dword [ebp + 0xc]
push dword [eax]
call esi
push 2
call edi
add esp, 0xc
push eax
push str.:_option_requires_an_argument___
call esi
push 2
call edi
add esp, 0xc
push eax
push ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
add esp, 8
jmp 0x40f7b0
mov esi, dword [0x421040]
mov edi, dword [0x421044]
inc edi
mov dword [0x421044], edi
mov eax, dword [eax + esi*4]
cmp byte [edi + eax], 0
jne 0x40f6a6
inc esi
mov edi, 1
mov dword [0x421040], esi
mov dword [0x421044], edi
cmp ebx, 0xffffffff
je 0x40f5c0
add ebx, 0xffffffc1
cmp ebx, 0x36
ja case.0x40f6c2.63
movzx eax, byte [ebx + 0x40f7e8]
jmp dword [eax*4 + 0x40f7cc]
mov eax, dword [ebp + 8]
mov bl, byte [esp + 0xd]
mov byte [0x423f15], 1
jmp 0x40f571
mov eax, dword [ebp + 8]
mov bl, byte [esp + 0xd]
mov byte [esp + 0xe], 1
jmp 0x40f571
mov eax, dword [ebp + 8]
mov bl, byte [esp + 0xd]
mov byte [esp + 0xf], 1
jmp 0x40f571
mov eax, dword [ebp + 8]
jmp 0x40f56b
mov eax, dword [ebp + 8]
mov bl, 1
jmp 0x40f56d
call fcn.0040dba0
test al, al
je 0x40f71e
call fcn.0040f0c0
cmp byte [esp + 0xf], 0
je 0x40f745
test bl, bl
je 0x40f737
call fcn.0040c200
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0040b980
test al, al
je 0x40f745
call fcn.0040bff0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
push 2
call edi
mov esi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputs]
add esp, 4
push eax
mov eax, dword [ebp + 0xc]
push dword [eax]
call esi
push 2
call edi
add esp, 0xc
push eax
push str.:_illegal_option___
call esi
push 2
call edi
add esp, 0xc
push eax
push ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
mov esi, dword [0x421040]
add esp, 8
mov eax, dword [ebp + 0xc]
mov ecx, dword [0x421044]
inc ecx
mov dword [0x421044], ecx
mov eax, dword [eax + esi*4]
cmp byte [ecx + eax], 0
jne case.0x40f6c2.63
inc esi
mov dword [0x421040], esi
mov dword [0x421044], 1
mov edx, dword [ebp + 0xc]
call fcn.0040f4c0
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
nop
mov edx, 0xc90040f7
test byte [eax], 220
test byte [eax], 0xed
test byte [eax], 0xfe
test byte [eax], 6
test dword [eax], case.0x40f6c2.63
add byte [esi], al
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
add dword [esi], eax
push es
push es
push es
add al, byte [esi]
push es
push es
add eax, dword [esi]
push es
add al, 6
push es
push es
push es
add eax, 21752268
add byte [eax], al
int3