Function at 0x14000154c
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x140
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov rax, qword [0x14005d718]
xor rax, rsp
mov qword [rsp + 0x130], rax
xor edx, edx
lea rcx, str.ConsoleWindowClass
call qword [sym.imp.USER32.dll_FindWindowA]
test rax, rax
je 0x1400015a5
xor edx, edx
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
call fcn.14000104c
mov r15d, 4
mov edx, r15d
lea ecx, [r15 + 0x4b]
call fcn.140001084
mov byte [rsp + 0xb8], al
lea ecx, [r15 + 0x5d]
call fcn.140001084
mov edi, eax
mov dword [rsp + 0x24], eax
mov byte [rsp + 0xb9], al
lea ecx, [r15 + 0x72]
call fcn.140001084
mov ebx, eax
mov byte [rsp + 0xba], al
lea ecx, [r15 + 0x66]
call fcn.140001084
mov dword [rsp + 0x60], eax
mov byte [rsp + 0xbb], al
mov byte [rsp + 0xbc], dil
lea ecx, [r15 + 0x64]
call fcn.140001084
mov edi, eax
mov byte [rsp + 0xbd], al
lea r13d, [r15 + 0x33]
mov ecx, r13d
call fcn.140001084
mov byte [rsp + 0xbe], al
lea ecx, [r15 + 0x32]
call fcn.140001084
mov byte [rsp + 0xbf], al
lea ecx, [r15 + 0x26]
call fcn.140001084
mov byte [rsp + 0xc0], al
lea ecx, [r15 + 0x5c]
call fcn.140001084
mov dword [rsp + 0x30], eax
mov byte [rsp + 0xc1], al
mov byte [rsp + 0xc2], dil
mov byte [rsp + 0xc3], dil
mov ecx, r15d
call fcn.140001084
mov esi, eax
mov dword [rsp + 0x40], eax
mov byte [rsp + 0xc4], al
lea rcx, [rsp + 0xb8]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rbp, rax
mov qword [rsp + 0x70], rax
mov edx, r15d
lea ecx, [r15 + 0x4e]
call fcn.140001084
mov byte [rsp + 0xa8], al
lea ecx, [r15 + 0x69]
call fcn.140001084
mov byte [rsp + 0xa9], al
mov byte [rsp + 0xaa], bl
lea r14d, [r15 + 0x6c]
mov ecx, r14d
call fcn.140001084
mov dword [rsp + 0x5c], eax
mov byte [rsp + 0xab], al
lea ecx, [r15 + 0x6d]
call fcn.140001084
mov dword [rsp + 0x4c], eax
mov byte [rsp + 0xac], al
lea ecx, [r15 + 0x61]
call fcn.140001084
mov dword [rsp + 0x38], eax
mov byte [rsp + 0xad], al
mov byte [rsp + 0xae], dil
lea r12d, [r15 + 0x41]
mov ecx, r12d
call fcn.140001084
mov byte [rsp + 0xaf], al
mov byte [rsp + 0xb0], dil
mov byte [rsp + 0xb1], dil
lea ecx, [r15 + 0x67]
call fcn.140001084
mov dword [rsp + 0x28], eax
mov byte [rsp + 0xb2], al
lea ecx, [r15 + 0x63]
call fcn.140001084
mov byte [rsp + 0xb3], al
mov byte [rsp + 0xb4], sil
lea rdx, [rsp + 0xa8]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, 0x4f600
xor ecx, ecx
lea r9d, [r15 + 0x3c]
mov r8d, 0x1000
call rax
mov qword [rsp + 0x68], rax
lea ebp, [r15 - 3]
mov edx, ebp
mov ecx, r13d
call fcn.140001084
mov r15d, eax
mov dword [rsp + 0x50], eax
mov byte [rsp + 0xe0], al
lea ecx, [rbp + 0x37]
call fcn.140001084
mov dword [rsp + 0x44], eax
mov byte [rsp + 0xe1], al
lea ecx, [rbp + 0x77]
call fcn.140001084
mov byte [rsp + 0xe2], al
lea ecx, [rbp + 0x41]
call fcn.140001084
mov r13d, eax
mov dword [rsp + 0x54], eax
mov byte [rsp + 0xe3], al
lea ecx, [rbp + 0x46]
call fcn.140001084
mov edi, eax
mov byte [rsp + 0xe4], al
lea ecx, [rbp + 0x5f]
call fcn.140001084
mov ebx, eax
mov byte [rsp + 0xe5], al
lea ecx, [rbp + 0x4f]
call fcn.140001084
mov byte [rsp + 0xe6], al
mov ecx, r12d
call fcn.140001084
mov esi, eax
mov dword [rsp + 0x48], eax
mov byte [rsp + 0xe7], al
lea ecx, [rbp + 0x68]
call fcn.140001084
mov byte [rsp + 0xe8], al
lea ecx, [rbp + 0x48]
call fcn.140001084
mov r12d, eax
mov byte [rsp + 0xe9], al
mov ecx, r14d
call fcn.140001084
mov ebp, eax
mov byte [rsp + 0xea], al
lea ecx, [r14 - 0xa]
call fcn.140001084
mov byte [rsp + 0xeb], al
mov byte [rsp + 0xec], bl
mov rbx, rdx
lea ecx, [r14 - 0x19]
call fcn.140001084
mov dword [rsp + 0x58], eax
mov byte [rsp + 0xed], al
mov byte [rsp + 0xee], sil
mov byte [rsp + 0xef], dil
lea ecx, [r14 - 0x17]
call fcn.140001084
mov dword [rsp + 0x2c], eax
mov byte [rsp + 0xf0], al
lea ecx, [r14 - 0xb]
call fcn.140001084
mov dword [rsp + 0x3c], eax
mov byte [rsp + 0xf1], al
lea ecx, [r14 - 0x3d]
call fcn.140001084
mov esi, eax
mov byte [rsp + 0xf2], al
lea ecx, [r14 - 0xe]
call fcn.140001084
mov dword [rsp + 0x34], eax
mov byte [rsp + 0xf3], al
lea ecx, [r14 - 0x3c]
call fcn.140001084
mov edi, eax
mov byte [rsp + 0xf4], al
mov byte [rsp + 0xf5], sil
lea ecx, [r14 - 4]
call fcn.140001084
mov byte [rsp + 0xf6], al
lea ecx, [r14 - 0x37]
call fcn.140001084
mov byte [rsp + 0xf7], al
mov byte [rsp + 0xf8], r13b
lea ecx, [r14 - 1]
call fcn.140001084
mov r14d, eax
mov byte [rsp + 0xf9], al
mov ecx, 0x48
call fcn.140001084
mov dword [rsp + 0x20], eax
mov byte [rsp + 0xfa], al
mov byte [rsp + 0xfb], al
mov byte [rsp + 0xfc], r12b
mov byte [rsp + 0xfd], bpl
mov ecx, 0x77
call fcn.140001084
mov byte [rsp + 0xfe], al
mov ecx, 0x51
call fcn.140001084
mov byte [rsp + 0xff], al
mov ecx, 0x35
call fcn.140001084
mov ebx, eax
mov byte [rsp + 0x100], al
mov byte [rsp + 0x101], r15b
mov ecx, 0x4a
call fcn.140001084
mov r15d, eax
mov byte [rsp + 0x102], al
mov ecx, 0x6d
call fcn.140001084
mov r13d, eax
mov byte [rsp + 0x103], al
mov byte [rsp + 0x104], bpl
mov ecx, 0x43
call fcn.140001084
mov byte [rsp + 0x105], al
mov byte [rsp + 0x106], r12b
mov byte [rsp + 0x107], sil
mov ecx, 0x40
call fcn.140001084
mov r12d, eax
mov byte [rsp + 0x108], al
mov byte [rsp + 0x109], dil
mov rdi, rdx
mov ecx, 0x52
call fcn.140001084
mov ebp, eax
mov byte [rsp + 0x10a], al
mov ecx, 0x79
call fcn.140001084
mov byte [rsp + 0x10b], al
mov eax, dword [rsp + 0x54]
mov byte [rsp + 0x10c], al
mov ecx, 0x46
call fcn.140001084
mov byte [rsp + 0x10d], al
mov byte [rsp + 0x10e], bl
mov ecx, 0x30
call fcn.140001084
mov esi, eax
mov byte [rsp + 0x10f], al
mov ecx, 0x71
call fcn.140001084
mov byte [rsp + 0x110], al
mov ecx, 0x31
call fcn.140001084
mov ebx, eax
mov byte [rsp + 0x111], al
mov eax, dword [rsp + 0x20]
mov byte [rsp + 0x112], al
mov eax, dword [rsp + 0x2c]
mov byte [rsp + 0x113], al
mov byte [rsp + 0x114], r14b
mov ecx, 0x53
call fcn.140001084
mov byte [rsp + 0x115], al
mov ecx, 0x64
call fcn.140001084
mov byte [rsp + 0x116], al
mov eax, dword [rsp + 0x48]
mov byte [rsp + 0x117], al
mov ecx, 0x56
call fcn.140001084
mov edi, eax
mov byte [rsp + 0x118], al
mov byte [rsp + 0x119], bl
mov byte [rsp + 0x11a], r12b
mov r14d, dword [rsp + 0x34]
mov byte [rsp + 0x11b], r14b
mov byte [rsp + 0x11c], bpl
mov eax, dword [rsp + 0x20]
mov byte [rsp + 0x11d], al
mov eax, dword [rsp + 0x50]
mov byte [rsp + 0x11e], al
mov byte [rsp + 0x11f], sil
mov byte [rsp + 0x120], dil
mov ecx, 0x63
call fcn.140001084
mov ebx, eax
mov byte [rsp + 0x121], al
mov byte [rsp + 0x122], r13b
mov eax, dword [rsp + 0x3c]
mov byte [rsp + 0x123], al
mov byte [rsp + 0x124], r15b
mov byte [rsp + 0x125], r14b
mov r14, rdx
mov ecx, 0x5b
call fcn.140001084
mov byte [rsp + 0x126], al
mov eax, dword [rsp + 0x58]
mov byte [rsp + 0x127], al
mov byte [rsp + 0x128], dil
mov byte [rsp + 0x129], r12b
mov byte [rsp + 0x12a], bl
mov eax, dword [rsp + 0x44]
mov byte [rsp + 0x12b], al
mov ecx, 0x6b
call fcn.140001084
mov byte [rsp + 0x12c], al
mov ecx, r14d
call fcn.140001084
mov byte [rsp + 0x12d], al
mov qword [rsp + 0xa0], 0xf
xor ebx, ebx
mov qword [rsp + 0x98], rbx
mov byte [rsp + 0x88], bl
lea rcx, [rsp + 0xe0]
call fcn.140002310
mov r8, rax
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x80]
call fcn.140001400
nop
mov r12, qword [rsp + 0x68]
mov rdi, r12
lea r13, [0x14000e010]
sub r13, r12
mov ebp, 0x4f600
xor edx, edx
mov rax, rbx
div qword [rsp + 0x98]
mov rsi, rdx
cmp rdx, qword [rsp + 0x98]
jbe 0x140001c40
call fcn.14000279c
lea rax, [rsp + 0x88]
cmp qword [rsp + 0xa0], 0x10
cmovae rax, qword [rsp + 0x88]
movsx edx, byte [r13 + rdi]
movsx ecx, byte [rax + rsi]
call fcn.140001084
mov byte [rdi], al
add rbx, r14
add rdi, r14
sub rbp, r14
jne 0x140001c21
call r12
lea edx, [rbp + 4]
lea ecx, [rbp + 0x41]
call fcn.140001084
mov byte [rsp + 0xc8], al
mov eax, dword [rsp + 0x60]
mov byte [rsp + 0xc9], al
mov eax, dword [rsp + 0x4c]
mov byte [rsp + 0xca], al
lea ecx, [rbp + 0x69]
call fcn.140001084
mov ebx, eax
mov byte [rsp + 0xcb], al
lea ecx, [rbp + 0x57]
call fcn.140001084
mov byte [rsp + 0xcc], al
lea ecx, [rbp + 0x7d]
call fcn.140001084
mov byte [rsp + 0xcd], al
lea ecx, [rbp + 0x77]
call fcn.140001084
mov edi, eax
mov byte [rsp + 0xce], al
mov eax, dword [rsp + 0x5c]
mov byte [rsp + 0xcf], al
mov esi, dword [rsp + 0x24]
mov byte [rsp + 0xd0], sil
mov byte [rsp + 0xd1], bl
lea ecx, [rbp + 0x47]
call fcn.140001084
mov byte [rsp + 0xd2], al
mov eax, dword [rsp + 0x28]
mov byte [rsp + 0xd3], al
mov eax, dword [rsp + 0x30]
mov byte [rsp + 0xd4], al
mov byte [rsp + 0xd5], sil
lea ecx, [rbp + 0x54]
call fcn.140001084
mov byte [rsp + 0xd6], al
mov eax, dword [rsp + 0x38]
mov byte [rsp + 0xd7], al
lea ecx, [rbp + 0x63]
call fcn.140001084
mov byte [rsp + 0xd8], al
mov byte [rsp + 0xd9], sil
mov byte [rsp + 0xda], dil
lea ecx, [rbp + 0x53]
call fcn.140001084
mov byte [rsp + 0xdb], al
mov eax, dword [rsp + 0x40]
mov byte [rsp + 0xdc], al
lea rdx, [rsp + 0xc8]
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, r14d
mov rcx, r12
call rax
nop
cmp qword [rsp + 0xa0], 0x10
jb 0x140001db3
mov rcx, qword [rsp + 0x88]
call fcn.1400022ec
xor eax, eax
mov rcx, qword [rsp + 0x130]
xor rcx, rsp
call fcn.140002ed0
lea r11, [rsp + 0x140]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret