Function at 0x140046570
Capabilities:
Execute command
Read file on windows

Disassembly:
push rbp
push rbx
push rsi
push r12
push r15
lea rbp, [rsp - 0x190]
sub rsp, 0x290
mov rax, qword [0x140062040]
xor rax, rsp
mov qword [rbp + 0x130], rax
call fcn.140046360
call fcn.14004c740
call fcn.14004bb90
call fcn.14004c520
mov ecx, 0xbb8
call qword [sym.imp.KERNEL32.dll_Sleep]
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov rcx, rax
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
lea rcx, [0x1400574b4]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rax, [0x140047130]
mov dword [rbp + 0x10], 0x50
xor r12d, r12d
mov qword [rbp + 0x18], rax
xor ecx, ecx
mov dword [rbp + 0x14], 0x40
mov qword [rbp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
xorps xmm0, xmm0
mov qword [rbp + 0x58], r12
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x30], xmm0
lea rbx, [0x1400570f8]
movdqa xmmword [rbp + 0x40], xmm1
lea rcx, [rbp + 0x10]
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x50], rbx
call qword [sym.imp.USER32.dll_RegisterClassExA]
mov rax, qword [rbp + 0x28]
mov r9d, 0xcf0000
mov rdx, qword [rbp + 0x50]
mov r8, rbx
mov qword [rsp + 0x58], r12
xor ecx, ecx
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r12
mov dword [rsp + 0x38], 0x32
mov dword [rsp + 0x30], 0x32
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r12d
call qword [sym.imp.USER32.dll_CreateWindowExA]
lea ecx, [r12 + 0x20]
mov qword [rsp + 0x60], rax
mov rsi, rax
call qword [sym.imp.d3d9.dll_Direct3DCreate9]
mov qword [0x140062fd0], rax
mov rcx, rax
lea r15d, [r12 + 1]
test rax, rax
je 0x1400470cc
lea rdx, [0x140062fd8]
mov qword [0x140062fe0], r12
mov qword [rsp + 0x30], rdx
mov r9, rsi
lea rdx, [0x140062fe0]
mov qword [0x140062fec], r12
mov qword [rsp + 0x28], rdx
mov r8d, r15d
mov dword [0x140062ff4], r12d
xor edx, edx
mov qword [0x140062ffc], r12
mov dword [0x140063004], r12d
mov qword [0x140063014], r12
mov dword [0x140063008], r15d
mov dword [0x140062ff8], r15d
mov dword [0x140062fe8], r12d
mov dword [0x14006300c], r15d
mov dword [0x140063010], 0x50
mov dword [0x14006301c], r15d
mov rax, qword [rax]
mov dword [rsp + 0x20], 0x40
call qword [rax + 0x80]
test eax, eax
js 0x1400470c5
mov qword [rsp + 0x2c0], rdi
xor edx, edx
mov qword [rsp + 0x2c8], r13
mov rcx, rsi
mov qword [rsp + 0x2d0], r14
movaps xmmword [rsp + 0x240], xmm10
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, rsi
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rax, qword [0x140062d90]
test rax, rax
je 0x140046773
inc dword [rax + 0x3ac]
mov ecx, 0x4180
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x14004678f
xor edx, edx
mov rcx, rax
call fcn.140001380
jmp 0x140046792
mov rax, r12
cmp qword [0x140062d90], r12
jne 0x1400467a2
mov qword [0x140062d90], rax
mov rcx, rax
call fcn.140008540
mov r13, qword [0x140062d90]
lea rdx, [0x140052acc]
lea rcx, str.C:WindowsAppReadinessRoboto_Medium.ttf
mov r14, qword [r13 + 0xa8]
call fcn.140002950
movss xmm10, dword [0x140057b78]
mov rbx, rax
test rax, rax
je 0x140046a88
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
mov esi, eax
cmp eax, 0xffffffff
je 0x140046a7a
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x140046a7a
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x140046a7a
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x140046a7a
cmp rdi, 0xffffffffffffffff
je 0x140046a7a
mov rax, qword [0x140062d90]
test rax, rax
je 0x140046852
inc dword [rax + 0x3ac]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rsi, rax
test rax, rax
je 0x140046a7a
mov r9, rbx
mov r8, rdi
mov rdx, r15
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov rcx, rbx
cmp rax, rdi
je 0x1400468a7
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rax, qword [0x140062d90]
test rax, rax
je 0x140046899
dec dword [rax + 0x3ac]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x140046a83
movaps xmmword [rsp + 0x280], xmm6
movaps xmmword [rsp + 0x270], xmm7
movaps xmmword [rsp + 0x260], xmm8
movaps xmmword [rsp + 0x250], xmm9
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
xorps xmm1, xmm1
xor eax, eax
mov qword [rbp - 0x10], rax
xorps xmm5, xmm5
movsd xmm9, qword [rbp - 0x10]
mov eax, 0xffff
movups xmmword [rbp - 0x40], xmm1
mov word [rbp - 0x3c], ax
movups xmmword [rbp - 0x80], xmm1
mov dword [rbp - 0x40], 0x3f800000
movaps xmm2, xmmword [rbp - 0x40]
xorps xmm7, xmm7
movups xmmword [rsp + 0x70], xmm1
mov byte [rsp + 0x7c], r15b
movaps xmm3, xmmword [rsp + 0x70]
movdqa xmm0, xmm2
movups xmmword [rbp - 0x50], xmm1
mov dword [rbp - 0x78], 3
psrldq xmm0, 6
xorps xmm8, xmm8
movd eax, xmm0
mov dword [rbp - 0x74], r15d
movaps xmm4, xmmword [rbp - 0x80]
mov dword [rbp - 0x4c], 0x7f7fffff
movaps xmm6, xmmword [rbp - 0x50]
movaps xmmword [rbp + 0x70], xmm3
movaps xmmword [rbp + 0x80], xmm4
movaps xmmword [rbp + 0x90], xmm1
movaps xmmword [rbp + 0xa0], xmm5
movaps xmmword [rbp + 0xb0], xmm6
movaps xmmword [rbp + 0xc0], xmm2
movaps xmmword [rbp + 0xd0], xmm7
movaps xmmword [rbp + 0xe0], xmm8
movsd qword [rbp + 0xf0], xmm9
test al, al
jne 0x140046a11
lea r9, [0x1400574e1]
lea rdx, str.C:WindowsAppReadinessRoboto_Medium.ttf
movzx eax, byte [r9 - 1]
lea rcx, [r9 - 1]
cmp al, 0x2f
je 0x1400469ac
cmp al, 0x5c
je 0x1400469ac
mov r9, rcx
cmp rcx, rdx
ja 0x140046993
movsd xmm0, qword [0x140057bb0]
lea r8, str._s___.0fpx
mov edx, 0x28
movsd qword [rsp + 0x20], xmm0
lea rcx, [rbp + 0xc6]
call fcn.140002820
movaps xmm2, xmmword [rbp + 0xc0]
movaps xmm5, xmmword [rbp + 0xa0]
movaps xmm1, xmmword [rbp + 0x90]
movaps xmm4, xmmword [rbp + 0x80]
movaps xmm3, xmmword [rbp + 0x70]
movsd xmm9, qword [rbp + 0xf0]
movaps xmm8, xmmword [rbp + 0xe0]
movaps xmm7, xmmword [rbp + 0xd0]
movaps xmm6, xmmword [rbp + 0xb0]
movaps xmmword [rsp + 0x70], xmm3
lea rdx, [rsp + 0x70]
movaps xmmword [rbp - 0x80], xmm4
mov rcx, r14
mov qword [rsp + 0x70], rsi
mov dword [rsp + 0x78], edi
mov dword [rbp - 0x7c], 0x41a00000
movaps xmmword [rbp - 0x70], xmm1
movaps xmmword [rbp - 0x60], xmm5
movaps xmmword [rbp - 0x50], xmm6
movaps xmmword [rbp - 0x40], xmm2
movaps xmmword [rbp - 0x30], xmm7
movaps xmmword [rbp - 0x20], xmm8
movsd qword [rbp - 0x10], xmm9
call fcn.140030520
movaps xmm9, xmmword [rsp + 0x250]
movaps xmm8, xmmword [rsp + 0x260]
movaps xmm7, xmmword [rsp + 0x270]
movaps xmm6, xmmword [rsp + 0x280]
jmp 0x140046a83
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rsi, qword [rsp + 0x60]
or dword [r13 + 8], 0x401
xor ecx, ecx
call fcn.14002bc00
test dword [r13 + 8], 0x400
mov rax, qword [0x140062d90]
je 0x140046aee
mov dword [rax + 0x1660], 0x40800000
mov dword [rax + 0x1744], 0x3f800000
mov dword [rax + 0x1698], 0x3f800000
mov dword [rax + 0x1768], 0x3e008081
mov dword [rax + 0x176c], 0x3e008081
mov dword [rax + 0x1770], 0x3e008081
mov dword [rax + 0x1774], 0x3f800000
mov rcx, rsi
call fcn.140036670
mov rbx, qword [0x140062d90]
mov rdi, qword [0x140062fd8]
test rbx, rbx
je 0x140046b0f
inc dword [rbx + 0x3ac]
mov ecx, 0x28
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x140046b3e
mov qword [rax], r12
mov qword [rax + 8], r12
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], r12
mov dword [rax + 0x20], 0x1388
mov dword [rax + 0x24], 0x2710
jmp 0x140046b41
mov rax, r12
or dword [rbx + 0xc], 0x1008
lea rcx, str.imgui_impl_dx9
mov qword [rbx + 0xe8], rcx
mov rcx, rdi
mov qword [rbx + 0xf8], rax
mov qword [rax], rdi
mov rax, qword [rdi]
call qword [rax + 8]
test dword [rbx + 8], 0x400
je 0x140046bbf
mov rax, qword [0x140062d90]
lea rcx, [fcn.140036310]
mov qword [rax + 0x1608], rcx
lea rcx, [fcn.1400363f0]
mov qword [rax + 0x1610], rcx
lea rcx, [0x140036470]
mov qword [rax + 0x1618], rcx
lea rcx, [0x1400364e0]
mov qword [rax + 0x1620], rcx
lea rcx, [0x140036640]
mov qword [rax + 0x1628], rcx
xor r15b, r15b
mov esi, 1
nop word [rax + rax]
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
lea rcx, [rbp + 0x100]
xor edx, edx
call qword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
je 0x140046c3f
nop dword [rax]
lea rcx, [rbp + 0x100]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp + 0x100]
call qword [sym.imp.USER32.dll_DispatchMessageA]
cmp dword [rbp + 0x108], 0x12
lea rcx, [rbp + 0x100]
movzx r15d, r15b
cmove r15d, esi
mov dword [rsp + 0x20], esi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
jne 0x140046bf0
test r15b, r15b
jne 0x140046f48
mov rbx, qword [0x140062d90]
test rbx, rbx
je 0x140046c54
mov rax, qword [rbx + 0xf8]
jmp 0x140046c57
mov rax, r12
cmp qword [rax + 0x18], 0
jne 0x140046c6a
call fcn.140036170
mov rbx, qword [0x140062d90]
test rbx, rbx
je 0x140046c78
mov rdi, qword [rbx + 0xf0]
jmp 0x140046c7b
mov rdi, r12
xorps xmm0, xmm0
lea rdx, [rbp]
movdqu xmmword [rbp], xmm0
mov rcx, qword [rdi]
call qword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [rbp + 8]
sub eax, dword [rbp]
movd xmm1, eax
mov eax, dword [rbp + 0xc]
sub eax, dword [rbp + 4]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbx + 0x10], xmm1
movss dword [rbx + 0x14], xmm0
cmp byte [rdi + 0x2e], 0
je 0x140046cbf
call fcn.140037300
lea rcx, [rbp + 0x60]
mov qword [rbp + 0x60], r12
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rcx, qword [rbp + 0x60]
xorps xmm1, xmm1
mov rax, rcx
xorps xmm0, xmm0
sub rax, qword [rdi + 0x18]
cvtsi2ss xmm0, qword [rdi + 0x20]
cvtsi2ss xmm1, rax
divss xmm1, xmm0
movss dword [rbx + 0x18], xmm1
mov qword [rdi + 0x18], rcx
call fcn.140036c50
cmp byte [rbx + 0xd0], 0
je 0x140046d0b
mov eax, 0xffffffff
jmp 0x140046d18
mov rax, qword [0x140062d90]
mov eax, dword [rax + 0x2128]
cmp dword [rdi + 0x28], eax
je 0x140046d25
mov dword [rdi + 0x28], eax
call fcn.140036ad0
call fcn.140036f00
call fcn.140007040
call fcn.1400477e0
call fcn.140009a60
mov rcx, qword [0x140062fd8]
xor r8d, r8d
mov rax, qword [rcx]
lea edx, [r8 + 7]
call qword [rax + 0x1c8]
mov rcx, qword [0x140062fd8]
xor r8d, r8d
mov rax, qword [rcx]
lea edx, [r8 + 0x1b]
call qword [rax + 0x1c8]
mov rcx, qword [0x140062fd8]
xor r8d, r8d
mov edx, 0xae
mov rax, qword [rcx]
call qword [rax + 0x1c8]
mov rcx, qword [0x140062fd8]
mov r9d, 3
mov dword [rsp + 0x30], r12d
xor r8d, r8d
movss dword [rsp + 0x28], xmm10
xor edx, edx
mov dword [rsp + 0x20], r12d
mov rax, qword [rcx]
call qword [rax + 0x158]
mov rcx, qword [0x140062fd8]
mov rax, qword [rcx]
call qword [rax + 0x148]
test eax, eax
js 0x140046dfa
call fcn.140009f80
mov rax, qword [0x140062d90]
mov rcx, qword [rax + 0x1f40]
mov rax, qword [rcx]
mov rcx, r12
add rax, 0xa8
cmp byte [rax], 0
cmovne rcx, rax
call fcn.140035960
mov rcx, qword [0x140062fd8]
mov rax, qword [rcx]
call qword [rax + 0x150]
test dword [r13 + 8], 0x400
je 0x140046ee2
call fcn.140019ea0
mov rbx, qword [0x140062d90]
mov r14d, esi
mov eax, dword [rbx + 0x1640]
cmp eax, 1
jle 0x140046e81
mov esi, 8
nop word [rax + rax]
mov rax, qword [rbx + 0x1648]
mov rdi, qword [rsi + rax]
test dword [rdi + 4], 0x400
jne 0x140046e6a
mov rax, qword [rbx + 0x15d8]
test rax, rax
je 0x140046e57
xor edx, edx
mov rcx, rdi
call rax
mov rax, qword [rbx + 0x1620]
test rax, rax
je 0x140046e6a
xor edx, edx
mov rcx, rdi
call rax
mov eax, dword [rbx + 0x1640]
inc r14d
add rsi, 8
cmp r14d, eax
jl 0x140046e30
mov esi, 1
mov r14d, esi
cmp eax, 1
jle 0x140046edf
mov esi, 8
nop
mov rax, qword [rbx + 0x1648]
mov rdi, qword [rsi + rax]
test dword [rdi + 4], 0x400
jne 0x140046eca
mov rax, qword [rbx + 0x15e0]
test rax, rax
je 0x140046eb7
xor edx, edx
mov rcx, rdi
call rax
mov rax, qword [rbx + 0x1628]
test rax, rax
je 0x140046eca
xor edx, edx
mov rcx, rdi
call rax
inc r14d
add rsi, 8
cmp r14d, dword [rbx + 0x1640]
jl 0x140046e90
mov esi, 1
xor r12d, r12d
mov rcx, qword [0x140062fd8]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], r12
xor edx, edx
mov rax, qword [rcx]
call qword [rax + 0x88]
cmp eax, 0x88760868
jne 0x140046bd0
mov rcx, qword [0x140062fd8]
mov rax, qword [rcx]
call qword [rax + 0x18]
cmp eax, 0x88760869
jne 0x140046bd0
call fcn.140036220
mov rcx, qword [0x140062fd8]
lea rdx, [0x140062fe0]
mov rax, qword [rcx]
call qword [rax + 0x80]
call fcn.140036170
jmp 0x140046bd0
mov rbx, qword [0x140062d90]
movaps xmm10, xmmword [rsp + 0x240]
mov r14, qword [rsp + 0x2d0]
mov r13, qword [rsp + 0x2c8]
test rbx, rbx
je 0x140046f76
mov rdi, qword [rbx + 0xf8]
jmp 0x140046f79
mov rdi, r12
call fcn.14001a480
call fcn.140036220
mov rcx, qword [rdi]
test rcx, rcx
je 0x140046f91
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rax, qword [0x140062d90]
mov qword [rbx + 0xe8], r12
mov qword [rbx + 0xf8], r12
test rax, rax
je 0x140046fb1
dec dword [rax + 0x3ac]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rbx, qword [0x140062d90]
test rbx, rbx
je 0x140046fcf
mov rdi, qword [rbx + 0xf0]
jmp 0x140046fd2
mov rdi, r12
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rdx, rax
lea rcx, str.ImGui_Platform
call qword [sym.imp.USER32.dll_UnregisterClassA]
call fcn.14001a480
mov rcx, qword [rdi + 0x30]
test rcx, rcx
je 0x140046ffe
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rax, qword [0x140062d90]
mov qword [rbx + 0xe0], r12
mov qword [rbx + 0xf0], r12
test rax, rax
je 0x14004701e
dec dword [rax + 0x3ac]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rbx, qword [0x140062d90]
mov rcx, rbx
call fcn.1400088a0
cmp qword [0x140062d90], rbx
mov rdi, qword [rsp + 0x2c0]
jne 0x14004704e
mov qword [0x140062d90], r12
test rbx, rbx
je 0x140047076
mov rcx, rbx
call fcn.140024750
mov rax, qword [0x140062d90]
test rax, rax
je 0x14004706d
dec dword [rax + 0x3ac]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [0x140062fd8]
test rcx, rcx
je 0x14004708f
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x140062fd8], r12
mov rcx, qword [0x140062fd0]
test rcx, rcx
je 0x1400470a8
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x140062fd0], r12
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.USER32.dll_DestroyWindow]
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x50]
call qword [sym.imp.USER32.dll_UnregisterClassA]
xor eax, eax
jmp 0x140047112
mov rcx, qword [0x140062fd0]
mov rdx, qword [0x140062fd8]
test rdx, rdx
je 0x1400470ef
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 0x10]
mov rcx, qword [0x140062fd0]
mov qword [0x140062fd8], r12
test rcx, rcx
je 0x140047101
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov qword [0x140062fd0], r12
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x50]
call qword [sym.imp.USER32.dll_UnregisterClassA]
mov eax, r15d
mov rcx, qword [rbp + 0x130]
xor rcx, rsp
call fcn.14004f400
add rsp, 0x290
pop r15
pop r12
pop rsi
pop rbx
pop rbp
ret