Function at 0xa69880
Capabilities:
Read file via mapping

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0xf4
mov eax, dword [0xc940a0]
xor eax, esp
mov dword [esp + 0xf0], eax
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, dword [ebp + 8]
push edi
cmp dword [ebx], 2
mov edi, ecx
mov dword [esp + 0x5c], edi
mov dword [esp + 0x60], esi
jne 0xa698cb
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xf0]
xor ecx, esp
call fcn.00ab3c50
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [edi + 0x14]
mov ecx, dword [eax + 0x120]
cmp ecx, 5
je 0xb27a8b
cmp ecx, 4
je 0xb27a8b
mov edx, dword [ebp + 0x10]
cmp dword [edx + 0xc], 0
jne 0xb275a6
cmp ecx, 1
je 0xb275e9
cmp byte [eax + 0x125], 0
jne 0xb275fc
mov dword [esp + 0x38], 2
cmp dword [0xc96f7c], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
jne 0xb27609
mov eax, dword [0xc95888]
mov dword [esp + 0x48], eax
mov eax, dword [0xc9588c]
mov dword [esp + 0x4c], eax
cmp byte [0xc958cd], 0
je 0xb27635
cmp dword [0xc97ae0], 0
mov ecx, dword [0xc958d0]
mov eax, dword [ecx]
mov dword [esp + 0x48], eax
mov eax, dword [ecx + 4]
mov dword [esp + 0x4c], eax
jne 0xb277aa
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x48]
push 1
push 0
call fcn.00a41a30
mov ecx, dword [edi + 0x14]
mov dword [esp + 0x38], eax
cmp byte [ecx + 0x125], 0
jne 0xb2780d
mov dword [esp + 0x30], 0xb3
cmp dword [ecx + 0x120], 3
je 0xb2781a
mov dword [esp + 0x40], 0x8c
movzx eax, al
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
fnstcw word [esp + 0x20]
fstp qword [esp + 0x10]
fld qword [esp + 0x10]
fld qword [0xa00048]
fdiv st(1), st(0)
movzx eax, word [esp + 0x20]
or eax, 0xc00
mov dword [esp + 0x10], eax
mov ax, word [esp + 0x38]
shr ax, 8
movzx eax, ax
fmul st(1), st(0)
fld qword [0xa02760]
fadd st(2), st(0)
fxch st(2)
fldcw word [esp + 0x10]
fistp qword [esp + 0x10]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x10], eax
shl edx, 0x10
fldcw word [esp + 0x20]
fild dword [esp + 0x10]
fnstcw word [esp + 0x20]
fstp qword [esp + 0x10]
fld qword [esp + 0x10]
fdiv st(1)
movzx eax, word [esp + 0x20]
or eax, 0xc00
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x38]
shr eax, 0x10
movzx eax, al
fmul st(1)
fadd st(2)
fldcw word [esp + 0x10]
fistp qword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], eax
shl ecx, 8
fldcw word [esp + 0x20]
fild dword [esp + 0x10]
fnstcw word [esp + 0x20]
fstp qword [esp + 0x10]
fld qword [esp + 0x10]
fdiv st(1)
movzx eax, word [esp + 0x20]
or eax, 0xc00
mov dword [esp + 0x10], eax
fmul st(1)
faddp st(2)
fxch st(1)
fldcw word [esp + 0x10]
fistp qword [esp + 0x10]
mov eax, dword [esp + 0x10]
or eax, ecx
or eax, edx
fldcw word [esp + 0x20]
mov ecx, eax
mov edx, eax
and ecx, 0xff0000
and edx, 0xff00
shr ecx, 0x10
shr edx, 8
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
test ecx, ecx
js 0xa6a11e
fstp qword [esp + 0x10]
fld qword [esp + 0x10]
fdiv st(1)
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
test edx, edx
js 0xa6a129
fstp qword [esp + 0x10]
fld qword [esp + 0x10]
movzx eax, al
fdiv st(2)
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
test eax, eax
js 0xa6a134
fstp qword [esp + 0x10]
fld qword [esp + 0x10]
fdiv st(3)
fxch st(2)
fcom st(1)
fnstsw ax
test ah, 5
jp 0xb27827
fld st(0)
fcomp st(3)
fnstsw ax
test ah, 5
jp 0xb27835
fcom st(1)
fnstsw ax
test ah, 5
jp 0xb2782e
fld st(0)
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 0x41
je 0xb2783c
fld st(2)
fcomp st(4)
fnstsw ax
test ah, 0x41
je 0xb27843
fld st(3)
fld st(0)
fsubrp st(3)
fldz
fucom st(1)
fnstsw ax
test ah, 0x44
jnp 0xb2787d
fucom st(3)
fnstsw ax
test ah, 0x44
jnp 0xb2787d
fld st(3)
fdiv st(2)
fxch st(3)
fucom st(2)
fnstsw ax
test ah, 0x44
jnp 0xb2785a
fxch st(5)
fucom st(2)
fnstsw ax
test ah, 0x44
jnp 0xb27869
fstp st(6)
fxch st(4)
fsubrp st(5)
fxch st(4)
fdivrp st(2)
fxch st(1)
fadd qword [0xa00038]
fxch st(1)
fld qword [0xa00040]
fmul st(2), st(0)
fxch st(2)
fcom st(3)
fnstsw ax
test ah, 5
jnp 0xb27894
fild dword [esp + 0x30]
fstp qword [esp + 0x10]
fld qword [esp + 0x10]
fdiv st(6)
fst qword [esp + 0x20]
fcom st(5)
fnstsw ax
test ah, 0x41
je 0xb2789f
fstp st(0)
fxch st(4)
fst qword [esp + 0x20]
fxch st(4)
fild dword [esp + 0x40]
fstp qword [esp + 0x10]
fld qword [esp + 0x10]
fdiv st(6)
fst qword [esp + 0x30]
fcom st(2)
fnstsw ax
test ah, 5
jnp 0xb278a6
fstp st(0)
fxch st(1)
fst qword [esp + 0x30]
fxch st(1)
fld st(3)
fstp qword [esp + 0x40]
fld st(3)
fstp qword [esp + 0x38]
fxch st(1)
fucomp st(3)
fnstsw ax
fstp st(2)
test ah, 0x44
jnp 0xb278ad
fstp st(2)
sub esp, 8
fstp st(2)
fdivp st(1)
fst qword [esp + 0x58]
fstp qword [esp]
call fcn.00ab4bd8
add esp, 8
call fcn.00af9350
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fstp qword [esp + 0x10]
fld qword [esp + 0x10]
fsubr qword [esp + 0x50]
fld1
fld st(0)
fld qword [esp + 0x30]
fsub st(1), st(0)
fld qword [esp + 0x20]
fmul st(2), st(0)
fld st(1)
fmul st(5)
fsubr st(4)
fmul st(1)
fld st(4)
fsubrp st(6)
fxch st(5)
fmulp st(2)
fxch st(3)
fsubrp st(1)
fmul st(2)
cmp eax, 3
jne 0xb278c4
fstp st(0)
fxch st(2)
fstp qword [esp + 0x40]
fstp qword [esp + 0x38]
fld qword [0xa00048]
fxch st(1)
fmul st(1)
fld qword [0xa02760]
fnstcw word [esp + 0x20]
movzx eax, word [esp + 0x20]
or eax, 0xc00
mov dword [esp + 0x10], eax
fadd st(1), st(0)
fxch st(1)
fldcw word [esp + 0x10]
fistp qword [esp + 0x50]
mov edx, dword [esp + 0x50]
shl edx, 0x10
fldcw word [esp + 0x20]
fld qword [esp + 0x40]
fmul st(2)
fnstcw word [esp + 0x20]
movzx eax, word [esp + 0x20]
or eax, 0xc00
mov dword [esp + 0x10], eax
fadd st(1)
fldcw word [esp + 0x10]
fistp qword [esp + 0x50]
mov ecx, dword [esp + 0x50]
shl ecx, 8
fldcw word [esp + 0x20]
fld qword [esp + 0x38]
fmul st(2)
fnstcw word [esp + 0x20]
movzx eax, word [esp + 0x20]
or eax, 0xc00
mov dword [esp + 0x10], eax
faddp st(1)
fldcw word [esp + 0x10]
fistp qword [esp + 0x50]
mov eax, dword [esp + 0x50]
or eax, edx
or eax, ecx
fldcw word [esp + 0x20]
mov edx, eax
mov ecx, eax
and edx, 0xff0000
movzx eax, al
and ecx, 0xff00
shr edx, 0x10
shr ecx, 8
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
test eax, eax
js 0xa6a13f
fstp qword [esp + 0x50]
fld qword [esp + 0x50]
fdiv st(1)
fnstcw word [esp + 0x20]
movzx eax, word [esp + 0x20]
or eax, 0xc00
mov dword [esp + 0x10], eax
fmul st(1)
fldcw word [esp + 0x10]
fistp dword [esp + 0x10]
movzx eax, byte [esp + 0x10]
or eax, 0xffffff00
mov dword [esp + 0x10], ecx
shl eax, 8
mov dword [esp + 0x30], eax
fldcw word [esp + 0x20]
fild dword [esp + 0x10]
test ecx, ecx
js 0xa6a14a
fstp qword [esp + 0x50]
fld qword [esp + 0x50]
fdiv st(1)
mov ecx, dword [esp + 0x30]
fnstcw word [esp + 0x20]
movzx eax, word [esp + 0x20]
or eax, 0xc00
mov dword [esp + 0x10], eax
fmul st(1)
fldcw word [esp + 0x10]
fistp dword [esp + 0x10]
movzx eax, byte [esp + 0x10]
or ecx, eax
mov dword [esp + 0x10], edx
shl ecx, 8
fldcw word [esp + 0x20]
fild dword [esp + 0x10]
test edx, edx
js 0xa6a155
fstp qword [esp + 0x50]
fld qword [esp + 0x50]
fdiv st(1)
fnstcw word [esp + 0x20]
movzx eax, word [esp + 0x20]
or eax, 0xc00
mov dword [esp + 0x10], eax
fmulp st(1)
fldcw word [esp + 0x10]
fistp dword [esp + 0x10]
movzx eax, byte [esp + 0x10]
or ecx, eax
fldcw word [esp + 0x20]
mov dword [esp + 0x30], ecx
mov eax, dword [edi + 0x14]
mov byte [esp + 0x1f], 0
mov eax, dword [eax + 0x128]
mov dword [esp + 0x20], eax
test eax, eax
je 0xb27936
push esi
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov esi, eax
test esi, esi
je 0xa6a021
push dword [esp + 0x20]
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
mov edi, dword [esp + 0x30]
push 0xff
shr edi, 0x18
push edi
push 0xff
mov dword [esp + 0x1c], eax
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 1
mov dword [esp + 0x9c], 1
call dword [sym.imp.api_ms_win_core_largeinteger_l1_1_0.dll_MulDiv]
cmp eax, 0xff
jg 0xb279dc
push 0xff
push edi
push 0xff
call dword [sym.imp.api_ms_win_core_largeinteger_l1_1_0.dll_MulDiv]
movzx edi, al
mov byte [esp + 0x2f], al
mov eax, dword [esp + 0x30]
movzx ecx, al
mov eax, 0x80808081
imul ecx, edi
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0
mul ecx
mov eax, dword [esp + 0x30]
movzx ecx, ax
mov eax, 0x80808081
shr ecx, 8
imul ecx, edi
shr edx, 7
mov byte [esp + 0x2e], dl
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mul ecx
mov eax, dword [esp + 0x30]
shr eax, 0x10
movzx ecx, al
mov eax, 0x80808081
imul ecx, edi
shr edx, 7
mov byte [esp + 0x2d], dl
mov dword [esp + 0xd0], 0x28
mov dword [esp + 0xd4], 1
mul ecx
lea eax, [esp + 0x84]
mov dword [esp + 0xd8], 1
push eax
lea eax, [esp + 0x98]
shr edx, 7
push eax
mov dword [esp + 0xe4], 0x200001
mov dword [esp + 0xe8], 0
mov byte [esp + 0x34], dl
call dword [sym.imp.api_ms_win_ntuser_rectangle_l1_1_0.dll_CopyRect]
mov edx, dword [esp + 0x98]
lea eax, [esp + 0xd0]
mov ecx, dword [esp + 0x94]
push 0xcc0020
push 0
push eax
lea eax, [esp + 0x38]
push eax
mov eax, dword [esp + 0xb0]
push 1
push 1
push 0
push 0
sub eax, edx
push eax
mov eax, dword [esp + 0xc0]
sub eax, ecx
push eax
push edx
push ecx
push esi
call dword [sym.imp.ext_ms_win_gdi_draw_l1_1_0.dll_StretchDIBits]
mov ecx, dword [ebx + 0x98]
mov eax, dword [ebx + 0xa0]
mov edx, dword [ebx + 0x94]
sub eax, ecx
mov dword [esp + 0x2c], 0x1ff0000
push dword [esp + 0x2c]
push 1
push 1
push 0
push 0
push esi
push eax
mov eax, dword [ebx + 0x9c]
sub eax, edx
push eax
push ecx
push edx
push dword [esp + 0x88]
call dword [sym.imp.ext_ms_win_gdi_draw_l1_1_1.dll_GdiAlphaBlend]
push dword [esp + 0x10]
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
mov edi, dword [esp + 0x5c]
cmp byte [esp + 0x1f], 0
jne 0xb279e3
test esi, esi
je 0xa6a037
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
mov esi, dword [esp + 0x60]
mov eax, dword [edi + 0x14]
cmp dword [eax + 0x120], 1
mov eax, dword [ebp + 0x10]
je 0xa6a061
cmp byte [eax + 4], 0
jne 0xb279f2
cmp dword [ebx + 0x130], 0
jg 0xb279f2
cmp byte [eax + 6], 0
je 0xa698b4
cmp dword [ebx + 0xf4], 0
mov byte [esp + 0x2c], 0xff
je 0xb27a5c
lea eax, [ebx + 0xa4]
push eax
call dword [sym.imp.api_ms_win_ntuser_rectangle_l1_1_0.dll_IsRectEmpty]
test eax, eax
jne 0xa6a0c3
mov eax, dword [edi + 0x14]
cmp dword [eax + 0x120], 1
je 0xb27a81
mov ecx, 0x135
call fcn.00a79f17
mov ecx, dword [edi + 0x14]
lea edx, [ebx + 0xa4]
push dword [ecx + 0x128]
mov ecx, esi
push eax
push dword [esp + 0x34]
call fcn.00a369e2
add ebx, 0xb4
push ebx
call dword [sym.imp.api_ms_win_ntuser_rectangle_l1_1_0.dll_IsRectEmpty]
test eax, eax
jne 0xa698b4
mov eax, dword [edi + 0x14]
cmp dword [eax + 0x120], 1
je 0xa6a160
mov ecx, 0x136
call fcn.00a79f17
mov esi, dword [edi + 0x14]
mov edx, ebx
mov ecx, dword [esp + 0x60]
push dword [esi + 0x128]
push eax
push dword [esp + 0x34]
call fcn.00a369e2
mov ecx, dword [esp + 0xfc]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00ab3c50
mov esp, ebp
pop ebp
ret 0xc
fadd qword [0xa2df08]
jmp 0xa69ab0
fadd qword [0xa2df08]
jmp 0xa69aca
fadd qword [0xa2df08]
jmp 0xa69ae7
fadd qword [0xa2df08]
jmp 0xa69d43
fadd qword [0xa2df08]
jmp 0xa69d8e
fadd qword [0xa2df08]
jmp 0xa69dd6
mov ecx, 0x14b
jmp 0xa6a0e9
cmp dword [edx + 0xc], 0xffff
jne 0xb275bc
mov dword [esp + 0x30], 0xff39e64d
jmp 0xa69e0b
mov ecx, dword [edx + 0x10]
cmp ecx, 1
jne 0xb275d1
mov dword [esp + 0x30], 0xff00f0ff
jmp 0xa69e0b
sub ecx, 2
neg ecx
sbb ecx, ecx
and ecx, 0x39e54e
add ecx, 0xff0000ff
jmp 0xa69e07
mov ecx, 4
call fcn.00a79f17
mov dword [esp + 0x30], eax
jmp 0xa69e0b
mov dword [esp + 0x38], 1
jmp 0xa69911
lea edx, [esp + 0x4c]
lea ecx, [esp + 0x48]
call fcn.00c01732
cmp dword [0xc96f7c], 0
je 0xa69940
lea edx, [esp + 0x4c]
lea ecx, [esp + 0x48]
call fcn.00c01732
jmp 0xa6996d
call fcn.00ab20ff
mov dword [esp + 0x30], eax
test eax, eax
js 0xa6996d
cmp byte [0xc958cd], 0
jne 0xb276aa
push 0x9ee3c0
push 1
push 0xf001f
mov byte [esp + 0x2c], 1
mov byte [esp + 0x2b], 0
call dword [sym.imp.api_ms_win_core_memory_l1_1_0.dll_OpenFileMappingW]
test eax, eax
jne 0xb276d0
push 0x9ee3c0
push 1
push 4
call dword [sym.imp.api_ms_win_core_memory_l1_1_0.dll_OpenFileMappingW]
xor cl, cl
test eax, eax
jne 0xb276d4
push 0x9ee3c0
push 8
push eax
push 4
push eax
push 0xffffffffffffffff
call dword [sym.imp.api_ms_win_core_memory_l1_1_0.dll_CreateFileMappingW]
mov cl, 1
mov byte [esp + 0x1f], cl
test eax, eax
jne 0xb276d4
mov eax, 0x80004005
mov dword [esp + 0x30], eax
cmp dword [0xc96f78], 0
je 0xb276c3
mov eax, dword [0xc96f78]
push eax
call dword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseMutex]
mov eax, dword [esp + 0x30]
test eax, eax
js 0xa6996d
jmp 0xa6994d
mov cl, byte [esp + 0x20]
mov dword [0xc958c8], eax
mov byte [0xc958cc], cl
movzx eax, byte [0xc958cc]
neg eax
push 8
sbb eax, eax
push 0
and eax, 0xf001b
add eax, 4
push 0
push eax
mov eax, dword [0xc958c8]
push eax
call dword [sym.imp.api_ms_win_core_memory_l1_1_0.dll_MapViewOfFile]
mov dword [0xc958d0], eax
cmp dword [0xc958d0], 0
je 0xb276a1
cmp byte [esp + 0x1f], 0
mov dword [esp + 0x30], 0
je 0xb27773
mov ecx, dword [0xc958d0]
call fcn.00a7f3a9
call fcn.00c018d9
test al, al
jne 0xb27773
lea ecx, [esp + 0x70]
call fcn.00aa25f0
test eax, eax
js 0xb27773
lea eax, [esp + 0x6c]
push eax
push dword [esp + 0x74]
call dword [sym.imp.api_ms_win_security_sddl_l1_1_0.dll_ConvertSidToStringSidW]
test eax, eax
je 0xb27769
mov ecx, dword [esp + 0x6c]
call fcn.00c01c39
push dword [esp + 0x6c]
call dword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalFree]
push dword [esp + 0x70]
call dword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalFree]
call fcn.00ab2edc
test eax, eax
je 0xb27790
mov eax, dword [0xc95880]
mov dword [0xc95888], eax
mov eax, dword [0xc95884]
mov dword [0xc9588c], eax
call fcn.00a7f350
call fcn.00ab280d
mov eax, dword [esp + 0x30]
mov byte [0xc958cd], 1
jmp 0xb276aa
lea ecx, [esp + 0x64]
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
call fcn.00a7f3a9
cmp dword [0xc97ae0], 0
jne 0xb277f8
lea edx, [esp + 0x48]
mov byte [0xc958d8], 0
lea ecx, [esp + 0x64]
call fcn.00ab31c0
test al, al
jne 0xb277f8
call fcn.00c018d9
test al, al
jne 0xb277f8
push 0
lea ecx, [esp + 0x68]
call fcn.00c01d35
mov eax, dword [esp + 0x64]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x4c], eax
jmp 0xa6996d
mov dword [esp + 0x30], 0xff
jmp 0xa6999a
mov dword [esp + 0x40], 0x59
jmp 0xa699af
fld st(1)
jmp 0xa69b02
fld st(1)
jmp 0xa69b1e
fld st(2)
jmp 0xa69b1e
fld st(0)
jmp 0xa69b2f
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0xb27853
fld st(0)
jmp 0xa69b3e
fld st(2)
jmp 0xa69b3e
fstp st(0)
fxch st(4)
fsubrp st(5)
fxch st(4)
fdivrp st(2)
jmp 0xa69b94
fstp st(0)
fxch st(5)
fsubrp st(4)
fxch st(3)
fdivrp st(2)
fxch st(1)
fadd qword [0xa026e0]
jmp 0xb27889
fstp st(3)
fstp st(1)
fstp st(2)
fstp st(2)
fld st(1)
fld st(2)
fxch st(2)
fxch st(3)
fxch st(2)
jmp 0xa69b92
fadd qword [0xa02710]
jmp 0xa69bab
fstp st(5)
jmp 0xa69bd4
fstp st(2)
jmp 0xa69bfd
fstp st(1)
fstp st(0)
fld st(0)
fld st(1)
fstp qword [esp + 0x40]
fxch st(1)
fstp qword [esp + 0x38]
jmp 0xa69c8e
cmp eax, 5
ja case.0xb278c9.3
jmp dword [eax*4 + 0xb27b26]
fstp st(3)
fxch st(2)
fstp qword [esp + 0x40]
fxch st(1)
fstp qword [esp + 0x38]
jmp 0xa69c86
fstp st(0)
fxch st(1)
fstp qword [esp + 0x40]
fstp qword [esp + 0x38]
jmp 0xa69c86
fstp st(3)
fxch st(1)
fstp qword [esp + 0x40]
fxch st(1)
fstp qword [esp + 0x38]
jmp 0xa69c86
fstp st(3)
fstp qword [esp + 0x40]
fstp qword [esp + 0x38]
jmp 0xa69c86
fstp st(0)
fstp qword [esp + 0x40]
fxch st(1)
fstp qword [esp + 0x38]
jmp 0xa69c86
fstp st(3)
fstp st(2)
fstp st(0)
fstp st(0)
fldz
jmp 0xa69c86
push 0
push 0
push 0
push 0
lea eax, [esp + 0xb4]
mov dword [esp + 0xc8], 0
push eax
push esi
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0
mov dword [esp + 0xbc], 0x28
mov dword [esp + 0xc0], 1
mov dword [esp + 0xc4], 0xffffffff
mov dword [esp + 0xc8], 0x200001
mov dword [esp + 0xcc], 0
call dword [sym.imp.ext_ms_win_gdi_draw_l1_1_0.dll_CreateDIBSection]
mov dword [esp + 0x20], eax
test eax, eax
je 0xa6a03b
mov byte [esp + 0x1f], 1
jmp 0xa69e25
or al, 0xff
jmp 0xa69ea5
push dword [esp + 0x20]
call dword [sym.imp.GDI32.dll_DeleteObject]
jmp 0xa6a02c
mov ecx, 0x12a
call fcn.00a79f17
movzx ecx, byte [ebx + 0x100]
push 0x3e8
push dword [ebx + 0x130]
mov dword [esp + 0x64], eax
push ecx
call dword [sym.imp.api_ms_win_core_largeinteger_l1_1_0.dll_MulDiv]
mov cl, al
mov eax, dword [ebp + 0x10]
cmp byte [eax + 4], 0
je 0xb27a32
mov al, byte [ebx + 0x100]
shr al, 1
mov byte [esp + 0x40], al
jmp 0xb27a36
mov byte [esp + 0x40], cl
mov eax, dword [edi + 0x14]
lea edx, [ebx + 0x94]
mov ecx, esi
push dword [eax + 0x128]
push dword [esp + 0x60]
push dword [esp + 0x48]
call fcn.00a369e2
mov eax, dword [ebp + 0x10]
jmp 0xa6a061
push 0x3e8
mov eax, 0x3e8
sub eax, dword [ebx + 0x12c]
push eax
push 0xff
call dword [sym.imp.api_ms_win_core_largeinteger_l1_1_0.dll_MulDiv]
mov byte [esp + 0x2c], al
jmp 0xa6a07d
mov ecx, 0x143
jmp 0xa6a0a3
sub ecx, 5
neg ecx
sbb ecx, ecx
and ecx, 0x1e
add ecx, 0x12e
call fcn.00a79f17
mov ecx, dword [edi + 0x14]
mov dword [esp + 0x5c], eax
mov ecx, dword [ecx + 0x120]
sub ecx, 5
neg ecx
sbb ecx, ecx
and ecx, 0x1e
add ecx, 0x130
call fcn.00a79f17
mov edi, dword [esp + 0x5c]
lea edx, [ebx + 0x94]
push 1
push edi
push eax
mov ecx, esi
call fcn.00bb8408
mov eax, dword [ebp + 0x10]
cmp byte [eax + 6], 0
je 0xa698b4
mov ecx, dword [ebx + 0xbc]
lea edx, [esp + 0x74]
mov eax, dword [ebx + 0xb8]
mov dword [esp + 0x78], eax
mov eax, dword [ebx + 0xc0]
mov dword [esp + 0x80], eax
lea eax, [ecx - 1]
push edi
mov dword [esp + 0x80], ecx
mov ecx, esi
push 0xff
mov dword [esp + 0x7c], eax
call fcn.00a77950
jmp 0xa698b4