Function at 0x10033f50
Capabilities:
Get common file path
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x470
mov eax, dword [0x10158008]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x460], ecx
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push edi
mov edi, dword [ebp + 0xc]
cmp eax, 0x7d8
jg 0x1003411a
je 0x10034054
cmp eax, 3
ja case.0x10034139.2022
jmp dword [eax*4 + 0x10034660]
mov eax, sym.ExuiKrnln_X32.dll_CallInternalFunction_Ex
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
cmp dword [0x1015bf98], 0
je case.0x10034139.2022
lea eax, [ebp - 0x45c]
push eax
push edi
call dword [sym.imp.USER32.dll_BeginPaint]
lea eax, [ebp - 0x460]
mov dword [ebp - 0x460], 0
push eax
push dword [ebp - 0x45c]
call dword [0x1015c30c]
push ecx
mov dword [esp], 0x3f800000
push 0xff
push 0x18
push 0x18
push 0
push 0
push dword [0x1015bf98]
push dword [ebp - 0x460]
call sym.ExuiKrnln_X32.dll_DrawImageZoomEx
push dword [ebp - 0x460]
call dword [0x1015c310]
lea eax, [ebp - 0x45c]
push eax
push edi
call dword [sym.imp.USER32.dll_EndPaint]
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
mov ecx, edi
call fcn.100d3ae0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
mov ebx, dword [ebp + 0x18]
mov dword [0x1015a688], ebx
cmp ebx, 0x134b115
jle 0x10034105
push 0x2c
mov edi, 0x10033d20
call fcn.10110e24
add esp, 4
mov esi, eax
push 0x2c
push 0
push esi
call fcn.10112ca0
mov eax, 0x10033d20
add esp, 0xc
cmp eax, 0xffffffff
jne 0x100340a0
mov eax, dword [ebx]
mov dword [eax], esi
mov edi, dword [ebx + 4]
mov eax, dword [ebx + 8]
mov dword [esi], eax
mov ebx, dword [ebx + 0xc]
push 0x20
push 0x2710
push 0x2710
push esi
push 0x100ea370
mov dword [esi + 0x18], edi
lea edi, [esi + 4]
push 0
push edi
mov dword [esi + 0x28], 0x20
mov dword [esi + 0x20], 0x2710
mov dword [esi + 0x24], 0x2710
mov word [esi + 0xd], 0
mov dword [esi + 0x1c], ebx
mov dword [esi + 0x10], 0xfffffffe
call dword [sym.imp.KERNEL32.dll_CreateTimerQueueTimer]
test eax, eax
jne 0x100340ec
mov dword [edi], eax
cmp dword [edi], 0
jne case.0x10034139.2022
push 0x2c
push esi
call fcn.10110e54
add esp, 8
jmp case.0x10034139.2022
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
cmp eax, 0xbb9
jg 0x10034447
je 0x100342c3
add eax, 0xfffff81d
cmp eax, 7
ja case.0x10034139.2022
jmp dword [eax*4 + 0x10034670]
mov edx, edi
mov ecx, 0x1015a71c
call fcn.100d4d50
mov edx, ebx
mov ecx, 0x1015a718
call fcn.100d4d50
jmp case.0x10034139.2022
test edi, edi
setne byte [0x1015a414]
test edi, edi
je 0x100341dc
test ecx, ecx
mov dword [0x1015a51c], 0
setne byte [0x1015a417]
cmp dword [0x1015bf98], 0
jne 0x100341a9
push 0
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, 0x3ea
call fcn.100d3ae0
push eax
call sym.ExuiKrnln_X32.dll_LoadImageEx
mov dword [0x1015bf98], eax
cmp dword [0x1015a428], 0
jne case.0x10033f92.1
push 0x606060
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [0x1015a428], eax
movzx eax, byte [0x1015a414]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
mov eax, dword [0x1015a51c]
mov ecx, 1
cmp dword [0x1015a44c], 0
mov byte [0x1015a417], 0
cmovne eax, ecx
mov dword [0x1015a51c], eax
movzx eax, byte [0x1015a414]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
cmp dword [ebp + 0x18], 9
mov dword [0x1015a69c], edi
jne case.0x10034139.2022
mov byte [0x1015a684], 1
jmp case.0x10034139.2022
cmp dword [0x1015a44c], 0
je case.0x10034139.2022
mov dword [0x1015a51c], edi
test edi, edi
je case.0x10034139.2022
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
cmp dword [0x1015a44c], 0
je case.0x10034139.2022
xor eax, eax
cmp dword [0x1015a51c], eax
setne al
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
push ebx
push edi
call sym.ExuiKrnln_X32.dll_ControlSetWinScale
jmp case.0x10034139.2022
movss xmm0, dword [edi + 0x11c]
mulss xmm0, dword [0x10142aec]
cvttss2si eax, xmm0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
mov eax, dword [0x1015a518]
test eax, eax
jne 0x100342e4
push 0x1015a518
call dword [0x1015c45c]
mov eax, dword [0x1015a518]
test eax, eax
je case.0x10034139.2022
test edi, edi
je 0x10034305
cmp dword [edi + 4], 3
jle 0x10034305
lea esi, [edi + 8]
push esi
push eax
call dword [0x1015c464]
push esi
call dword [sym.imp.GDI32.dll_AddFontResourceW]
jmp case.0x10034139.2022
test ebx, ebx
je case.0x10034139.2022
mov ecx, dword [ebx + 4]
test ecx, ecx
jle case.0x10034139.2022
push ecx
lea esi, [ebx + 8]
push esi
push eax
call dword [0x1015c468]
push 0x208
lea eax, [ebp - 0x214]
push 0
push eax
call fcn.10112ca0
add esp, 0xc
lea eax, [ebp - 0x41c]
push 0x208
push 0
push eax
call fcn.10112ca0
add esp, 0xc
lea eax, [ebp - 0x214]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
mov edx, dword [ebx + 4]
lea eax, [ebp - 0x41c]
push ecx
push eax
mov ecx, esi
call fcn.10095b10
lea edx, [ebp - 0x41c]
mov esi, edx
nop dword [eax]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x10034380
lea edi, [ebp - 0x214]
sub edx, esi
add edi, 0xfffffffe
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x10034396
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x214]
add ecx, 0xfffffffe
nop dword [eax]
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x100343c0
mov eax, dword [str..Font]
push 0
push 0x80
mov dword [ecx], eax
mov eax, dword [0x1013a2fc]
push 2
push 0
mov dword [ecx + 4], eax
mov eax, dword [0x1013a300]
push 0
mov dword [ecx + 8], eax
lea eax, [ebp - 0x214]
push 0x40000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
je case.0x10034139.2022
push 0
lea eax, [ebp - 0x464]
mov dword [ebp - 0x464], 0
push eax
push dword [ebx + 4]
lea eax, [ebx + 8]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
lea eax, [ebp - 0x214]
push eax
call dword [sym.imp.GDI32.dll_AddFontResourceW]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp case.0x10034139.2022
cmp eax, 0xa2c42
jg 0x10034612
je 0x100344af
sub eax, 0x10485
je 0x10034496
sub eax, 0x927a5
je 0x10034487
sub eax, 1
jne case.0x10034139.2022
mov edx, ebx
mov ecx, edi
call fcn.1003efc0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
push ecx
mov edx, ebx
mov ecx, edi
call fcn.1003eb60
jmp case.0x10034139.2022
mov eax, dword [edi + 0xe0]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
mov esi, dword [0x1015a46c]
push str.Tab_Control
push edi
call dword [sym.imp.USER32.dll_GetPropW]
movss xmm0, dword [0x10142934]
mov dword [ebp - 0x464], eax
movss xmm1, dword [eax + 0x11c]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jnp 0x10034514
movd xmm0, ebx
sub esp, 8
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
call fcn.10114750
movss xmm0, dword [0x10142934]
add esp, 8
fstp qword [ebp - 0x46c]
cvttsd2si ebx, qword [ebp - 0x46c]
mov eax, dword [ebp - 0x464]
movss xmm1, dword [eax + 0x11c]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jnp 0x10034563
movd xmm0, dword [ebp - 0x460]
sub esp, 8
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
call fcn.10114750
fstp qword [ebp - 0x46c]
cvttsd2si ecx, qword [ebp - 0x46c]
add esp, 8
mov dword [ebp - 0x460], ecx
jmp 0x10034569
mov ecx, dword [ebp - 0x460]
test esi, esi
je 0x100345f9
cmp dword [esi + 0x28], edi
jne 0x100345d5
cmp byte [esi + 0xd4], 0
je 0x100345d5
mov eax, dword [esi + 0x58]
cmp eax, 1
je 0x100345d5
cmp esi, dword [ebp + 0x18]
je 0x100345d5
cmp ebx, dword [esi + 0x84]
jl 0x100345d5
cmp ebx, dword [esi + 0x8c]
jge 0x100345d5
mov edx, dword [esi + 0x88]
cmp ecx, edx
jl 0x100345d5
cmp ecx, dword [esi + 0x90]
jge 0x100345d5
test eax, eax
je 0x100345e4
mov eax, dword [esi + 0x54]
sub eax, ecx
lea ecx, [eax - 1]
mov eax, dword [esi + 0xe0]
add ecx, edx
imul ecx, dword [esi + 0x50]
sub ecx, dword [esi + 0x84]
add ecx, ebx
cmp byte [eax + ecx*4 - 1], 0
jne 0x100345e4
mov esi, dword [esi + 0x18]
test esi, esi
je 0x100345f9
mov ecx, dword [ebp - 0x460]
jmp 0x10034571
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
mov eax, dword [ebp - 0x464]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
sub eax, 0xa2c43
je 0x1003463f
sub eax, 1
jne case.0x10034139.2022
push ecx
mov edx, ebx
mov ecx, edi
call fcn.1003ffa0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14
push ecx
mov edx, ebx
mov ecx, edi
call fcn.1003f410
mov ecx, dword [ebp - 8]
add esp, 4
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.10110e11
mov esp, ebp
pop ebp
ret 0x14