Function at 0x180054820
Capabilities:
Create thread

Disassembly:
sub rsp, 0x38
mov rax, qword [0x180086088]
cmp byte [rax + 0x12], 0
je 0x180054a70
cmp byte [0x180086a01], 0
je 0x180054a70
xor ecx, ecx
mov qword [rsp + 0x30], rbx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
xor ebx, ebx
add rax, 0x21ad6c8
jne 0x18005485d
mov eax, ebx
jmp 0x180054860
mov rax, qword [rax]
mov rax, qword [rax + 0x30c0]
mov rcx, qword [rax + 0x130]
cmp dword [rcx + 0x38], 0xf
lea r8, [rcx + 0x28]
jle 0x18005487b
mov r8, qword [r8]
lea rdx, [0x180078ae0]
lea rcx, [0x180086a58]
call fcn.180054a80
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x1800548a3
mov rax, rbx
jmp 0x1800548a6
mov rax, qword [rax]
mov rax, qword [rax + 0x30c0]
mov rcx, qword [rax + 0x130]
cmp dword [rcx + 0x38], 0xf
lea rax, [rcx + 0x28]
jle 0x1800548c1
mov rax, qword [rax]
lea rdx, str.GoldCardLock
mov rcx, rax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
lea rdx, [0x180078b00]
mov r8d, ebx
lea rcx, [0x180086a58]
sete r8b
call fcn.180054a80
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x180054901
mov rax, rbx
jmp 0x180054904
mov rax, qword [rax]
mov rax, qword [rax + 0x30c0]
mov rcx, qword [rax + 0x130]
cmp dword [rcx + 0x38], 0xf
lea rax, [rcx + 0x28]
jle 0x18005491f
mov rax, qword [rax]
lea rdx, str.GoldCardLock
mov rcx, rax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x180054957
cmp dword [0x180086a38], 1
jne 0x180054957
mov rcx, qword [0x180086a58]
lea edx, [rax + 7]
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
lea rdx, [0x180078b30]
jmp 0x180054a25
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x18005496c
mov rax, rbx
jmp 0x18005496f
mov rax, qword [rax]
mov rax, qword [rax + 0x30c0]
mov rcx, qword [rax + 0x130]
cmp dword [rcx + 0x38], 0xf
lea rax, [rcx + 0x28]
jle 0x18005498a
mov rax, qword [rax]
lea rdx, str.BlueCardLock
mov rcx, rax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x1800549bf
cmp dword [0x180086a38], 2
jne 0x1800549bf
mov rcx, qword [0x180086a58]
lea edx, [rax + 7]
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
lea rdx, [0x180078b50]
jmp 0x180054a25
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x1800549d4
mov rax, rbx
jmp 0x1800549d7
mov rax, qword [rax]
mov rax, qword [rax + 0x30c0]
mov rcx, qword [rax + 0x130]
cmp dword [rcx + 0x38], 0xf
lea rax, [rcx + 0x28]
jle 0x1800549f2
mov rax, qword [rax]
lea rdx, str.RedCardLock
mov rcx, rax
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x180054a6b
cmp dword [0x180086a38], 3
jne 0x180054a6b
mov rcx, qword [0x180086a58]
lea edx, [rax + 7]
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
lea rdx, [0x180078b60]
mov rcx, qword [0x180086a58]
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea r8d, [r9 + 9]
call qword [sym.imp.KERNEL32.dll_WriteConsoleA]
mov r9d, 0x57
mov qword [rsp + 0x28], rbx
lea r8, [0x1800547b0]
mov dword [rsp + 0x20], ebx
xor edx, edx
mov byte [0x180086a02], 1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov byte [0x180086a01], bl
mov rbx, qword [rsp + 0x30]
add rsp, 0x38
ret